As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configuração de certificado de servidor para grampeamento de OCSP
AWS IoT Core suporta grampeamento OCSP (Online Certificate Status Protocol)
Você pode habilitar o grampeamento OCSP do certificado do servidor AWS IoT Core para verificar a validade do certificado consultando o respondente OCSP periodicamente. A configuração de grampeamento de OCSP faz parte do processo para criar ou atualizar uma configuração de domínio com um domínio personalizado. O grampeamento de OCSP verifica continuamente o status de revogação no certificado do servidor. Isso ajuda a verificar se os certificados que foram revogados pela CA não são mais confiáveis para os clientes que se conectam aos seus domínios personalizados. Para obter mais informações, consulte Habilitando o certificado de servidor OCSP em AWS IoT Core.
O grampeamento de OCSP do certificado de servidor fornece verificação do status da revogação em tempo real, reduz a latência associada à verificação do status da revogação e melhora a privacidade e a confiabilidade das conexões seguras. Para obter mais informações sobre os benefícios de usar o grampeamento de OCSP, consulte Benefícios de usar o grampeamento OCSP em comparação com as verificações OCSP do lado do cliente.
nota
Esse recurso não está disponível em AWS GovCloud (US) Regions.
Neste tópico:
O que é o OCSP?
O Protocolo de status de certificado online (OCSP) ajuda a fornecer o status de revogação de um certificado de servidor para um handshake Transport Layer Security (TLS).
Principais conceitos
Os conceitos-chave a seguir fornecem detalhes sobre o protocolo de status de certificados online (OCSP).
OCSP
O OCSP
Respondente OCSP
Um respondente OCSP (também conhecido como servidor OCSP) recebe e responde às solicitações OCSP de clientes que buscam verificar o status de revogação dos certificados.
OCSP do lado do cliente
No OCSP do lado do cliente, o cliente usa o OCSP para entrar em contato com um respondente OCSP para verificar o status de revogação do certificado durante o handshake TLS.
OCSP do lado do servidor
No OCSP do lado do servidor (também conhecido como grampeamento de OCSP), o servidor está habilitado (em vez do cliente) para fazer a solicitação ao respondente OCSP. O servidor grampeia a resposta OCSP ao certificado e a devolve ao cliente durante o handshake de TLS.
Diagramas do OCSP
O diagrama a seguir ilustra como o OCSP do lado do cliente e o OCSP do lado do servidor funcionam.

OCSP do lado do cliente
O cliente envia uma mensagem
ClientHello
para iniciar o handshake TLS com o servidor.O servidor recebe a mensagem e responde com uma mensagem
ServerHello
. O servidor também envia o certificado do servidor para o cliente.O cliente valida o certificado do servidor e extrai um URI OCSP dele.
O cliente envia uma solicitação de verificação de revogação de certificado para o respondente OCSP.
O respondente OCSP envia uma resposta OCSP.
O cliente valida o status do certificado com base na resposta do OCSP.
O handshake TLS é concluído.
OCSP do lado do servidor
-
O cliente envia uma mensagem
ClientHello
para iniciar o handshake TLS com o servidor. O servidor recebe a mensagem e obtém a resposta OCSP em cache mais recente. Se a resposta em cache estiver ausente ou expirada, o servidor chamará o respondente OCSP para obter o status do certificado.
O respondente OCSP envia uma resposta OCSP ao servidor.
O servidor envia uma mensagem
ServerHello
. O servidor também envia o certificado do servidor e o status do certificado para o cliente.O cliente valida o status do certificado OCSP.
O handshake TLS é concluído.
Como funciona o grampeamento de OCSP
O grampeamento OCSP é usado durante o handshake TLS entre o cliente e o servidor para verificar o status de revogação do certificado do servidor. O servidor faz a solicitação OCSP ao respondente OCSP e grampeia as respostas OCSP aos certificados retornados ao cliente. Quando o servidor faz a solicitação ao respondente OCSP, as respostas podem ser armazenadas em cache e usadas várias vezes para muitos clientes.
Como funciona o grampeamento OCSP em AWS IoT Core
O diagrama a seguir mostra como o grampeamento de OCSP do lado do servidor funciona no AWS IoT Core.

