在IIS中使用带有连接字符串的Windows身份验证连接到SQL 2008 R2

Jen*_*nsB 3 c# iis-7 connection-string

我正在使用IIS7上的MVC4创建一个模型第一个网站.

目前我的连接字符串如下所示:

<add name="VaultEntities"  
    connectionString="metadata=res://*/Models.VaultDB.csdl|res://*/Models.VaultDB.ssdl|res://*/Models.VaultDB.msl;provider=System.Data.SqlClient;
         provider connection string=&quot;
         data source=sqlserver\instance;
         initial catalog=vault;
         integrated security=True;
         multipleactiveresultsets=True;
         App=EntityFramework&quot;" 
         providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)

当我通过Model First方法添加数据库时,Visual Studio 2011自动生成连接.该查询在我的开发机器上完美地工作.但它不能在IIS服务器上运行.

我的猜测是,这是因为我的开发计算机上的用户帐户可以访问SQL服务器,当IIS尝试访问SQL服务器时,其用户帐户被拒绝.

在完美的世界中,我会在SQL服务器上添加用户并使用

User Id=myUsername;Password=myPassword;
Run Code Online (Sandbox Code Playgroud)

在我的连接字符串中,遗憾的是我没有这个选项.

没有详细说明dba是......难以......合作.

那么有没有办法在连接字符串中使用我的AD帐户登录到SQL服务器......或者我可以让IIS将自己标识为我吗?

Joe*_*zer 6

有没有办法在连接字符串中使用我的AD帐户登录到SQL服务器......或者我可以让IIS将自己标识为我吗?

您可以让应用程序池使用您想要的任何AD用户.

我不建议使用您自己的用户名.您在过去12个月内锁定了多少次用户名,以及您离开后会发生什么?

创建/使用服务AD帐户,将其映射到应用程序池中,并使用可信连接让DBA为该用户提供数据库访问权限.对不起,您必须与DBA交谈!:-)