Autenticação de cliente usando a cadeia de certificados da autoridade de certificação
Use a cadeia de certificados de CA na Grade de Eventos do Azure para autenticar clientes enquanto se conectam ao serviço.
Neste guia, você executa as seguintes tarefas:
- Carregue um certificado de autoridade de certificação, o certificado pai imediato do certificado do cliente, para o namespace.
- Configure as configurações de autenticação do cliente.
- Conecte um cliente usando o certificado de cliente assinado pelo certificado de autoridade de certificação carregado anteriormente.
Pré-requisitos
- Você precisa de um namespace de grade de eventos já criado.
- Você precisa de uma cadeia de certificados de CA: certificados de cliente e o certificado pai (normalmente um certificado intermediário) que foi usado para assinar os certificados de cliente.
Gerar certificado de cliente de exemplo e impressão digital
Se você ainda não tiver um certificado, poderá criar um certificado de exemplo usando a etapa CLI. Considere instalar manualmente para Windows.
Depois de instalar o Step, no Windows PowerShell, execute o comando para criar certificados raiz e intermediários.
.\step ca init --deployment-type standalone --name MqttAppSamplesCA --dns localhost --address 127.0.0.1:443 --provisioner MqttAppSamplesCAProvisioner
Usando os arquivos de autoridade de certificação gerados para criar o certificado para o cliente.
.\step certificate create client1-authnID client1-authnID.pem client1-authnID.key --ca .step/certs/intermediate_ca.crt --ca-key .step/secrets/intermediate_ca_key --no-password --insecure --not-after 2400h
Carregue o certificado da autoridade de certificação para o namespace
- No portal do Azure, navegue até o namespace da Grade de Eventos.
- Na seção MQTT broker no trilho esquerdo, navegue até o menu de certificados CA.
- Selecione + Certificado para iniciar a página Carregar certificado.
- Adicione o nome do certificado e navegue para encontrar o certificado intermediário (.step/certs/intermediate_ca.crt) e selecione Carregar. Você pode carregar um arquivo do tipo .pem, .cer ou .crt.
Nota
- O nome do certificado da autoridade de certificação pode ter de 3 a 50 caracteres.
- O nome do certificado da autoridade de certificação pode incluir alfanumérico, hífen(-) e sem espaços.
- O nome precisa ser exclusivo por namespace.
Definir configurações de autenticação de cliente
- Navegue até a página Clientes.
- Selecione + Cliente para adicionar um novo cliente. Se quiser atualizar um cliente existente, selecione o nome do cliente e abra a página Atualizar cliente.
- Na página Criar cliente, adicione o nome do cliente, o nome da autenticação do cliente e o esquema de validação da autenticação do certificado do cliente. Normalmente, o nome de autenticação do cliente estaria no campo de nome do assunto do certificado do cliente.
- Selecione o botão Criar para criar o cliente.
Exemplo de esquema de objeto de certificado
{
"properties": {
"description": "CA certificate description",
"encodedCertificate": "-----BEGIN CERTIFICATE-----`Base64 encoded Certificate`-----END CERTIFICATE-----"
}
}
Configuração da CLI do Azure
Use os seguintes comandos para carregar/mostrar/excluir um certificado de autoridade de certificação (CA) para o serviço
Carregar certificado raiz ou intermediário da autoridade de certificação
az eventgrid namespace ca-certificate create -g myRG --namespace-name myNS -n myCertName --certificate @./resources/ca-cert.json
Mostrar informações do certificado
az eventgrid namespace ca-certificate show -g myRG --namespace-name myNS -n myCertName
Excluir certificado
az eventgrid namespace ca-certificate delete -g myRG --namespace-name myNS -n myCertName