Поделиться через


структура WS_CERT_SIGNED_SAML_AUTHENTICATOR (webservices.h)

Тип для указания средства проверки подлинности токена SAML на основе массива ожидаемых сертификатов издателя. При использовании средства проверки подлинности этого типа входящий токен SAML будет приниматься только при наличии допустимой XML-подписи, созданной с помощью любого из указанных сертификатов X.509. Таким образом, указанные сертификаты X.509 представляют "список разрешений" доверенных издателей SAML.

Среда выполнения для указанных сертификатов не выполняет никаких проверок отзыва или доверия цепочки. Таким образом, приложение может убедиться, что сертификаты действительны, прежде чем они будут указаны в этой структуре.

Как указано выше, проверка полученного SAML ограничена проверкой правильности его подписи одним из указанных сертификатов. Затем приложение может извлечь утверждение SAML с помощью WsGetMessageProperty с ключом WS_MESSAGE_PROPERTY_SAML_ASSERTION и выполнить дополнительную проверку или обработку.

Синтаксис

typedef struct _WS_CERT_SIGNED_SAML_AUTHENTICATOR {
  WS_SAML_AUTHENTICATOR     authenticator;
  const _CERT_CONTEXT       **trustedIssuerCerts;
#if ...
  struct                    _CERT_CONTEXT;
  ULONG                     trustedIssuerCertCount;
  const _CERT_CONTEXT       *decryptionCert;
#else
  struct                    _CERT_CONTEXT;
#endif
  WS_VALIDATE_SAML_CALLBACK samlValidator;
  void                      *samlValidatorCallbackState;
} WS_CERT_SIGNED_SAML_AUTHENTICATOR;

Члены

authenticator

Базовый тип, от которого происходит этот тип и все остальные типы проверки подлинности SAML.

trustedIssuerCerts

Массив допустимых издателей SAML, определяемых их сертификатами X.509. Это обязательное поле.

Дескрипторы сертификатов дублируются, а копии хранятся для внутреннего использования. Приложение продолжает владеть предоставленными здесь дескрипторами сертификатов и отвечает за их освобождение в любое время после вызова создания прослушивателя, использующего эту структуру.

_CERT_CONTEXT

trustedIssuerCertCount

Количество сертификатов X.509, указанных в trustedIssuerCerts.

decryptionCert

Сертификат для расшифровки входящих токенов SAML.

Дескриптор сертификата дублируется, а копия хранится для внутреннего использования. Приложение продолжает владеть предоставленным здесь дескриптором сертификата и отвечает за его освобождение в любое время после вызова создания прослушивателя, использующего эту структуру.

samlValidator

Необязательный обратный вызов, позволяющий приложению выполнить дополнительную проверку утверждения SAML, если проверка подписи пройдена.

samlValidatorCallbackState

Состояние, которое необходимо передать обратно при вызове обратного вызова samlValidator.

Требования

Требование Значение
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Верхняя часть webservices.h