SecurityTokenHandler.CanReadToken メソッド

定義

指定したトークンが、このインスタンスが処理する型のトークンとして逆シリアル化できるかどうかを示す値を返します。

オーバーロード

CanReadToken(String)

指定した文字列が、このインスタンスが処理する型のトークンとして逆シリアル化できるかどうかを示す値を返します。

CanReadToken(XmlReader)

指定した XML リーダーによって参照される XML 要素が、このインスタンスによって処理される型のトークンとして読み取ることができるかどうかを示す値を返します。

CanReadToken(String)

指定した文字列が、このインスタンスが処理する型のトークンとして逆シリアル化できるかどうかを示す値を返します。

public:
 virtual bool CanReadToken(System::String ^ tokenString);
public virtual bool CanReadToken (string tokenString);
abstract member CanReadToken : string -> bool
override this.CanReadToken : string -> bool
Public Overridable Function CanReadToken (tokenString As String) As Boolean

パラメーター

tokenString
String

読み上げるトークンの文字列。

戻り値

ReadToken(String) メソッドが要素を読み取ることができる場合は true。それ以外の場合は false。 既定値は、false です。

注釈

既定の実装では、常に false を返します。

このメソッドをオーバーライドする場合は、 メソッドを SecurityTokenHandler.ReadToken オーバーライドして、トークンを逆シリアル化するロジックを提供する必要もあります。

適用対象

CanReadToken(XmlReader)

指定した XML リーダーによって参照される XML 要素が、このインスタンスによって処理される型のトークンとして読み取ることができるかどうかを示す値を返します。

public:
 virtual bool CanReadToken(System::Xml::XmlReader ^ reader);
public virtual bool CanReadToken (System.Xml.XmlReader reader);
abstract member CanReadToken : System.Xml.XmlReader -> bool
override this.CanReadToken : System.Xml.XmlReader -> bool
Public Overridable Function CanReadToken (reader As XmlReader) As Boolean

パラメーター

reader
XmlReader

開始要素にある XML リーダー。 リーダーをこのメソッドにより移すことはできません。

戻り値

ReadToken(XmlReader) メソッドが要素を読み取ることができる場合は true。それ以外の場合は false。 既定値は、false です。

次のコードは、 メソッドを CanReadToken オーバーライドして、ハンドラーがトークンを読み取ることができるかどうかを判断する方法を示しています。 コードはサンプルから取得されます Custom Token 。 このサンプルでは、Simple Web Tokens (SWT) の処理を可能にするカスタム クラスを提供します。 WIF で使用できるこのサンプルとその他のサンプルの詳細と、それらをダウンロードする場所については、「 WIF コード サンプル インデックス」を参照してください。

/// <summary>
/// Indicates whether the current XML element can be read as a token of the type handled by this instance.
/// </summary>
/// <param name="reader">An XML reader positioned at a start element. The reader should not be advanced.</param>
/// <returns>True if the ReadToken method can the element.</returns>
public override bool CanReadToken( XmlReader reader )
{
    bool canRead = false;

    if ( reader != null )
    {
        if ( reader.IsStartElement( BinarySecurityToken)
            && ( reader.GetAttribute( ValueType ) == SimpleWebTokenConstants.ValueTypeUri ) )
        {
            canRead = true;
        }
    }

    return canRead;
}

注釈

既定の実装では、常に false を返します。

派生クラスは、リーダーが参照している要素をチェックして、インスタンスがセキュリティ トークンを逆シリアル化できるかどうかを判断します。 これは通常、適切な要素と名前空間の文字列を指定した IsStartElement メソッドの呼び出しによって実現されます。 をオーバーライド CanReadKeyIdentifierClauseする場合は、 メソッドまたは メソッドを SecurityTokenHandler.ReadToken オーバーライドして、 SecurityTokenHandler.ReadToken キー識別子句を逆シリアル化するロジックを提供する必要もあります。

適用対象