2011-01-18 25 views

回答

0

您可以檢查在OperationContextServiceSecurityContext WCF服務類中,並從,你可以決定用戶如何認證(如果有的話)。現在

ServiceSecurityContext security = 
     OperationContext.Current.ServiceSecurityContext; 

你可能對安全環境的其中之一:

  • PrimaryIdentity。包含來自索賠集的身份索賠,作爲傳統的IIdentity參考。
  • WindowsIdentity。如果它是WindowsIdentity,則包含來自聲明集的身份聲明。

如果您有其他身份驗證機制(如證書或聯合身份驗證),您的PrimaryIdentity將包含該機制的合適標識。

請參閱Fundamentals of WCF Security(鏈接到第3頁)以獲得對此主題的精彩討論。

+0

絕對的傳說謝謝。我將在早上嘗試第一件事。 (我在格林威治標準時間) –

+0

嘗試使用此,但OperationContext.Current爲空。它需要在某個地方設置嗎? –

+0

@Mike Mengell:你有什麼樣的服務? SOAP還是REST?什麼約束? –