Compartilhar via


estrutura WS_CERT_SIGNED_SAML_AUTHENTICATOR (webservices.h)

O tipo para especificar um autenticador de token SAML com base em uma matriz de certificados de emissor esperados. Quando um autenticador desse tipo é usado, um token SAML de entrada será aceito somente se tiver uma assinatura XML válida criada com qualquer um dos certificados X.509 especificados. Assim, os certificados X.509 especificados representam uma "lista de permissões" de emissores SAML confiáveis.

Nenhuma revogação ou verificação de confiança de cadeia é feita pelo runtime nos certificados especificados: portanto, cabe ao aplicativo garantir que os certificados sejam válidos antes de serem especificados nessa estrutura.

Conforme indicado acima, a validação do SAML recebido é limitada a garantir que ele tenha sido assinado corretamente por um dos certificados especificados. Em seguida, o aplicativo pode extrair a declaração SAML usando WsGetMessageProperty com a chave WS_MESSAGE_PROPERTY_SAML_ASSERTION e fazer validador ou processamento adicional.

Sintaxe

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;

Membros

authenticator

O tipo base do qual esse tipo e todos os outros tipos de autenticador SAML derivam.

trustedIssuerCerts

A matriz de emissores SAML aceitáveis, identificada por seus certificados X.509. Esse campo é obrigatório.

Os identificadores de certificado são duplicados e as cópias são mantidas para uso interno. O aplicativo continua a possuir os identificadores de certificado fornecidos aqui e é responsável por liberá-los a qualquer momento após a chamada de criação do ouvinte que usa essa estrutura retornar.

_CERT_CONTEXT

trustedIssuerCertCount

A contagem de certificados X.509 especificados em trustedIssuerCerts.

decryptionCert

O certificado para descriptografar tokens SAML de entrada.

O identificador de certificado é duplicado e a cópia é mantida para uso interno. O aplicativo continua a possuir o identificador de certificado fornecido aqui e é responsável por liberá-lo a qualquer momento após a chamada de criação do ouvinte que usa essa estrutura retornar.

samlValidator

Um retorno de chamada opcional para habilitar o aplicativo para validação adicional na declaração SAML se a validação da assinatura for aprovada.

samlValidatorCallbackState

O estado a ser passado de volta ao invocar o retorno de chamada samlValidator.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Cabeçalho webservices.h