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

问题描述 投票:104回答:4

我正在创建一个网站,但在数据库中我使用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身份验证?

.net asp.net-mvc connection-string windows-authentication
4个回答
164
投票

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> 

11
投票

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

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

<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. 从Process Model下的Advanced settings更改Identity to Custom帐户并添加Server Admin详细信息,请参阅附加的图像:

enter image description here

希望这会有所帮助。


5
投票

这个更短,更有效

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

坚持不需要安全信息


4
投票

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

基本上这是有效的:

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

如果设置Integrated Security字段,则基本上告诉您要通过Windows身份验证访问数据库,如果设置为false,则Windows身份验证将无效。

© www.soinside.com 2019 - 2024. All rights reserved.