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.