2009-08-28 98 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