使用C#我正在尝试使用Windows服务中的Windows用户模拟连接到MSSQL服务器。 MSSQL服务器位于域A中,服务位于域B中。通过此域服务,BI可以使用LogonType = 9(新凭据)和使用WindowsIdentity的LogonUser Windows API从MSSQL服务器模拟Windows用户(域A)。模拟创建模拟上下文。 Windows用户配置为可以访问MSSQL服务器。
问题是收到的例外:
System.Data.SqlClient.SqlException:登录失败。登录来自 不受信任的域,不能与Windows身份验证一起使用。
如何解决这个问题?我希望在代码,编程或MSSQL配置中有关于可信域或两者的解决方案。
integratedSecurity = true
logonType = 9
using (new Impersonation(domainName, userName, password, integratedSecurity, logonType))
{
connectionStringBuilder.DataSource = host;
connectionStringBuilder.InitialCatalog = database;
connectionStringBuilder.Pooling = false;
connectionStringBuilder.IntegratedSecurity = integratedSecurity;
connectionStringBuilder.ConnectTimeout = connectionTimeout;
using (Connect = new SqlConnection(connectionStringBuilder.ConnectionString)) <--- exception
{