Sql server 如何将此连接字符串转换为使用SSPI安全性?
我有一个有效的连接字符串-如下所示:Sql server 如何将此连接字符串转换为使用SSPI安全性?,sql-server,sql-server-2008,Sql Server,Sql Server 2008,我有一个有效的连接字符串-如下所示: <add name="MyEntities" providerName="System.Data.EntityClient" connectionString="metadata= res://*/; provider=System.Data.SqlClient; provider connection string=' Data Source=localhost; Initial Catalog=MyDb; Integ
<add name="MyEntities"
providerName="System.Data.EntityClient"
connectionString="metadata=
res://*/;
provider=System.Data.SqlClient;
provider connection string='
Data Source=localhost;
Initial Catalog=MyDb;
Integrated Security=False;
User Id=MyDbUser;
Password=123456;
MultipleActiveResultSets=True'" />
如果我将连接字符串更改为使用SSPI安全性,它将不再工作。作为一个SQLNoob,如果有人能就我需要做的其他更改提供一些建议,我将不胜感激
提前谢谢。你试过了吗
<add name="MyEntities"
providerName="System.Data.EntityClient"
connectionString="metadata=
res://*/;
provider=System.Data.SqlClient;
provider connection string='
Data Source=localhost;
Initial Catalog=MyDb;
Integrated Security=True;
MultipleActiveResultSets=True'"
/>
然后,您需要确定连接到数据库的进程在Windows中以[MYDOMAIN\MyUser]的身份运行
如果做不到这一点,有一篇关于如何解决SQL Server的SSPI连接问题的博文。必须是Windows用户,而不是SQL Server用户: 集成安全性-如果为false,则在连接中指定用户ID和密码。如果为true,则使用当前Windows帐户凭据进行身份验证。可识别的值为true、false、yes、no和sspi(强烈建议),这与true等效
<add name="MyEntities"
providerName="System.Data.EntityClient"
connectionString="metadata=
res://*/;
provider=System.Data.SqlClient;
provider connection string='
Data Source=localhost;
Initial Catalog=MyDb;
Integrated Security=True;
MultipleActiveResultSets=True'"
/>
CREATE LOGIN [MYDOMAIN\MyUser]
FROM WINDOWS;