共用方式為


SecurityTokenHandler 類別

定義

安全性令牌處理程式的抽象基類。

public ref class SecurityTokenHandler abstract : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public abstract class SecurityTokenHandler : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type SecurityTokenHandler = class
    interface ICustomIdentityConfiguration
Public MustInherit Class SecurityTokenHandler
Implements ICustomIdentityConfiguration
繼承
SecurityTokenHandler
衍生
實作

範例

所有 SecurityTokenHandler 主題中的程式碼範例都是取自 Custom Token 範例。 此範例提供自定義類別,可啟用簡單 Web 令牌 (SWT) 的處理。 如需此範例和其他可供 WIF 下載之範例的資訊,請參閱 WIF 程式代碼範例索引。 下列 XML 示範如何將 SWT 令牌處理程式新增至令牌處理程式集合。

<system.identityModel>
  <identityConfiguration saveBootstrapContext="true">
    <issuerTokenResolver type="SimpleWebToken.CustomIssuerTokenResolver, SimpleWebToken">
      <AddAudienceKeyPair  symmetricKey="wAVkldQiFypTQ+kdNdGWCYCHRcee8XmXxOvgmak8vSY=" audience="http://localhost:19851/" />
    </issuerTokenResolver>
    <issuerNameRegistry type="RelyingParty.TrustedIssuerNameRegistry, RelyingParty"/>
    <audienceUris>
      <add value="http://localhost:19851/"/>
    </audienceUris>
    <securityTokenHandlers>
      <add type="SimpleWebToken.SimpleWebTokenHandler, SimpleWebToken" />
    </securityTokenHandlers>
  </identityConfiguration>
</system.identityModel>

備註

SecurityTokenHandler 類別是所有安全性令牌處理程式衍生來源的基類。 安全性權杖處理程式負責:

  • 驗證類型的安全性令牌(SecurityToken),其設計目的是將令牌中包含的宣告處理和封裝成 ClaimsIdentity 物件。

  • 串行化和還原串行化其設計用來處理之類型的安全性令牌。

  • 串行化和還原串行化索引鍵標識符子句(SecurityKeyIdentifierClause),這些子句是指其設計用來處理 <wsse:SecurityTokenReference> 專案之型別的令牌。

  • SecurityTokenService 類別實作所傳遞 SecurityTokenDescriptor 物件建立安全性令牌。

  • 從安全性令牌建立金鑰標識子子句,以實作 SecurityTokenService 類別。

Windows Identity Foundation (WIF) 隨附下列現用的安全性令牌處理程式:

這些類別中大部分都會公開其他成員,這些成員會實作設計類別之令牌處理的特定功能。 在許多情況下,最好是從其中一個類別衍生,而不是直接從 SecurityTokenHandler 類別衍生。

您可以藉由指定 新增移除,或 清除組態檔中 securityTokenHandlers 專案底 下的 專案,來新增或移除安全性令牌處理程式集合。 包含處理程式集合組態設定的 SecurityTokenHandlerConfiguration 物件可以透過 Configuration 屬性存取,而令牌處理程式是的處理程式集合可以從 ContainingCollection 屬性存取。 您可以覆寫 LoadCustomConfiguration 方法來處理處理程式採用的任何自定義組態專案。

SecurityTokenHandler 類別會公開數個其他屬性和方法。 視您選擇實作的功能而定,您可以覆寫部分或全部成員。

您必須覆寫 TokenType 屬性和 GetTokenTypeIdentifiers 方法,以提供 WIF 基礎結構,以及類別設計用來處理之安全性令牌類型的相關信息。

驗證、串行化和還原串行化功能是透過屬性或方法公開,指出處理程式是否可以執行與實作功能之方法或方法結合的特定函式。 下列清單會將指出功能的屬性或方法與實作該功能的方法配對:

SecurityTokenService 類別的實作中,會從管線呼叫 CreateTokenCreateSecurityTokenReference 方法。

