连接字符串使用Windows身份验证

时间:2013-01-11 01:07:06

标签: .net asp.net-mvc connection-string windows-authentication

我正在创建一个网站,但在数据库中我使用了Windows身份验证。

我知道你将它用于SQL身份验证

<connectionStrings> 
    <add name="NorthwindContex" 
       connectionString="data source=localhost;
       initial catalog=northwind;persist security info=True; 
       user id=sa;password=P@ssw0rd" 
       providerName="System.Data.SqlClient" /> 
</connectionStrings>

如何修改它以使用Windows身份验证?

4 个答案:

答案 0 :(得分:159)

将用户名和密码替换为Integrated Security=SSPI;

所以连接字符串应该是

<connectionStrings> 
<add name="NorthwindContex" 
   connectionString="data source=localhost;
   initial catalog=northwind;persist security info=True; 
   Integrated Security=SSPI;" 
   providerName="System.Data.SqlClient" /> 
</connectionStrings> 

答案 1 :(得分:9)

多小时后获得正确的解决方案:

  1. 打开配置文件
  2. 使用以下
  3. 更改连接字符串

    <add name="umbracoDbDSN" connectionString="data source=YOUR_SERVER_NAME;database=nrc;Integrated Security=SSPI;persist security info=True;" providerName="System.Data.SqlClient" />

    1. 使用您当前的服务器名称更改 YOUR_SERVER_NAME 并保存
    2. 打开IIS管理器
    3. 查找网站或Web应用程序正在使用的应用程序池的名称
    4. 右键单击并选择“高级设置”
    5. 流程模型下的高级设置中将身份 更改为自定义帐户并添加您的服务器管理详细信息,请参阅附带的图像:< / LI>

      enter image description here

      希望这会有所帮助。

答案 2 :(得分:5)

这是更短的工作

<connectionStrings>      
<add name="DBConnection"
             connectionString="data source=SERVER\INSTANCE;
       Initial Catalog=MyDB;Integrated Security=SSPI;"
             providerName="System.Data.SqlClient" />
</connectionStrings> 

不需要持久安全信息

答案 3 :(得分:1)

对于通过Windows身份验证连接到sql服务器数据库,基本上需要您要连接的服务器,您的数据库名称,集成安全性信息和提供程序名称。

基本上可以正常工作:

<connectionStrings>      
<add name="MyConnectionString"
         connectionString="data source=ServerName;
   Initial Catalog=DatabaseName;Integrated Security=True;"
         providerName="System.Data.SqlClient" />
</connectionStrings> 

如果您设置了 集成安全性 字段,则基本上说您要通过Windows身份验证访问数据库,如果您设置了 false Windows身份验证不起作用。