-
O dispositivo precisa ser registrado com os domínios personalizados com o grampeamento de OCSP ativado.
-
AWS IoT Core chama o respondente OCSP a cada hora para obter o status do certificado.
-
O respondente OCSP recebe a solicitação, envia a resposta OCSP mais recente e armazena a resposta OCSP em cache.
-
O dispositivo envia uma
ClientHello
mensagem para iniciar o handshake TLS. AWS IoT Core -
AWS IoT Core obtém a resposta OCSP mais recente do cache do servidor, que responde com uma resposta OCSP do certificado.
-
O servidor envia uma
ServerHello
mensagem para o dispositivo. O servidor também envia o certificado do servidor e o status do certificado para o cliente. -
O dispositivo valida o status do certificado OCSP.
-
O handshake TLS é concluído.
Benefícios de usar o grampeamento OCSP em comparação com as verificações OCSP do lado do cliente
Algumas vantagens de usar o grampeamento OCSP de certificado de servidor incluem o seguinte:
Privacidade aprimorada
Sem o grampeamento de OCSP, o dispositivo do cliente pode expor informações a respondedores OCSP de terceiros, potencialmente comprometendo a privacidade do usuário. O grampeamento de OCSP atenua esse problema fazendo com que o servidor obtenha a resposta OCSP e a entregue diretamente ao cliente.
Confiabilidade aprimorada
O grampeamento de OCSP pode melhorar a confiabilidade de conexões seguras porque reduz o risco de interrupções do servidor OCSP. Quando as respostas OCSP são grampeadas, o servidor inclui a resposta mais recente com o certificado. Isso é para que os clientes tenham acesso ao status de revogação, mesmo que o respondente OCSP esteja temporariamente indisponível. O grampeamento OCSP ajuda a mitigar esses problemas porque o servidor busca respostas OCSP periodicamente e inclui as respostas em cache no handshake TLS. Isso reduz a dependência da disponibilidade em tempo real dos respondedores do OCSP.
Carga reduzida do servidor
O grampeamento de OCSP alivia a carga de responder às solicitações OCSP dos respondentes OCSP para o servidor. Isso pode ajudar a distribuir a carga de maneira mais uniforme, tornando o processo de validação do certificado mais eficiente e escalável.
Latência reduzida
O grampeamento de OCSP reduz a latência associada à verificação do status de revogação de um certificado durante o handshake TLS. Em vez de o cliente precisar consultar um servidor OCSP separadamente, o servidor envia a solicitação e anexa a resposta OCSP ao certificado do servidor durante o handshake.
Habilitando o certificado de servidor OCSP em AWS IoT Core
Para habilitar o grampeamento OCSP do certificado de servidor AWS IoT Core, crie uma configuração de domínio para um domínio personalizado ou atualize uma configuração de domínio personalizado existente. Para obter informações gerais sobre como criar a configuração de um domínio com um domínio personalizado, consulte Criar e configurar domínios gerenciados do cliente .
Use as instruções a seguir para habilitar o grampeamento do servidor OCSP usando ou. AWS Management Console AWS CLI
Para habilitar o grampeamento OCSP do certificado do servidor usando o console: AWS IoT
No menu de navegação, escolha Configurações e, em seguida, escolha Criar configuração de domínio ou escolha uma configuração de domínio existente para um domínio personalizado.
Se você optar por criar uma nova configuração de domínio na etapa anterior, você verá a página Criar configuração de domínio. Na seção Propriedades de configuração do domínio, escolha Domínio personalizado. Insira as informações para criar a configuração de um domínio.
Se você optar por atualizar uma configuração de domínio existente para um domínio personalizado, verá a página de Detalhes da configuração do domínio. Escolha Editar.
Para habilitar o grampeamento de servidor OCSP, escolha Ativar grampeamento de OCSP do certificado do servidor na subseção Configurações do certificado do servidor.
-
Escolha Criar configuração de domínio ou Atualizar configuração de domínio.
Para habilitar o grampeamento de OCSP do certificado do servidor usando a AWS CLI:
Se você criar uma nova configuração de domínio para um domínio personalizado, o comando para habilitar o grampeamento de servidor OCSP poderá ser assim:
aws iot create-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:
us-east-1:123456789012
:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3
\ --server-certificate-config "enableOCSPCheck=true|false"Se você atualizar uma configuração de domínio existente para um domínio personalizado, o comando para habilitar o grampeamento de servidor OCSP poderá ser assim:
aws iot update-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:
us-east-1:123456789012
:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3
\ --server-certificate-config "enableOCSPCheck=true|false"
Para obter mais informações, consulte CreateDomainConfiguratione a UpdateDomainConfigurationpartir da Referência AWS IoT da API.
Configurando o certificado de servidor OCSP para endpoints privados em AWS IoT Core
O OCSP para endpoints privados permite que você use seus recursos OCSP privados em sua Amazon Virtual Private Cloud (Amazon VPC) para operações. AWS IoT Core O processo envolve a configuração de uma função Lambda que atua como um respondente OCSP. A função Lambda pode usar seus recursos OCSP privados para criar respostas OCSP que serão usadas. AWS IoT Core
Função do Lambda
Antes de configurar o servidor OCSP para um endpoint privado, crie uma função Lambda que atue como um respondente do Online Certificate Status Protocol (OCSP) compatível com Request for Comments (RFC) 6960, suportando respostas OCSP básicas. A função Lambda aceita uma codificação base64 da solicitação OCSP no formato Distinguished Encoding Rules (DER). A resposta da função Lambda também é uma resposta OCSP codificada em base64 no formato DER. O tamanho da resposta não deve exceder 4 kilobytes (KiB). A função Lambda deve estar na Região da AWS mesma Conta da AWS configuração do domínio. Veja a seguir exemplos de funções Lambda.
Exemplo de funções do Lambda
Autorizando AWS IoT a invocação da função Lambda
No processo de criação da configuração do domínio com um respondente Lambda OCSP, você deve conceder AWS IoT permissão para invocar a função Lambda após a criação da função. Para conceder a permissão, você pode usar o comando da CLI add-permission.
Conceda permissão para sua função Lambda usando o AWS CLI
-
Depois de inserir os valores, digite o seguinte comando. Observe que o valor
statement-id
deve ser exclusivo. Substitua
pelo valor exato que você tem, caso contrário, você poderá receber um erro deId-1234
ResourceConflictException
.aws lambda add-permission \ --function-name "ocsp-function" \ --principal "iot.amazonaws.com" \ --action "lambda:InvokeFunction" \ --statement-id "
Id-1234
" \ --source-arnarn:aws:iot:us-east-1:123456789012
:domainconfiguration/<domain-config-name>/*
--source-account123456789012
A configuração do domínio de IoT ARNs seguirá o seguinte padrão. O sufixo gerado pelo serviço não será conhecido antes do momento da criação, portanto, você deve substituí-lo por um.
*
Você pode atualizar a permissão depois que a configuração do domínio for criada e o ARN exato for conhecido.arn:
aws
:iot:use-east-1:123456789012
:domainconfiguration/domain-config-name/service-generated-suffix
-
Se o comando for executado com êxito, ele retornará uma declaração de permissão, como neste exemplo. Você pode continuar na próxima seção para configurar o grampeamento OCSP para endpoints privados.
{ "Statement": "{\"Sid\":\"
Id-1234
\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"iot.amazonaws.com\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-1
:123456789012:function:ocsp-function\",\"Condition\":{\"ArnLike\":{\"AWS:SourceArn\":\"arn:aws:iot:us-east-1:123456789012
:domainconfiguration/domain-config-name/*
\"}}}" }Se o comando não for executado com êxito, ele retornará um erro, como neste exemplo. Será necessário verificar e corrigir o erro antes de continuar.
An error occurred (AccessDeniedException) when calling the AddPermission operation: User: arn:aws:iam::57EXAMPLE833:user/EXAMPLE-1 is not authorized to perform: lambda:AddPer mission on resource: arn:aws:lambda:
us-east-1
:123456789012
:function:ocsp-function
Configurando o grampeamento OCSP do servidor para endpoints privados
Para configurar o grampeamento OCSP do certificado do servidor usando o console: AWS IoT
No menu de navegação, escolha Configurações e, em seguida, escolha Criar configuração de domínio ou escolha uma configuração de domínio existente para um domínio personalizado.
Se você optar por criar uma nova configuração de domínio na etapa anterior, você verá a página Criar configuração de domínio. Na seção Propriedades de configuração do domínio, escolha Domínio personalizado. Insira as informações para criar a configuração de um domínio.
Se você optar por atualizar uma configuração de domínio existente para um domínio personalizado, verá a página de Detalhes da configuração do domínio. Escolha Editar.
Para habilitar o grampeamento de servidor OCSP, escolha Ativar grampeamento de OCSP do certificado do servidor na subseção Configurações do certificado do servidor.
-
Escolha Criar configuração de domínio ou Atualizar configuração de domínio.
Para configurar o grampeamento OCSP do certificado do servidor usando: AWS CLI
Se você criar uma nova configuração de domínio para um domínio personalizado, o comando para configurar o certificado de servidor OCSP para endpoints privados pode ter a seguinte aparência:
aws iot create-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:
us-east-1:123456789012
:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3
\ --server-certificate-config "enableOCSPCheck=true, ocspAuthorizedResponderArn=arn:aws:acm:us-east-1:123456789012
:certificate/certificate_ID
, ocspLambdaArn=arn:aws:lambda:us-east-1:123456789012
:function:my-function
"Se você atualizar uma configuração de domínio existente para um domínio personalizado, o comando para configurar o certificado de servidor OCSP para endpoints privados pode ter a seguinte aparência:
aws iot update-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:
us-east-1:123456789012
:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3
\ --server-certificate-config "enableOCSPCheck=true, ocspAuthorizedResponderArn=arn:aws:acm:us-east-1:123456789012
:certificate/certificate_ID
, ocspLambdaArn=arn:aws:lambda:us-east-1:123456789012
:function:my-function
"
- enableOCSPCheck
-
Esse é um valor booleano que indica se a verificação de grampeamento OCSP do servidor está habilitada ou não. Para habilitar o grampeamento OCSP do certificado do servidor, esse valor deve ser verdadeiro.
- ocspAuthorizedResponderArn
-
Esse é um valor de string do Amazon Resource Name (ARN) para um certificado X.509 armazenado em AWS Certificate Manager (ACM). Se fornecido, AWS IoT Core usará esse certificado para validar a assinatura da resposta OCSP recebida. Se não for fornecido, AWS IoT Core usará o certificado de emissão para validar as respostas. O certificado deve estar na mesma Conta da AWS configuração do domínio. Região da AWS Para obter mais informações sobre como registrar seu certificado de respondente autorizado, consulte Importar certificados para AWS Certificate Manager.
- ocspLambdaArn
-
Esse é um valor de string do Amazon Resource Name (ARN) para uma função Lambda que atua como um respondente compatível com Request for Comments (RFC) 6960 (OCSP), suportando respostas OCSP básicas. A função Lambda aceita uma codificação base64 da solicitação OCSP, que é codificada usando o formato DER. A resposta da função Lambda também é uma resposta OCSP codificada em base64 no formato DER. O tamanho da resposta não deve exceder 4 kilobytes (KiB). A função Lambda deve estar na Região da AWS mesma Conta da AWS configuração do domínio.
Para obter mais informações, consulte CreateDomainConfiguratione a UpdateDomainConfigurationpartir da Referência AWS IoT da API.
Notas importantes sobre o uso do grampeamento OCSP do certificado de servidor em AWS IoT Core
Ao usar o certificado de servidor OCSP em AWS IoT Core, lembre-se do seguinte:
-
AWS IoT Core suporta somente os respondedores OCSP que podem ser acessados por endereços públicos. IPv4
-
O recurso de grampeamento OCSP AWS IoT Core não oferece suporte a respondedores autorizados. Todas as respostas do OCSP devem ser assinadas pela CA que assinou o certificado, e a CA deve fazer parte da cadeia de certificados do domínio personalizado.
-
O recurso de grampeamento OCSP AWS IoT Core não oferece suporte a domínios personalizados criados usando certificados autoassinados.
-
AWS IoT Core chama um respondente OCSP a cada hora e armazena a resposta em cache. Se a chamada para o respondente falhar, AWS IoT Core grampeará a resposta válida mais recente.
-
Se não
nextUpdateTime
for mais válido, AWS IoT Core removerá a resposta do cache e o handshake TLS não incluirá os dados da resposta OCSP até a próxima chamada bem-sucedida para o respondente OCSP. Isso pode acontecer quando a resposta em cache expira antes que o servidor receba uma resposta válida do respondente OCSP. O valor denextUpdateTime
sugere que a resposta do OCSP é válida até esse momento. Para obter mais informações sobre onextUpdateTime
, consulte Entradas de log OCSP do certificado do servidor. -
Às vezes, AWS IoT Core falha ao receber a resposta OCSP ou remove a resposta OCSP existente porque ela expirou. Se situações como essas acontecerem, AWS IoT Core continuará usando o certificado do servidor fornecido pelo domínio personalizado sem a resposta do OCSP.
-
O tamanho da resposta OCSP não pode exceder 4 KiB.
Solucionando problemas de grampeamento do certificado OCSP do servidor AWS IoT Core
AWS IoT Core emite a RetrieveOCSPStapleData.Success
métrica e as entradas de RetrieveOCSPStapleData
registro para CloudWatch. A métrica e as entradas de log podem ajudar a detectar problemas relacionados a recuperar respostas do OCSP. Para obter mais informações, consulte Métricas de grampeamento de OCSP do certificado de servidor e Entradas de log OCSP do certificado do servidor.