WIF 基礎結構會呼叫 DetectReplayedToken 方法,以判斷是否已收到指定的令牌。 根據預設,這個方法會傳回 false,表示尚未收到令牌。 您可以覆寫 方法,並提供邏輯來偵測重新執行的令牌。

建構函式

SecurityTokenHandler()

從衍生類別中的建構函式呼叫,以初始化 SecurityTokenHandler 類別。

屬性

CanValidateToken

取得值,這個值表示處理程式是否支援安全性令牌的驗證。

CanWriteToken

取得值,這個值表示處理程式是否可以串行化安全性令牌。

Configuration

取得或設定提供目前實例組態的 SecurityTokenHandlerConfiguration 物件。

ContainingCollection

取得包含目前實例的令牌處理程式集合。

TokenType

在衍生類別中覆寫時,取得這個實例所處理之安全性令牌的類型。

方法

CanReadKeyIdentifierClause(XmlReader)

傳回值,這個值表示指定的 XML 讀取器所參考的 XML 專案是否為這個實例可還原串行化的索引鍵標識子子句。

CanReadToken(String)

傳回值,這個值表示指定的字串是否可以還原串行化為這個實例所處理型別的標記。

CanReadToken(XmlReader)

傳回值,這個值表示指定的 XML 讀取器所參考的 XML 專案是否可以讀取為這個實例所處理之型別的標記。

CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

傳回值,這個值表示這個實例是否可以串行化指定的密鑰標識子子句。

CreateSecurityTokenReference(SecurityToken, Boolean)

在衍生類別中覆寫時,為該類別所處理的令牌建立安全性令牌參考。 這個方法通常由安全性令牌服務 (STS) 呼叫。

CreateToken(SecurityTokenDescriptor)

在衍生類別中覆寫時,使用指定的令牌描述元建立安全性令牌。 這個方法是由安全性令牌服務 (STS) 呼叫。

DetectReplayedToken(SecurityToken)

在衍生類別中覆寫時,如果偵測到指定的令牌重新執行,則會擲回例外狀況。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetTokenTypeIdentifiers()

在衍生類別中覆寫時,傳回要求中使用的 URI 集合,以識別衍生類別所處理之型別的令牌。

GetType()

取得目前實例的 Type

(繼承來源 Object)
LoadCustomConfiguration(XmlNodeList)

在衍生類別中覆寫時,從 XML 載入自定義組態。

MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ReadKeyIdentifierClause(XmlReader)

在衍生類別中覆寫時,將指定之 XML 讀取器所參考的 XML 還原串行化為參考衍生類別所處理之令牌的金鑰標識子子句。

ReadToken(String)

在衍生類別中覆寫時,將指定的字串還原串行化為衍生類別所處理之型別的標記。

ReadToken(XmlReader, SecurityTokenResolver)

在衍生類別中覆寫時,使用指定的令牌解析程式,將指定之 XML 讀取器所參考的 XML 還原串行化為衍生類別所處理之型別的令牌。

ReadToken(XmlReader)

在衍生類別中覆寫時,將指定之 XML 讀取器所參考的 XML 還原串行化為衍生類別所處理之型別的令牌。

ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)
TraceTokenValidationFailure(SecurityToken, String)

在啟用追蹤時,追蹤安全性令牌驗證期間的失敗事件。

TraceTokenValidationSuccess(SecurityToken)

追蹤啟用追蹤時,成功驗證安全性令牌事件。

ValidateToken(SecurityToken)

在衍生類別中覆寫時,驗證指定的安全性令牌。 令牌必須是衍生類別所處理的型別。

WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

在衍生類別中覆寫時,將指定的密鑰標識子句串行化為 XML。 金鑰標識子子句必須是衍生類別所支援的類型。

WriteToken(SecurityToken)

在衍生類別中覆寫時,將指定的安全性令牌串行化為字串。 令牌必須是衍生類別所處理的型別。

WriteToken(XmlWriter, SecurityToken)

在衍生類別中覆寫時,將指定的安全性令牌串行化為 XML。 令牌必須是衍生類別所處理的型別。

適用於

另請參閱