2009-06-14 99 views
4

當他使用WCF服務時,我可以得到請求者的Windows IPrincipal嗎?來自WCF請求的IPrincipal

+0

也許。真的需要更多的信息來了解你如何訪問服務。 – 2009-06-14 15:18:34

+0

那麼,我使用WCF使用Windows身份驗證,我配置特定用戶到應用程序池,因此它將具有數據庫憑據。哪些更多細節必需品? thanx – Tamir 2009-06-14 15:27:09

回答

5

使用此代碼,您可以檢查您的WCF服務中的當前安全上下文。

如果用戶進行身份驗證,而WindowsPrincipal不爲空,那麼你使用的是Windows安全模式 - 你可以訪問所有相關的信息:

ServiceSecurityContext current = ServiceSecurityContext.Current; 

if (!current.IsAnonymous && current.WindowsIdentity != null) 
{ 
    string userName = current.WindowsIdentity.Name; 
}