Condividi tramite


SecurityTokenHandler.CanReadToken Metodo

Definizione

Restituisce un valore che indica se il token specificato può essere deserializzato come token del tipo elaborato da questa istanza.

Overload

CanReadToken(String)

Restituisce un valore che indica se la stringa specificata può essere deserializzata come un token del tipo elaborato da questa istanza.

CanReadToken(XmlReader)

Restituisce un valore che indica se l'elemento XML a cui il lettore XML specificato fa riferimento può essere letto come token del tipo elaborato da questa istanza.

CanReadToken(String)

Restituisce un valore che indica se la stringa specificata può essere deserializzata come un token del tipo elaborato da questa istanza.

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

Parametri

tokenString
String

La stringa del token da leggere.

Restituisce

true se il metodo ReadToken(String) può leggere l'elemento; in caso contrario, false. Il valore predefinito è false.

Commenti

L'implementazione predefinita restituisce sempre false.

Se si esegue l'override di questo metodo, è anche necessario eseguire l'override del SecurityTokenHandler.ReadToken metodo per fornire la logica per deserializzare il token.

Si applica a

CanReadToken(XmlReader)

Restituisce un valore che indica se l'elemento XML a cui il lettore XML specificato fa riferimento può essere letto come token del tipo elaborato da questa istanza.

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

Parametri

reader
XmlReader

Lettore XML posizionato presso un elemento iniziale. Il lettore non deve essere anticipato in base a questo metodo.

Restituisce

true se il metodo ReadToken(XmlReader) può leggere l'elemento; in caso contrario, false. Il valore predefinito è false.

Esempio

Nel codice seguente viene illustrato come eseguire l'override del CanReadToken metodo per determinare se un token può essere letto da un gestore. Il codice viene tratto dall'esempio Custom Token . Questo esempio fornisce classi personalizzate che consentono l'elaborazione di token Web semplici (SWT). Per informazioni su questo esempio e altri esempi disponibili per WIF e dove scaricarli, vedere Indice di esempio di codice 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;
}

Commenti

L'implementazione predefinita restituisce sempre false.

Una classe derivata controlla l'elemento a cui fa riferimento il lettore per determinare se l'istanza può deserializzare un token di sicurezza. Questa operazione viene in genere eseguita tramite una chiamata al IsStartElement metodo con l'elemento e le stringhe dello spazio dei nomi appropriati specificati. Se si esegue l'override CanReadKeyIdentifierClausedi , è anche necessario eseguire l'override del SecurityTokenHandler.ReadToken metodo o del SecurityTokenHandler.ReadToken metodo per fornire la logica per deserializzare la clausola dell'identificatore di chiave.

Si applica a