Como eu me conecto do IIS ao SQL remoto via Windows Auth sem uma conta de serviço?

2

Eu tenho um aplicativo .NET bem típico que usa Entity Framework, MS SQL e IIS. O aplicativo foi desenvolvido com a expectativa de que o SQL Server seria executado localmente para o IIS e com autenticação SQL para a conexão com o banco de dados. Os usuários farão logon no aplicativo por meio da autenticação do Windows.

Recentemente, recebi a tarefa de separar a Web e os servidores SQL em dois servidores; No entanto, não posso mais usar a autenticação do SQL, mas sim usar a Autenticação do Windows.

Minha nova string de conexão agora é algo como:

 <add name="MyDbConn2" connectionString="Initial Catalog=MyDb;Data Source=MyServer;Integrated Security=SSPI;"/>

.

Sou meu ambiente de desenvolvimento local, tentei definir o usuário do AppPool como uma conta de serviço (por exemplo, "domínio \ Usuário") e definir o <identity/> no web.config para usar o mesmo usuário do AppPool então:

<identity impersonate="true" userName="domain\User" password="****"/>

Desde que o usuário tenha as permissões na caixa SQL, isso funciona. Mas agora, também me disseram que não posso usar uma conta de serviço, pois o usuário / senha teria que ser armazenado no arquivo de configuração.

Eu não consigo nem entender como isso funciona sem uma conta de serviço, então espero que essa comunidade tenha algumas ideias.

    
por jktravis 26.02.2018 / 16:14

1 resposta

0

Você pode fazer isso alterando o serviço para ser executado como a conta de serviço de rede e, em seguida, dar permissão para domain \ computername $ no SQL Server.

Como a conta do serviço de rede restringiu as permissões, talvez seja necessário conceder mais permissões para que o aplicativo funcione.

    
por 27.02.2018 / 07:27