Validar certificado de cliente

APLICA-SE A: Todas as camadas de gerenciamento de API

Use a validate-client-certificate política para impor que um certificado apresentado por um cliente a uma instância de Gerenciamento de API corresponda a regras de validação especificadas e declarações, como assunto ou emissor para uma ou mais identidades de certificado.

Para ser considerado válido, um certificado de cliente deve corresponder a todas as regras de validação definidas pelos atributos no elemento de nível superior e corresponder a todas as declarações definidas para pelo menos uma das identidades definidas.

Use esta política para verificar as propriedades do certificado de entrada em relação às propriedades desejadas. Use também esta política para substituir a validação padrão de certificados de cliente nestes casos:

  • Se você carregou certificados de CA personalizados para validar solicitações de clientes para o gateway gerenciado
  • Se você configurou autoridades de certificação personalizadas para validar solicitações de cliente para um gateway autogerenciado

Para obter mais informações sobre certificados de autoridade de certificação personalizados e autoridades de certificação, consulte Como adicionar um certificado de autoridade de certificação personalizado no Gerenciamento de API do Azure.

Nota

Defina os elementos da política e os elementos filho na ordem fornecida na declaração de política. Saiba mais sobre como definir ou editar políticas de Gerenciamento de API.

Declaração de política

<validate-client-certificate 
    validate-revocation="true | false"
    validate-trust="true | false" 
    validate-not-before="true | false" 
    validate-not-after="true | false" 
    ignore-error="true | false">
    <identities>
        <identity
            thumbprint="certificate thumbprint"
            serial-number="certificate serial number"
            common-name="certificate common name"
            subject="certificate subject string"
            dns-name="certificate DNS name"
            issuer-subject="certificate issuer"
            issuer-thumbprint="certificate issuer thumbprint"
            issuer-certificate-id="certificate identifier"/>
    </identities>
</validate-client-certificate> 

Atributos

Nome Descrição Necessário Predefinição
validar-revogar Booleano. Especifica se o certificado é validado em relação à lista de revogação online. Expressões de política não são permitidas.  Não true
validar-confiança Booleano. Especifica se a validação deve falhar caso a cadeia não possa ser criada com êxito para uma autoridade de certificação confiável. Expressões de política não são permitidas. Não true
validar-não-antes Booleano. Valida o valor em relação à hora atual. Expressões de política não são permitidas. Não true
validar-não-depois Booleano. Valida o valor em relação à hora atual. Expressões de política não são permitidas. Não true
ignorar-erro Booleano. Especifica se a política deve prosseguir para o próximo manipulador ou ir para o erro em caso de falha na validação. Expressões de política não são permitidas. Não false

Elementos

Elemento Description Obrigatório
identidades Adicione este elemento para especificar um ou mais identity elementos com declarações definidas no certificado do cliente. Não

atributos de identidade

Nome Descrição Necessário Predefinição
impressão digital Impressão digital do certificado. No N/A
número de série Número de série do certificado. No N/A
nome-comum Nome comum do certificado (parte da cadeia de caracteres Subject). No N/A
requerente Cadeia de caracteres de assunto. Deve seguir o formato de Nome Distinto. No N/A
dns-nome Valor da entrada dnsName dentro da declaração Nome Alternativo do Assunto. No N/A
emitente-sujeito Assunto do emitente. Deve seguir o formato de Nome Distinto. No N/A
impressão digital do emissor Impressão digital do emissor. No N/A
ID do certificado do emissor Identificador da entidade de certificação existente que representa a chave pública do emitente. Mutuamente exclusivo com outros atributos do emissor. No N/A

Utilização

Exemplo

O exemplo a seguir valida um certificado de cliente para corresponder às regras de validação padrão da política e verifica se o assunto e o nome do emissor correspondem aos valores especificados.

<validate-client-certificate 
    validate-revocation="true" 
    validate-trust="true" 
    validate-not-before="true" 
    validate-not-after="true" 
    ignore-error="false">
    <identities>
        <identity
            subject="C=US, ST=Illinois, L=Chicago, O=Contoso Corp., CN=*.contoso.com"
            issuer-subject="C=BE, O=FabrikamSign nv-sa, OU=Root CA, CN=FabrikamSign Root CA" />
    </identities>
</validate-client-certificate> 

Para obter mais informações sobre como trabalhar com políticas, consulte: