SecurityTokenHandler.CanReadToken Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, показывающее, может ли указанный токен десериализоваться как токен типа, обработанного этим экземпляром.
Перегрузки
CanReadToken(String) |
Возвращает значение, показывающее, может ли указанная строка десериализоваться как токен типа, обработанного этим экземпляром. |
CanReadToken(XmlReader) |
Возвращает значение, указывающее, является ли элемент xml, на которое ссылается указанное средство чтения XML, считываемым, как токен типа, обрабатываемого этим экземпляром. |
CanReadToken(String)
Возвращает значение, показывающее, может ли указанная строка десериализоваться как токен типа, обработанного этим экземпляром.
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
Параметры
- tokenString
- String
Строка токена для чтения
Возвращаемое значение
Значение true
, если метод ReadToken(String) может считывать элемент; в противном случае — значение false
. Значение по умолчанию — false
.
Комментарии
Реализация по умолчанию всегда возвращает значение false
.
При переопределении этого метода необходимо также переопределить SecurityTokenHandler.ReadToken метод , чтобы предоставить логику для десериализации маркера.
Применяется к
CanReadToken(XmlReader)
Возвращает значение, указывающее, является ли элемент xml, на которое ссылается указанное средство чтения XML, считываемым, как токен типа, обрабатываемого этим экземпляром.
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
Параметры
- reader
- XmlReader
Средство чтения XML, размещаемое на начальном элементе. Средство чтения не должно предваряться этим методом.
Возвращаемое значение
Значение true
, если метод ReadToken(XmlReader) может считывать элемент; в противном случае — значение false
. Значение по умолчанию — false
.
Примеры
В следующем коде показано, как переопределить CanReadToken метод , чтобы определить, может ли маркер быть считан обработчиком. Код взят из Custom Token
примера. В этом примере представлены пользовательские классы, обеспечивающие обработку простых веб-маркеров (SWT). Сведения об этом и других примерах, доступных для WIF, и о том, где их можно скачать, см. в разделе WiF Code Sample Index.
/// <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;
}
Комментарии
Реализация по умолчанию всегда возвращает значение false
.
Производный класс проверяет элемент, на который ссылается читатель, чтобы определить, может ли экземпляр десериализовать маркер безопасности. Обычно это выполняется путем вызова IsStartElement метода с указанными соответствующими элементами и строками пространства имен. При переопределении CanReadKeyIdentifierClauseнеобходимо также переопределить SecurityTokenHandler.ReadToken метод или метод , SecurityTokenHandler.ReadToken чтобы предоставить логику для десериализации предложения идентификатора ключа.