当我想在Windows身份验证模式下通过SSMS连接到SQL Server 2008时,我收到以下错误:
login failed for user UserDomainName\UserName
我在混合模式下安装了我的SQL Server并将用户设置为NT Authority \ system,如何在C#中使用“UserDomainName \ UserName”用户而不是“NT Authority \ system”用户创建连接字符串?
答案 0 :(得分:1)
将连接字符串存储在Web.Config
或App.Config
文件
<connectionStrings>
<Add name="CS" ConnectionString="DataSource=.;Database=Sample;Integrated Security=SSPI" ProviderName="System.Data.SqlClient"/>
</connectionStrings>
然后您可以使用System.Configuration
命名空间(dll)
string conStr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
如何使用“UserDomainName \ UserName”创建连接字符串 用户不在C#中使用“NT Authority \ system”用户?
然后使用SQL身份验证模式而不是Windows身份验证
ConnectionString="DataSource=.;Database=Sample;user id = test; password=test"
答案 1 :(得分:0)
它应该是这样的:
string address = "data source=(local);initial catalog=yourDB;user id=sa;password=yourPass";
或者:
string address = "Data Source=(local);Initial Catalog=yourDB;Integrated Security=True";
您可以查看以下内容:SQL Server 2008 connection strings
修改: Integrated Security
将始终使用当前身份。因此,您无法使用来自其他域的凭据与Windows身份验证建立连接。您需要为此UserDomainName\UserName
创建一个SQL Server登录名:
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI; User ID=UserDomainName\UserName;Password=myPassword;