SecurityTokenHandler.CanReadToken Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zwraca wartość wskazującą, czy określony token można deserializować jako token typu przetworzonego przez to wystąpienie.
Przeciążenia
CanReadToken(String) |
Zwraca wartość wskazującą, czy określony ciąg może być deserializowany jako token typu przetworzonego przez to wystąpienie. |
CanReadToken(XmlReader) |
Zwraca wartość wskazującą, czy element XML, do którego odwołuje się określony czytnik XML, może być odczytywany jako token typu przetworzonego przez to wystąpienie. |
CanReadToken(String)
Zwraca wartość wskazującą, czy określony ciąg może być deserializowany jako token typu przetworzonego przez to wystąpienie.
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
Parametry
- tokenString
- String
Ciąg tokenu do odczytania.
Zwraca
true
ReadToken(String) jeśli metoda może odczytać element; false
w przeciwnym razie . Wartość domyślna to false
.
Uwagi
Domyślna implementacja zawsze zwraca wartość false
.
Jeśli zastąpisz tę metodę, musisz również zastąpić SecurityTokenHandler.ReadToken metodę, aby zapewnić logikę deserializacji tokenu.
Dotyczy
CanReadToken(XmlReader)
Zwraca wartość wskazującą, czy element XML, do którego odwołuje się określony czytnik XML, może być odczytywany jako token typu przetworzonego przez to wystąpienie.
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
Parametry
- reader
- XmlReader
Czytnik XML umieszczony na elemecie startowym. Czytelnik nie powinien być zaawansowany przez tę metodę.
Zwraca
true
ReadToken(XmlReader) jeśli metoda może odczytać element; false
w przeciwnym razie . Wartość domyślna to false
.
Przykłady
Poniższy kod pokazuje, jak zastąpić metodę CanReadToken w celu określenia, czy token może być odczytywany przez program obsługi. Kod jest pobierany z przykładu Custom Token
. Ten przykład zawiera niestandardowe klasy, które umożliwiają przetwarzanie prostych tokenów internetowych (SWT). Aby uzyskać informacje na temat tego przykładu i innych przykładów dostępnych dla programu WIF oraz miejsca ich pobierania, zobacz Przykładowy indeks kodu programu 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;
}
Uwagi
Domyślna implementacja zawsze zwraca wartość false
.
Klasa pochodna sprawdza element, do którego odwołuje się czytelnik, aby określić, czy wystąpienie może deserializować token zabezpieczający. Zazwyczaj odbywa się to za pomocą wywołania IsStartElement metody z określonymi odpowiednimi elementami i ciągami przestrzeni nazw. Jeśli zastąpisz CanReadKeyIdentifierClausemetodę , należy również zastąpić SecurityTokenHandler.ReadToken metodę lub SecurityTokenHandler.ReadToken metodę w celu zapewnienia logiki deserializacji klauzuli identyfikatora klucza.