SecurityTokenHandler.CanReadToken Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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.