SecurityTokenHandler.CanReadToken Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un valor que indica si el token especificado se puede deserializar como token del tipo procesado por esta instancia.
Sobrecargas
CanReadToken(String) |
Devuelve un valor que indica si la cadena especificada se puede deserializar como token del tipo procesado por esta instancia. |
CanReadToken(XmlReader) |
Devuelve un valor que indica si el elemento XML al que el lector XML especificado hace referencia se puede leer como token del tipo procesado por esta instancia. |
CanReadToken(String)
Devuelve un valor que indica si la cadena especificada se puede deserializar como token del tipo procesado por esta instancia.
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
Parámetros
- tokenString
- String
La cadena de token para leer.
Devoluciones
true
si el método ReadToken(String) puede leer el elemento; en caso contrario, false
. De manera predeterminada, es false
.
Comentarios
La implementación predeterminada siempre devuelve false
.
Si invalida este método, también debe invalidar el SecurityTokenHandler.ReadToken método para proporcionar la lógica para deserializar el token.
Se aplica a
CanReadToken(XmlReader)
Devuelve un valor que indica si el elemento XML al que el lector XML especificado hace referencia se puede leer como token del tipo procesado por esta instancia.
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
Parámetros
- reader
- XmlReader
Lector XML situado en un elemento de inicio. Este método no debe avanzar el lector.
Devoluciones
true
si el método ReadToken(XmlReader) puede leer el elemento; en caso contrario, false
. De manera predeterminada, es false
.
Ejemplos
En el código siguiente se muestra cómo invalidar el CanReadToken método para determinar si un controlador puede leer un token. El código se toma del Custom Token
ejemplo. En este ejemplo se proporcionan clases personalizadas que permiten el procesamiento de tokens web simples (SWT). Para obtener información sobre este ejemplo y otros ejemplos disponibles para WIF y dónde descargarlos, consulte Índice de ejemplo de código 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;
}
Comentarios
La implementación predeterminada siempre devuelve false
.
Una clase derivada comprueba el elemento al que hace referencia el lector para determinar si la instancia puede deserializar un token de seguridad. Normalmente, esto se logra a través de una llamada al IsStartElement método con las cadenas de espacio de nombres y elementos correspondientes especificadas. Si invalida CanReadKeyIdentifierClause, también debe invalidar el SecurityTokenHandler.ReadToken método o el SecurityTokenHandler.ReadToken método para proporcionar la lógica para deserializar la cláusula de identificador de clave.