2009-11-28 48 views
1

我正在使用WCF調用來更新我的數據庫與來自ActiveDirectory的任何更改。 我通過客戶端瀏覽器調用這個WCF functin,並且該函數在servl本身中從AD獲取詳細信息。然而問題是AD需要用戶名和密碼來獲取任何記錄。WCF服務和ActiveDirectory

請告訴我如何克服這個問題,以便憑證中的Windows自動被接受並讀取AD。

我正在使用wsHttPBinding,安全性:message和clientCredentials =「Windows」。

感謝

維克拉姆

回答

2

Active Directory的呼叫從服務去。

該服務的默認設置是冒充= FALSE和應用程序池的標識是NETWORK SERVICE。

因此,調用AD會在網絡服務,不正確的訪問的安全上下文,並且不能給他們,因爲這是一臺機器的本地帳戶。

有3種方法可以解決這個問題。

  • 設置身份驗證=在web.config允許訪問AD真正在主叫用戶的安全上下文來完成。
  • 將應用程序池的標識更改爲允許訪問AD的域用戶的標識。請務必將此用戶添加到本地IIS_WPG組。
  • 存儲被允許訪問AD,在web.config文件中,並使用這些憑據訪問AD用戶的用戶名和密碼。