SamlSecurityTokenHandler Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет обработчик токенов безопасности, который создает токены безопасности из утверждений SAML 1.1.
public ref class SamlSecurityTokenHandler : System::IdentityModel::Tokens::SecurityTokenHandler
public class SamlSecurityTokenHandler : System.IdentityModel.Tokens.SecurityTokenHandler
type SamlSecurityTokenHandler = class
inherit SecurityTokenHandler
Public Class SamlSecurityTokenHandler
Inherits SecurityTokenHandler
- Наследование
Комментарии
Класс SamlSecurityTokenHandler сериализует и десериализует маркеры безопасности, поддерживаемые утверждениями SAML 1.1, в SamlSecurityToken объекты. Обработчики маркеров безопасности отвечают за создание, чтение, запись и проверку маркеров.
Вы можете настроить службу маркеров безопасности (STS) или приложение проверяющей стороны (RP) для обработки маркеров безопасности с поддержкой утверждений SAML 1.1, добавив экземпляр класса SecurityTokenHandlerCollection в SamlSecurityTokenHandler объект, настроенный для службы (или приложения). Это можно сделать программными средствами или в файле конфигурации. Сам обработчик настраивается из конфигурации, указанной для коллекции, через свойство коллекции Configuration при его добавлении в коллекцию. Хотя обработчик можно настроить по отдельности, задав его Configuration свойство, обычно это не требуется. Однако если обработчик должен быть настроен по отдельности, свойство должно быть задано после добавления обработчика в коллекцию.
Во многих сценариях SamlSecurityTokenHandler класс можно использовать как есть, однако класс предоставляет множество точек расширения с помощью методов, которые он предоставляет. Наследуя от SamlSecurityTokenHandler и переопределяя определенные методы, можно изменить функциональные возможности обработки маркеров, предоставляемые в реализации по умолчанию, или добавить обработку для расширений в спецификацию утверждения SAML, которая может потребоваться в некоторых пользовательских сценариях.
Конструкторы
SamlSecurityTokenHandler() |
Инициализирует новый экземпляр класса SamlSecurityTokenHandler с токеном безопасности по умолчанию. |
SamlSecurityTokenHandler(SamlSecurityTokenRequirement) |
Инициализирует новый экземпляр класса SamlSecurityTokenHandler с указанными требованиями токенов безопасности. |
Поля
Assertion |
urn:oasis:names:tc:SAML:1.0:assertion. |
BearerConfirmationMethod |
urn:oasis:names:tc:SAML:1.0:cm:bearer. |
Namespace |
urn:oasis:names:tc:SAML:1.0 |
UnspecifiedAuthenticationMethod |
urn:oasis:names:tc:SAML:1.0:am:unspecified. |
Свойства
CanValidateToken |
Получает значение, указывающее, может ли этот обработчик проверять токены типа SamlSecurityToken. |
CanWriteToken |
Получает значение, указывающее, может ли этот обработчик сериализовать токены типа SamlSecurityToken. |
CertificateValidator |
Получает или задает проверяющий элемент управления для сертификатов X.509, используемый текущим экземпляром для проверки сертификатов X.509. |
Configuration |
Получает или задает объект SecurityTokenHandlerConfiguration, который предоставляет конфигурацию для текущего экземпляра. (Унаследовано от SecurityTokenHandler) |
ContainingCollection |
Получает коллекцию обработчиков токена, содержащую текущий экземпляр. (Унаследовано от SecurityTokenHandler) |
KeyInfoSerializer |
Получает или задает сериализатор токенов безопасности, используемый для сериализации и десериализации идентификаторов ключей. |
SamlSecurityTokenRequirement |
Получает или задает требования к токену безопасности для данного экземпляра. |
TokenType |
Получает тип токена, поддерживаемый данным обработчиком. |
Методы
AddDelegateToAttributes(ClaimsIdentity, ICollection<SamlAttribute>, SecurityTokenDescriptor) |
Добавляет все делегаты, связанные с темой ActAs в коллекцию атрибутов. |
CanReadKeyIdentifierClause(XmlReader) |
Возвращает значение, указывающее, является ли элемент xml, на которое ссылается указанное средство чтения XML, предложением идентификатора ключа, которое может десериализоваться этим экземпляром. (Унаследовано от SecurityTokenHandler) |
CanReadToken(String) |
Возвращает значение, показывающее, может ли указанная строка десериализоваться как токен типа, обработанного этим экземпляром. (Унаследовано от SecurityTokenHandler) |
CanReadToken(XmlReader) |
Указывает, может ли текущий XML-элемент быть прочитан как токен типа, обрабатываемого данным экземпляром. |
CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause) |
Возвращает значение, показывающее, может ли указанная конструкция идентификатора ключа быть сериализована этим экземпляром. (Унаследовано от SecurityTokenHandler) |
CollectAttributeValues(ICollection<SamlAttribute>) |
Собирает атрибуты с общим типом утверждения, типом значения утверждения, и исходным издателем в один атрибут с несколькими значениями. |
CreateAdvice(SecurityTokenDescriptor) |
При переопределении в производном классе создает объект SamlAdvice для утверждения. |
CreateAssertion(String, SamlConditions, SamlAdvice, IEnumerable<SamlStatement>) |
Создает объект SamlAssertion с использованием указанных условий издателя, рекомендаций и инструкций. Этот метод можно переопределить, чтобы настроить параметры, используемые для создания проверочного утверждения. |
CreateAttribute(Claim, SecurityTokenDescriptor) |
Создает объект SamlAttribute из требования. |
CreateAttributeStatement(SamlSubject, ClaimsIdentity, SecurityTokenDescriptor) |
Создает объект SamlAttributeStatement из дескриптора токена. |
CreateAuthenticationStatement(SamlSubject, AuthenticationInformation, SecurityTokenDescriptor) |
Создает оператор проверки подлинности SAML 1.1 на основе указанных сведений о проверке подлинности. |
CreateClaims(SamlSecurityToken) |
Создает утверждения на основе токена SAML 1.1. |
CreateConditions(Lifetime, String, SecurityTokenDescriptor) |
Создает условия для утверждения. |
CreateSamlSubject(SecurityTokenDescriptor) |
Создает субъект SAML 1.1 для утверждения. |
CreateSecurityTokenReference(SecurityToken, Boolean) |
Создает ссылку на токен безопасности, если токен не вложен в сообщение. |
CreateStatements(SecurityTokenDescriptor) |
Создает операторы SAML 1.1, которые необходимо включить в утверждение. |
CreateToken(SecurityTokenDescriptor) |
Создает токен безопасности на основе дескриптора токена. |
CreateWindowsIdentity(String) |
Создает объект WindowsIdentity с использованием указанного имени субъекта-пользователя (UPN). |
CreateXmlStringFromAttributes(IEnumerable<SamlAttribute>) |
Создает форматированную строку XML на основе коллекции атрибутов SAML 1.1, представляющих субъект. |
DenormalizeAuthenticationType(String) |
Возвращает идентификатор метода аутентификации SAML11 , который соответствует заданному нормализованному значению для метода аутентификации SAML. |
DetectReplayedToken(SecurityToken) |
Вызывает исключение, если указанный токен уже существует в кэше воспроизведения токенов; в противном случае токен добавляется в кэш. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FindUpn(ClaimsIdentity) |
Находит значение утверждения имени участника-пользователя в указанном объекте ClaimsIdentity для сопоставления идентификатора с объектом WindowsIdentity. |
GetEncryptingCredentials(SecurityTokenDescriptor) |
Получает учетные данные шифрования токена. Переопределите этот метод, чтобы изменить токен шифрования учетных данных. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetSigningCredentials(SecurityTokenDescriptor) |
Получает учетные данные для подписывания проверочного утверждения. |
GetTokenReplayCacheEntryExpirationTime(SamlSecurityToken) |
Возвращает время, до которого токен должен храниться в кэше повторного использования токенов. |
GetTokenTypeIdentifiers() |
Получает идентификатор(ы) типов токенов, поддерживаемых данным обработчиком. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
LoadCustomConfiguration(XmlNodeList) |
Загружает пользовательскую конфигурацию из XML. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
NormalizeAuthenticationType(String) |
Возвращает нормализованное значение, которое соответствует идентификатору метода аутентификации SAML1.1. |
ProcessAttributeStatement(SamlAttributeStatement, ClaimsIdentity, String) |
Создает утверждения на основе оператора атрибута SAML 1.1 и добавляет их в указанный субъект. |
ProcessAuthenticationStatement(SamlAuthenticationStatement, ClaimsIdentity, String) |
Создает утверждения на основе оператора проверки подлинности SAML 1.1 и добавляет их в указанный субъект. |
ProcessAuthorizationDecisionStatement(SamlAuthorizationDecisionStatement, ClaimsIdentity, String) |
Создает утверждения на основе оператора решения авторизации SAML 1.1 и добавляет их в указанный субъект. |
ProcessSamlSubject(SamlSubject, ClaimsIdentity, String) |
Создает утверждения на основе субъекта SAML 1.1 и добавляет их в указанный субъект. |
ProcessStatement(IList<SamlStatement>, ClaimsIdentity, String) |
Создает утверждения на основе коллекции операторов SAML 1.1 и добавляет их в указанный субъект. |
ReadAction(XmlReader) |
Считывает элемент <saml:Action>. |
ReadAdvice(XmlReader) |
Считывает элемент <saml:Advice>. |
ReadAssertion(XmlReader) |
Считывает элемент <saml:Assertion>. |
ReadAttribute(XmlReader) |
Считывает элемент <saml:Attribute>. |
ReadAttributeStatement(XmlReader) |
Считывает элемент <saml:AttributeStatement> или элемент <saml:Statement>, который задает xsi:type для saml:AttributeStatementType. |
ReadAttributeValue(XmlReader, SamlAttribute) |
Считывает значение атрибута. |
ReadAudienceRestrictionCondition(XmlReader) |
Считывает элемент <saml:AudienceRestrictionCondition> из указанного средства чтения XML. |
ReadAuthenticationStatement(XmlReader) |
Считывает элемент <saml:AuthnStatement> или элемент <saml:Statement>, который задает xsi:type для saml:AuthnStatementType. |
ReadAuthorityBinding(XmlReader) |
Считывает элемент <saml:AuthorityBinding>. |
ReadAuthorizationDecisionStatement(XmlReader) |
Считывает элемент <saml:AuthzDecisionStatement> или элемент <saml:Statement>, который задает xsi:type для saml:AuthzDecisionStatementType. |
ReadCondition(XmlReader) |
Считывает saml:AudienceRestrictionCondition или saml:DoNotCacheCondition из указанного средства чтения. |
ReadConditions(XmlReader) |
Считывает элемент <saml:Conditions>. |
ReadDoNotCacheCondition(XmlReader) |
Считывает элемент saml:DoNotCacheCondition из указанного средства чтения XML. |
ReadEvidence(XmlReader) |
Считывает элемент <saml:Evidence>. |
ReadKeyIdentifierClause(XmlReader) |
При переопределении в производном классе десериализует XML-код, на который имеется ссылка в указанном модуле чтения XML, в конструкцию идентификатора ключа, который ссылается на токен, обрабатываемый производным классом. (Унаследовано от SecurityTokenHandler) |
ReadSigningKeyInfo(XmlReader, SamlAssertion) |
Десериализует SAML Signing KeyInfo. |
ReadStatement(XmlReader) |
Считывает элемент <saml:Statement>. |
ReadSubject(XmlReader) |
Считывает элемент <saml:Subject>. |
ReadSubjectKeyInfo(XmlReader) |
Выполняет десериализацию субъекта SAML элемента <ds:KeyInfo>. |
ReadToken(String) |
При переопределении в производном классе десериализует заданную строку в токен обрабатываемого этим производным классом типа. (Унаследовано от SecurityTokenHandler) |
ReadToken(XmlReader) |
Считывает токен SAML 1.1 из указанного потока. |
ReadToken(XmlReader, SecurityTokenResolver) |
При переопределении в производном классе десериализует XML-код, на который имеется ссылка в указанном модуле чтения XML, в токен, обрабатываемый производным классом, путем использования заданного сопоставителя токенов. (Унаследовано от SecurityTokenHandler) |
ResolveIssuerToken(SamlAssertion, SecurityTokenResolver) |
Разрешает идентификатор ключа подписи в SecurityToken. |
ResolveSubjectKeyIdentifier(SecurityKeyIdentifier) |
Разрешает SecurityKeyIdentifier, заданный в элементе saml:Subject. |
SetDelegateFromAttribute(SamlAttribute, ClaimsIdentity, String) |
Этот метод вызывается при обнаружении особого типа объекта SamlAttribute. Переданный объект SamlAttribute упаковывает объект SamlAttribute, содержащий коллекцию значений атрибутов (в свойстве AttributeValues), каждый из которых сопоставляется утверждению. Все утверждения будут возвращены в ClaimsIdentity с указанным издателем. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
TraceTokenValidationFailure(SecurityToken, String) |
Трассирует событие сбоя во время проверки токенов безопасности, если трассировка включена. (Унаследовано от SecurityTokenHandler) |
TraceTokenValidationSuccess(SecurityToken) |
Трассирует успешную проверку событий токен безопасности, если трассировка включена. (Унаследовано от SecurityTokenHandler) |
TryResolveIssuerToken(SamlAssertion, SecurityTokenResolver, SecurityToken) |
Разрешает идентификатор ключа подписи в SecurityToken. |
ValidateConditions(SamlConditions, Boolean) |
Проверяет заданный объект SamlConditions. |
ValidateToken(SecurityToken) |
Проверяет данные токена и возвращает его утверждения. |
WriteAction(XmlWriter, SamlAction) |
Записывает элемент <saml:Action>. |
WriteAdvice(XmlWriter, SamlAdvice) |
Записывает элемент <saml:Advice>. |
WriteAssertion(XmlWriter, SamlAssertion) |
Сериализует указанное утверждение SAML в указанное средство записи XML. |
WriteAttribute(XmlWriter, SamlAttribute) |
Записывает элемент <saml:Attribute>. |
WriteAttributeStatement(XmlWriter, SamlAttributeStatement) |
Записывает элемент <saml:AttributeStatement>. |
WriteAttributeValue(XmlWriter, String, SamlAttribute) |
Записывает значение saml:Attribute. |
WriteAudienceRestrictionCondition(XmlWriter, SamlAudienceRestrictionCondition) |
Записывает элемент <saml:AudienceRestriction>. |
WriteAuthenticationStatement(XmlWriter, SamlAuthenticationStatement) |
Записывает элемент <saml:AuthnStatement>. |
WriteAuthorityBinding(XmlWriter, SamlAuthorityBinding) |
Записывает элемент <saml:AuthorityBinding>. |
WriteAuthorizationDecisionStatement(XmlWriter, SamlAuthorizationDecisionStatement) |
Записывает элемент <saml:AuthzDecisionStatement>. |
WriteCondition(XmlWriter, SamlCondition) |
Сериализует указанный объект SamlCondition. |
WriteConditions(XmlWriter, SamlConditions) |
Записывает элемент <saml:Conditions>. |
WriteDoNotCacheCondition(XmlWriter, SamlDoNotCacheCondition) |
Записывает элемент <saml:DoNotCacheCondition>. |
WriteEvidence(XmlWriter, SamlEvidence) |
Записывает элемент <saml:Evidence>. |
WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause) |
При переопределении в производном классе сериализует указанную конструкцию идентификатора ключа в формат XML. Предложения идентификатора ключа должно иметь тип, поддерживаемый производным классом. (Унаследовано от SecurityTokenHandler) |
WriteSigningKeyInfo(XmlWriter, SecurityKeyIdentifier) |
Записывает элемент подписывания <ds:KeyInfo> с помощью заданного средства записи XML. |
WriteStatement(XmlWriter, SamlStatement) |
Записывает SamlStatement. |
WriteSubject(XmlWriter, SamlSubject) |
Записывает элемент <saml:Subject>. |
WriteSubjectKeyInfo(XmlWriter, SecurityKeyIdentifier) |
Сериализует элемент <ds:KeyInfo> субъекта с помощью заданного средства записи XML. |
WriteToken(SecurityToken) |
При переопределении в производном классе сериализует указанный токен безопасности в строку. Токен должен иметь тип, обрабатываемый производным классом. (Унаследовано от SecurityTokenHandler) |
WriteToken(XmlWriter, SecurityToken) |
Выполняет запись токена SAML в заданное средство записи XML. |