Esta é a documentação do Apigee Edge.
Acesse
Documentação da Apigee X. informações
Este documento explica como validar a finalidade de um certificado antes de fazer o upload dele para um keystore ou um truststore. O processo se baseia no OpenSSL para validação e é aplicável em qualquer ambiente em que o OpenSSL esteja disponível.
Os certificados TLS geralmente são emitidos para uma ou mais finalidades. Geralmente, isso é feito para restringir o número de operações para as quais uma chave pública no certificado possam ser usados. A finalidade do certificado está disponível nas seguintes extensões de certificado:
- Uso da chave
- Uso estendido de chave
Uso da chave
A extensão de uso da chave define a finalidade (por exemplo, criptografia, assinatura ou assinatura de certificado) da chave contida no certificado. Se a chave pública for usada para autenticação de entidade, a extensão de certificado deverá ter o código de uso Assinatura digital.
As diferentes extensões de uso de chave disponíveis para um certificado TLS criado com o O processo da autoridade certificadora (CA) é o seguinte:
- Assinatura digital
- Não repúdio
- Encriptação de chaves
- Encriptação de dados
- Acordo de chave
- Assinatura de certificado
- Assinatura CRL
- Somente encriptação
- Somente decriptação
Para mais informações sobre as principais extensões de uso, consulte RFC5280, Uso da chave.
Uso estendido de chave
Essa extensão indica uma ou mais finalidades para as quais a chave pública certificada pode ser usada, além das finalidades básicas indicadas na extensão de uso de chave ou no lugar delas. Em Em geral, essa extensão só aparecerá nos certificados da entidade final.
Estas são algumas extensões comuns de uso estendido de chave:
-
TLS Web server authentication
-
TLS Web client authentication
-
anyExtendedKeyUsage
Uma chave estendida pode ser crítica ou não crítica.
- Se a extensão for essencial, o certificado só poderá ser usado para o propósitos ou propósitos. Se o certificado for usado para outro propósito, estará violando os política da AC.
- Se a extensão for não crítica, ela indica a finalidade pretendida a chave é informativa e não implica que a AC restringe o uso da chave ao finalidade indicada. No entanto, os aplicativos que usam certificados podem exigir que uma determinada para que o certificado seja aceitável.
Se um certificado tiver os campos de uso da chave e de uso estendido da chave como crítico, ambos os campos devem ser processados de forma independente, e o certificado pode ser usado somente para um propósito que satisfaça os dois valores de uso da chave. No entanto, se não houver que atenda aos dois valores de uso da chave, esse certificado não poderá ser usado para para qualquer finalidade.
Ao adquirir um certificado, certifique-se de que ele tenha o uso adequado da chave definido para atender os requisitos de certificados do cliente ou servidor sem os quais o handshake de TLS falharia.
Uso de chave recomendado e usos de chave estendidos para certificados usados no Apigee Edge
Purpose |
Uso da chave
(obrigatório) |
Uso estendido de chave
(opcional) |
Certificado de entidade do servidor usado no keystore do host virtual do Apigee Edge |
|
Autenticação do servidor da Web TLS |
Certificado de entidade do cliente usado no truststore do host virtual do Apigee Edge |
|
Autenticação TLS do cliente da Web |
Certificado de entidade do servidor usado no truststore do servidor de destino do Apigee Edge |
|
Autenticação do servidor da Web TLS |
Certificado de entidade do cliente usado no keystore do servidor de destino do Apigee Edge |
|
Autenticação TLS do cliente da Web |
Certificados intermediários e raiz |
|
Antes de começar
Antes de usar as etapas deste documento, é preciso entender os seguintes tópicos:
- Se você não conhece a cadeia de certificados, leia Cadeia de confiança.
- Se você não conhece a biblioteca OpenSSL, leia OpenSSL
- Para saber mais sobre as extensões de uso das chaves e o uso estendido das chaves, leia RFC5280 (link em inglês).
- Para usar os exemplos de linha de comando neste guia, instale ou atualize para a versão mais recente A versão do cliente OpenSSL (link em inglês)
- Verifique se os certificados estão no formato PEM. Caso contrário, converter os certificados para o formato PEM (em inglês).
Validar a finalidade do certificado
Esta seção descreve as etapas usadas para validar a finalidade do certificado.
- Faça login no servidor em que o OpenSSL existe.
-
Para conferir o uso da chave de um certificado, execute o seguinte comando OpenSSL:
openssl x509 -noout -ext keyUsage < certificate
Em que certificate é o nome do certificado.
Exemplo de saída
openssl x509 -noout -ext keyUsage < entity.pem X509v3 Key Usage: critical Digital Signature, Key Encipherment openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign
-
Se o uso de uma chave for obrigatório, ele será definido dessa forma:
openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign
-
Execute o comando abaixo para conferir o uso estendido da chave de um certificado.
Se o uso estendido da chave não estiver definido como crítico, isso será uma recomendação e
não é uma obrigação.
openssl x509 -noout -ext extendedKeyUsage < certificate
Em que certificate é o nome do certificado.
Exemplo de saída
openssl x509 -noout -ext extendedKeyUsage < entity.pem X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication openssl x509 -noout -ext extendedKeyUsage < intermediate.pem X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication