Saml2SecurityTokenHandler Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет обработчик маркера безопасности, который создает маркеры безопасности из утверждений SAML 2.0.
public ref class Saml2SecurityTokenHandler : System::IdentityModel::Tokens::SecurityTokenHandler
public class Saml2SecurityTokenHandler : System.IdentityModel.Tokens.SecurityTokenHandler
type Saml2SecurityTokenHandler = class
inherit SecurityTokenHandler
Public Class Saml2SecurityTokenHandler
Inherits SecurityTokenHandler
- Наследование
Комментарии
Класс Saml2SecurityTokenHandler сериализует и десериализирует маркеры безопасности, поддерживаемые утверждениями SAML 2.0 в Saml2SecurityToken объекты. Обработчики маркеров безопасности отвечают за создание, чтение, запись и проверку маркеров.
Вы можете настроить службу маркеров безопасности (STS) или приложение проверяющей стороны (RP) для обработки маркеров безопасности, поддерживаемых утверждением SAML 2.0, добавив экземпляр Saml2SecurityTokenHandler класса в SecurityTokenHandlerCollection объект, настроенный для службы (или приложения). Это можно сделать программным способом или в файле конфигурации. Сам обработчик настраивается из конфигурации, указанной для коллекции, через свойство коллекции Configuration при добавлении в коллекцию. Хотя обработчик можно настроить отдельно, задав его Configuration свойство, это обычно не обязательно. Однако если обработчик должен быть настроен по отдельности, свойство должно быть задано после добавления обработчика в коллекцию.
Для многих сценариев Saml2SecurityTokenHandler класс можно использовать as-is; однако класс предоставляет множество точек расширения с помощью методов, предоставляемых им. Исходя из Saml2SecurityTokenHandler определенных методов и переопределяя определенные методы, можно изменить функциональные возможности обработки маркеров, предоставляемых в реализации по умолчанию, или добавить обработку расширений в спецификацию утверждения SAML, которая может потребоваться в некоторых пользовательских сценариях.
Конструкторы
| Имя | Описание |
|---|---|
| Saml2SecurityTokenHandler() |
Инициализирует новый экземпляр Saml2SecurityTokenHandler класса с требованиями маркера безопасности по умолчанию. |
| Saml2SecurityTokenHandler(SamlSecurityTokenRequirement) |
Инициализирует новый экземпляр Saml2SecurityTokenHandler класса с указанными требованиями маркера безопасности. |
Поля
| Имя | Описание |
|---|---|
| TokenProfile11ValueType |
Тип значения идентификатора ключа для идентификаторов утверждений SAML 2.0, как определено профилем токена SAML для ВЕБ-служб OASIS. Это универсальный код ресурса (URI). |
Свойства
| Имя | Описание |
|---|---|
| CanValidateToken |
Возвращает значение, указывающее, может ли этот обработчик проверить маркеры типа Saml2SecurityToken. |
| CanWriteToken |
Возвращает значение, указывающее, может ли этот обработчик сериализовать маркеры типа Saml2SecurityToken. |
| CertificateValidator |
Возвращает или задает проверяющий элемент сертификата X.509, используемый текущим экземпляром для проверки сертификатов X.509. |
| Configuration |
Возвращает или задает SecurityTokenHandlerConfiguration объект, предоставляющий конфигурацию для текущего экземпляра. (Унаследовано от SecurityTokenHandler) |
| ContainingCollection |
Возвращает коллекцию обработчика маркеров, содержащую текущий экземпляр. (Унаследовано от SecurityTokenHandler) |
| KeyInfoSerializer |
Возвращает или задает сериализатор маркеров безопасности, используемый для сериализации и десериализации идентификаторов ключей. |
| SamlSecurityTokenRequirement |
Возвращает или задает требования маркера безопасности для этого экземпляра. |
| TokenType |
Возвращает тип маркера, поддерживаемый этим обработчиком. |
Методы
| Имя | Описание |
|---|---|
| AddDelegateToAttributes(ClaimsIdentity, ICollection<Saml2Attribute>, SecurityTokenDescriptor) |
Добавляет все делегаты, связанные с темой, в коллекцию атрибутов. |
| CanReadKeyIdentifierClause(XmlReader) |
Указывает, указывает, указывает ли текущий XML-элемент на предложение идентификатора ключа, которое может быть сериализовано этим экземпляром. |
| CanReadToken(String) |
Возвращает значение, указывающее, можно ли десериализировать указанную строку как маркер типа, обрабатываемого этим экземпляром. (Унаследовано от SecurityTokenHandler) |
| CanReadToken(XmlReader) |
Указывает, можно ли считать текущий XML-элемент как маркер типа, обрабатываемого этим экземпляром. |
| CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause) |
Указывает, можно ли сериализовать указанное предложение идентификатора ключа этим экземпляром. |
| CollectAttributeValues(ICollection<Saml2Attribute>) |
Собирает атрибуты с общим типом утверждения, типом значения утверждения и исходным издателем в один атрибут с несколькими значениями. |
| CreateAdvice(SecurityTokenDescriptor) |
Saml2Advice Создает объект для утверждения. |
| CreateAttribute(Claim, SecurityTokenDescriptor) |
Saml2Attribute Создает объект из утверждения. |
| CreateAttributeStatement(ClaimsIdentity, SecurityTokenDescriptor) |
Saml2AttributeStatement Создает объект из дескриптора маркера. |
| CreateAuthenticationStatement(AuthenticationInformation, SecurityTokenDescriptor) |
Создает инструкцию проверки подлинности SAML 2.0 из указанной информации проверки подлинности. |
| CreateClaims(Saml2SecurityToken) |
Создает утверждения из токена SAML 2.0. |
| CreateConditions(Lifetime, String, SecurityTokenDescriptor) |
Создает условия для утверждения. |
| CreateIssuerNameIdentifier(SecurityTokenDescriptor) |
Создает идентификатор имени, определяющий издателя утверждения. |
| CreateSamlSubject(SecurityTokenDescriptor) |
Создает субъект SAML 2.0 для утверждения. |
| CreateSecurityTokenReference(SecurityToken, Boolean) |
Создает ссылку на маркер безопасности, если маркер не подключен к сообщению. |
| CreateStatements(SecurityTokenDescriptor) |
Создает инструкции SAML 2.0 для включения в утверждение. |
| CreateToken(SecurityTokenDescriptor) |
Создает маркер безопасности на основе дескриптора маркера. |
| CreateWindowsIdentity(String) |
WindowsIdentity Создает объект с помощью указанного имени участника-пользователя (UPN). |
| CreateXmlStringFromAttributes(IEnumerable<Saml2Attribute>) |
Создает xml-форматированную строку из коллекции атрибутов SAML 2.0, представляющих субъект. |
| DenormalizeAuthenticationType(String) |
Возвращает значение Saml2 AuthenticationContext, соответствующее нормализованное значение. |
| DetectReplayedToken(SecurityToken) |
Создает исключение, если указанный маркер уже существует в кэше воспроизведения маркера; в противном случае маркер добавляется в кэш. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| FindUpn(ClaimsIdentity) |
Находит значение утверждения участника-пользователя в указанном ClaimsIdentity объекте для сопоставления удостоверения с WindowsIdentity объектом. |
| GetEncryptingCredentials(SecurityTokenDescriptor) |
Возвращает учетные данные шифрования маркера. Переопределите этот метод, чтобы изменить учетные данные шифрования маркеров. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetSigningCredentials(SecurityTokenDescriptor) |
Возвращает учетные данные для подписывания утверждения. |
| GetTokenReplayCacheEntryExpirationTime(Saml2SecurityToken) |
Возвращает время, до которого маркер должен храниться в кэше воспроизведения маркера. |
| GetTokenTypeIdentifiers() |
Возвращает идентификаторы типа маркера, поддерживаемые этим обработчиком. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| LoadCustomConfiguration(XmlNodeList) |
Загружает настраиваемую конфигурацию из XML. |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| NormalizeAuthenticationContextClassReference(String) |
Возвращает нормализованное значение, соответствующее ссылке на класс контекста проверки подлинности SAML. |
| ProcessAttributeStatement(Saml2AttributeStatement, ClaimsIdentity, String) |
Создает утверждения из инструкции атрибута SAML 2.0 и добавляет их в указанную тему. |
| ProcessAuthenticationStatement(Saml2AuthenticationStatement, ClaimsIdentity, String) |
Создает утверждения из инструкции проверки подлинности SAML 2.0 и добавляет их в указанную тему. |
| ProcessAuthorizationDecisionStatement(Saml2AuthorizationDecisionStatement, ClaimsIdentity, String) |
Создает утверждения из оператора авторизации SAML 2.0 и добавляет их в указанный субъект. |
| ProcessSamlSubject(Saml2Subject, ClaimsIdentity, String) |
Создает утверждения из субъекта SAML 2.0 и добавляет их в указанный субъект. |
| ProcessStatement(Collection<Saml2Statement>, ClaimsIdentity, String) |
Создает утверждения из коллекции инструкций SAML 2.0 и добавляет их в указанный субъект. |
| ReadAction(XmlReader) |
Считывает <элемент saml:Action> . |
| ReadAdvice(XmlReader) |
Считывает <элемент saml:Advice> . |
| ReadAssertion(XmlReader) |
Считывает <элемент saml:Assert> . |
| ReadAttribute(XmlReader) |
Считывает <элемент saml:Attribute> . |
| ReadAttributeStatement(XmlReader) |
Считывает <элемент saml:AttributeStatement или <элемент saml:Statement>, указывающий xsi:type saml:AttributeStatementType>. |
| ReadAttributeValue(XmlReader, Saml2Attribute) |
Считывает значение атрибута. |
| ReadAudienceRestriction(XmlReader) |
Считывает <элемент saml:AudienceRestriction> или <элемент saml:Condition> , указывающий xsi:type saml:AudienceRestrictionType. |
| ReadAuthenticationContext(XmlReader) |
Считывает <элемент saml:AuthnContext> . |
| ReadAuthenticationStatement(XmlReader) |
Считывает <элемент saml:AuthnStatement или <элемент saml:Statement>, указывающий xsi:type saml:AuthnStatementType>. |
| ReadAuthorizationDecisionStatement(XmlReader) |
Считывает <элемент saml:AuthzDecisionStatement> или <элемент saml:Statement> , указывающий xsi:type saml:AuthzDecisionStatementType. |
| ReadConditions(XmlReader) |
Считывает <элемент saml:Conditions> . |
| ReadEncryptedId(XmlReader) |
Считывает <элемент saml:EncryptedId> . |
| ReadEvidence(XmlReader) |
Считывает <элемент saml:Evidence> . |
| ReadIssuer(XmlReader) |
Считывает <элемент saml:Issuer> . |
| ReadKeyIdentifierClause(XmlReader) |
Считывает securityKeyIdentifierClause. |
| ReadNameId(XmlReader) |
Считывает <элемент saml:NameID> . |
| ReadNameIdType(XmlReader) |
<Издатель> и <NameID относятся к NameIDType>. Этот метод считывает содержимое одного из этих элементов. |
| ReadProxyRestriction(XmlReader) |
Считывает <элемент saml:ProxyRestriction> или <элемент saml:Condition> , указывающий xsi:type saml:ProxyRestrictionType. |
| ReadSigningKeyInfo(XmlReader, Saml2Assertion) |
Десериализирует ключ подписывания SAML. |
| ReadStatement(XmlReader) |
Считывает <элемент saml:Statement> . |
| ReadSubject(XmlReader) |
Считывает <элемент saml:Subject> . |
| ReadSubjectConfirmation(XmlReader) |
Считывает <элемент SubjectConfirmation> . |
| ReadSubjectConfirmationData(XmlReader) |
Считывает <элемент saml:SubjectConfirmationData> . |
| ReadSubjectId(XmlReader, String) |
Этот метод обрабатывает конструкцию, используемую в <элементах Subject и <SubjectConfirmation>> для идентификатора. |
| ReadSubjectKeyInfo(XmlReader) |
Десериализирует элемент SAML Subject <ds:KeyInfo> . |
| ReadSubjectLocality(XmlReader) |
Считывает <элемент saml:SubjectLocality> . |
| ReadToken(String) |
При переопределении в производном классе десериализирует указанную строку маркером типа, обрабатываемого производным классом. (Унаследовано от SecurityTokenHandler) |
| ReadToken(XmlReader, SecurityTokenResolver) |
При переопределении в производном классе десериализирует XML, на который ссылается указанный модуль чтения XML, на маркер типа, обрабатываемого производным классом, с помощью указанного сопоставителя маркеров. (Унаследовано от SecurityTokenHandler) |
| ReadToken(XmlReader) |
Считывает токен SAML 2.0 из указанного потока. |
| ResolveIssuerToken(Saml2Assertion, SecurityTokenResolver) |
Разрешает идентификатор ключа подписывания в объект SecurityToken. |
| ResolveSecurityKeys(Saml2Assertion, SecurityTokenResolver) |
Разрешает коллекцию SecurityKey ссылок в объекте Saml2Assertion. |
| SetDelegateFromAttribute(Saml2Attribute, ClaimsIdentity, String) |
Этот метод вызывается при обнаружении специального Saml2Attribute типа. Переданный Saml2Attribute в оболочке Saml2Attribute объект, содержащий коллекцию значений атрибутов (в свойстве Values ), каждый из которых будет сопоставлен с утверждением. Все утверждения будут возвращены в ClaimsIdentity указанном издателе. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| TraceTokenValidationFailure(SecurityToken, String) |
Трассирует событие сбоя во время проверки маркеров безопасности при включении трассировки. (Унаследовано от SecurityTokenHandler) |
| TraceTokenValidationSuccess(SecurityToken) |
Трассирует успешную проверку события маркеров безопасности при включении трассировки. (Унаследовано от SecurityTokenHandler) |
| TryResolveIssuerToken(Saml2Assertion, SecurityTokenResolver, SecurityToken) |
Разрешает идентификатор ключа подписывания в SecurityToken. |
| ValidateConditions(Saml2Conditions, Boolean) |
Проверяет указанный Saml2Conditions объект. |
| ValidateConfirmationData(Saml2SubjectConfirmationData) |
Проверяет указанный Saml2SubjectConfirmationData объект. |
| ValidateToken(SecurityToken) |
Проверяет данные маркера и возвращает свои утверждения. |
| WriteAction(XmlWriter, Saml2Action) |
Записывает <элемент saml:Action> . |
| WriteAdvice(XmlWriter, Saml2Advice) |
<Записывает элемент saml:Advice>. |
| WriteAssertion(XmlWriter, Saml2Assertion) |
Сериализует указанное утверждение SAML в указанный модуль записи XML. |
| WriteAttribute(XmlWriter, Saml2Attribute) |
Записывает <элемент saml:Attribute> . |
| WriteAttributeStatement(XmlWriter, Saml2AttributeStatement) |
Записывает <элемент saml:AttributeStatement> . |
| WriteAttributeValue(XmlWriter, String, Saml2Attribute) |
Записывает значение saml:Attribute. |
| WriteAudienceRestriction(XmlWriter, Saml2AudienceRestriction) |
Записывает <элемент saml:AudienceRestriction> . |
| WriteAuthenticationContext(XmlWriter, Saml2AuthenticationContext) |
<Записывает элемент saml:AuthnContext>. |
| WriteAuthenticationStatement(XmlWriter, Saml2AuthenticationStatement) |
Записывает <элемент saml:AuthnStatement> . |
| WriteAuthorizationDecisionStatement(XmlWriter, Saml2AuthorizationDecisionStatement) |
Записывает <элемент saml:AuthzDecisionStatement> . |
| WriteConditions(XmlWriter, Saml2Conditions) |
Записывает <элемент saml:Conditions> . |
| WriteEvidence(XmlWriter, Saml2Evidence) |
Записывает <элемент saml:Evidence> . |
| WriteIssuer(XmlWriter, Saml2NameIdentifier) |
Записывает <элемент saml:Issuer> . |
| WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause) |
Сериализует Saml2AssertionKeyIdentifierClause объект в указанный модуль записи XML. |
| WriteNameId(XmlWriter, Saml2NameIdentifier) |
<Записывает элемент saml:NameID>. |
| WriteNameIdType(XmlWriter, Saml2NameIdentifier) |
<Издатель> и <NameID относятся к NameIDType>. Этот метод записывает содержимое одного из этих элементов. |
| WriteProxyRestriction(XmlWriter, Saml2ProxyRestriction) |
Записывает <элемент saml:ProxyRestriction> . |
| WriteSigningKeyInfo(XmlWriter, SecurityKeyIdentifier) |
Записывает элемент Signing <ds:KeyInfo> с помощью указанного модуля записи XML. |
| WriteStatement(XmlWriter, Saml2Statement) |
Записывает Saml2Statement. |
| WriteSubject(XmlWriter, Saml2Subject) |
Записывает <элемент saml:Subject> . |
| WriteSubjectConfirmation(XmlWriter, Saml2SubjectConfirmation) |
Записывает <элемент saml:SubjectConfirmation> . |
| WriteSubjectConfirmationData(XmlWriter, Saml2SubjectConfirmationData) |
Записывает <элемент saml:SubjectConfirmationData> . |
| WriteSubjectKeyInfo(XmlWriter, SecurityKeyIdentifier) |
Сериализует элемент Subject <ds:KeyInfo> с помощью указанного модуля записи XML. |
| WriteSubjectLocality(XmlWriter, Saml2SubjectLocality) |
Записывает <элемент saml:SubjectLocality> . |
| WriteToken(SecurityToken) |
При переопределении в производном классе сериализует указанный маркер безопасности в строку. Маркер должен иметь тип, обработанный производным классом. (Унаследовано от SecurityTokenHandler) |
| WriteToken(XmlWriter, SecurityToken) |
Записывает токен Saml2 в указанный модуль записи XML. |