SecurityKeyType 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
指定與安全性權杖關聯的金鑰類型。
public enum class SecurityKeyType
public enum SecurityKeyType
type SecurityKeyType =
Public Enum SecurityKeyType
- 繼承
欄位
AsymmetricKey | 1 | 指定金鑰為非對稱金鑰。 |
BearerKey | 2 | 指定安全性權杖未包含所有權證明金鑰。 |
SymmetricKey | 0 | 指定金鑰為對稱金鑰。 |
備註
您可以使用 SecurityKeyType 列舉型別 (Enumeration),設定 KeyType 屬性。
BearerKey
欄位會與 KeyType 屬性搭配使用。
BearerKey 需要 Wsu:Id 或使用訊息認證的傳輸安全性
在聯合案例中,發行的權杖通常是設定為用戶端和依賴方之間訊息安全性的簽署支援權杖。 不過,當安全性令牌服務 (STS) 發行沒有密鑰的令牌 (BearerKey) 時,WCF 會將它設定為 SecurityTokenAttachmentMode.SignedEncrypted 支援令牌, (WCF 在沒有密鑰) 的情況下背書。 如此一來,發行的權杖必須在簽章中加以參考。 WCF 目前使用下列專案: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd:Id
作為 Wsu:Id) (參考機制。
如果發行的權杖沒有此類屬性,用戶端上就會擲回 MessageSecurityException 以及「要簽署的項目必須具有識別碼」文字。 當使用 SAML 1.1 權杖做為發行的權杖時,就會發生這種情形 (SAML 1.1 規格中並未定義 Wsu:Id)。
若要解決此問題,請使用傳輸安全性搭配訊息認證 (例如, AuthenticationMode.IssuedTokenOverTransport) ,或 STS 必須將 (Wsu:Id) 新增 http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd:Id
至發行的令牌。
請注意,如果 Wsu:Id 加入至 SAML 1.1 權杖,產生的 XML 就不符合 SAML 1.1 規格。 替代方式是將 Wsu:Id 加入至加密發行權杖後所產生的 EncryptedData
。 這個程序符合 SAML 1.1 規格,因為 EncryptedData
項目支援 Wsu:Id 屬性。
因此,為了符合規格,持有人權杖必須使用 STS 來加密。