Compartilhar via


SecurityTokenHandler.CanReadToken Método

Definição

Retorna um valor que indica se o token especificado pode ser desserializado como um token do tipo processado por esta instância.

Sobrecargas

CanReadToken(String)

Retorna um valor que indica se a cadeia de caracteres especificada pode ser desserializada como um token do tipo processado por esta instância.

CanReadToken(XmlReader)

Retorna um valor que indica se o elemento XML referenciado pelo leitor de XML especificado pode ser lido como um token do tipo processado por esta instância.

CanReadToken(String)

Retorna um valor que indica se a cadeia de caracteres especificada pode ser desserializada como um token do tipo processado por esta instância.

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

A cadeia de token a ser lida.

Retornos

true se o método ReadToken(String) pode ler o elemento; caso contrário, false. O padrão é false.

Comentários

A implementação padrão sempre retorna false.

Se você substituir esse método, também deverá substituir o SecurityTokenHandler.ReadToken método para fornecer a lógica para desserializar o token.

Aplica-se a

CanReadToken(XmlReader)

Retorna um valor que indica se o elemento XML referenciado pelo leitor de XML especificado pode ser lido como um token do tipo processado por esta instância.

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

Um leitor de XML posicionado em um elemento inicial. O leitor não deve ser adiantado por este método.

Retornos

true se o método ReadToken(XmlReader) pode ler o elemento; caso contrário, false. O padrão é false.

Exemplos

O código a seguir mostra como substituir o CanReadToken método para determinar se um token pode ser lido por um manipulador. O código é obtido do Custom Token exemplo. Este exemplo fornece classes personalizadas que permitem o processamento de SWT (Tokens Web Simples). Para obter informações sobre este exemplo e outros exemplos disponíveis para WIF e onde baixá-los, consulte Índice de exemplo 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;
}

Comentários

A implementação padrão sempre retorna false.

Uma classe derivada verifica o elemento ao qual o leitor está se referindo para determinar se a instância pode desserializar um token de segurança. Isso normalmente é feito por meio de uma chamada para o IsStartElement método com o elemento apropriado e as cadeias de caracteres de namespace especificadas. Se você substituir CanReadKeyIdentifierClause, também deverá substituir o SecurityTokenHandler.ReadToken método ou o SecurityTokenHandler.ReadToken método para fornecer a lógica para desserializar a cláusula de identificador de chave.

Aplica-se a