Estrutura HTTPSPolicyCallbackData (wincrypt.h)

A estrutura SSL_EXTRA_CERT_CHAIN_POLICY_PARA , também identificada pelo nome HTTPSPolicyCallbackData, contém informações de política usadas na verificação de cadeias de certificados de cliente/servidor SSL ( Secure Sockets Layer ).

Sintaxe

typedef struct _HTTPSPolicyCallbackData {
  union {
    DWORD cbStruct;
    DWORD cbSize;
  } DUMMYUNIONNAME;
  DWORD dwAuthType;
  DWORD fdwChecks;
  WCHAR *pwszServerName;
} HTTPSPolicyCallbackData, *PHTTPSPolicyCallbackData, SSL_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_EXTRA_CERT_CHAIN_POLICY_PARA;

Membros

DUMMYUNIONNAME

DUMMYUNIONNAME.cbStruct

Valor DWORD que especifica o número de bytes nessa estrutura.

DUMMYUNIONNAME.cbSize

Valor DWORD que especifica o tamanho, em bytes, dessa estrutura.

dwAuthType

Valor DWORD que especifica o tipo de autenticação. Esse membro pode ser um dos valores a seguir.

Valor Significado
AUTHTYPE_CLIENT
1
O cliente está sendo autenticado.
AUTHTYPE_SERVER
2
O servidor está sendo autenticado.

fdwChecks

Valor DWORD que especifica erros de certificado a serem ignorados. Isso pode ser uma combinação bit a bit dos sinalizadores a seguir.

Valor Significado
SECURITY_FLAG_IGNORE_REVOCATION
0x00000080
Ignorar erros associados a um certificado revogado.
SECURITY_FLAG_IGNORE_UNKNOWN_CA
0x00000100
Ignorar erros associados a uma autoridade de certificação desconhecida.
SECURITY_FLAG_IGNORE_WRONG_USAGE
0x00000200
Ignorar erros associados ao uso de um certificado.
SECURITY_FLAG_IGNORE_CERT_CN_INVALID
0x00001000
Ignorar erros associados a um certificado que contém um nome comum que não é válido.
SECURITY_FLAG_IGNORE_CERT_DATE_INVALID
0x00002000
Ignorar erros associados a um certificado expirado.

pwszServerName

Um ponteiro para uma cadeia de caracteres largos terminada em nulo que contém o nome do servidor. Esse membro será ignorado se o valor do membro dwAuthType for AUTHTYPE_CLIENT.

Se a cadeia de caracteres for codificada pelo Punycode, o nome do servidor do certificado, o nome DNS ou o nome comum, será convertido em uma cadeia de caracteres codificada por Punycode. A correspondência será executada, rótulo por rótulo, se o nome contiver caracteres curinga ou uma correspondência exata que não diferencia maiúsculas de minúsculas.

Se a cadeia de caracteres contiver caracteres Unicode fora do conjunto de caracteres ASCII e o nome da entidade, o nome DNS ou o nome comum, for uma cadeia de caracteres codificada por Punycode, ela será codificada antes da comparação.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho wincrypt.h