2009-08-28 65 views
2

我只是尝试使用此连接字符串集成安全

<add name="MembershipConnection" connectionString="Data Source=DBADDRESS ;Initial Catalog=aspNetMembership;Persist Security Info=True;Integrated Security=SSPI;"/>

的WCF服务托管在IIS(2003年)和用户我有下“设置移动WCF服务为Windows身份验证目录安全性“作为我们为在SQL中具有权限设置的此应用程序设置的用户。此应用程序的应用程序池设置在“网络服务”用户下运行,但在尝试使用该服务时出现此异常。

System.Data.SqlClient.SqlException:用户登录失败“域\计算机名$”

我跟我们的系统管理员,他说,在$用户名的末尾意味着机器本身如果试图不认证用户。

关于为什么机器尝试进行身份验证而不是IIS中的用户设置的任何想法?

回答

4

其实,它的工作作为标榜:“网络服务”用户的机器验证任何远程连接。从它MSDN文档here

在的 NetworkService帐户礼物 计算机的凭据上下文中运行远程 服务器

如果你想有一个特定的帐户,你会服务需要创建它并设置应用程序池以在该帐户下运行。

如果您想以用户身份进行身份验证,则需要设置委派。

+0

我只需要为该应用程序池创建一个新的用户帐户并将其添加到“IIS_WPG”组中。然后使用该用户作为应用程序池的标识 – 2009-09-02 21:08:42