0

我有一个独立的应用程序,与MS SQL中的本地用户帐户很好地协同工作。当我尝试使用活动目录服务帐户时,我似乎遇到了问题。C#使用Active Directory服务帐户连接到MS SQL Server

它似乎微软希望exe作为域用户服务帐户运行,这对我来说不是一种选择。看看替代品,一个人提到主要的exe文件启动了第二个exe文件来完成这项工作,或者有一个本地windows服务。这些都不是一个选项。感觉就像它变得越来越复杂,那么它就需要。

下面是一段代码,我有工作的一个例子:

private void MakeConnection(){ 
    string ServerNM = @"MyServer"; 
    string Database = @"Test01"; 
    string Username = @"testdomain\testuser"; 
    string Password = @"testpass"; 

    string connection_string = "Server=" + ServerNM 
     + "; Database=" + Database 
     + "; User ID=" + Username 
     + "; Password=" + Password 
     + "; Max Pool Size= 1000;"; 

    try { 
     SqlConnection oSqlConnectionTest = new SqlConnection(connection_string); 
     oSqlConnectionTest.Open(); 

    }catch(Exception oException){ 
     MessageBox.Show("Error: " + oException.ToString()); 
    } 
} 

这是一个真正的限制,还是我失去了一些东西?

+0

你能更具体一些关于“问题?”吗? – pquest

+0

你错过了一些东西。您确定该服务帐户对数据库有权限吗?你在捕捉异常吗?什么是错误? – itsme86

回答

0

出于安全原因,SQL Server不接受连接字符串中的域帐户。