Compartilhar via


Autenticação do cliente usando a cadeia de Certificados de Autoridade de Certificação

Use a cadeia de Certificados de Autoridade de Certificação na Grade de Eventos do Azure para autenticar os clientes durante a conexão com o serviço.

Neste guia, você realizará as seguintes tarefas:

  1. Carregar um Certificado de Autoridade de Certificação, o certificado pai imediato do certificado do cliente, no namespace.
  2. Definir as configurações de autenticação do cliente.
  3. Conectar um cliente usando o certificado do cliente assinado pelo Certificado de Autoridade de Certificação carregado anteriormente.

Pré-requisitos

  • Você precisa já ter criado um namespace da Grade de Eventos.
  • Você precisa ter uma cadeia de Certificados de Autoridade de Certificação: certificados do cliente e o certificado pai (normalmente um certificado intermediário) que foi usado para assinar os certificados do cliente.

Gerar um exemplo de certificado do cliente e impressão digital

Caso ainda não tenha um certificado, crie um exemplo de certificado usando a CLI do Step. Considere a possibilidade de instalação manual para o Windows.

  1. 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
  1. Usando os arquivos da AC gerados para criar um 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
  1. Para ver a impressão digital, execute o comando do Step.
step certificate fingerprint client1-authn-ID.pem

Carregar o Certificado de Autoridade de Certificação no namespace

  1. No portal do Azure, navegue até o seu namespace da Grade de Eventos.
  2. Na seção MQTT no trilho esquerdo, navegue até o menu Certificados de Autoridade de Certificação.
  3. Selecione + Certificado para iniciar a página Carregar certificado.
  4. Adicione o nome do certificado, procure o certificado intermediário (.step/certs/intermediate_ca.crt) e selecione Carregar. Você pode carregar um arquivo do tipo .pem, .cer ou .crt.

Captura de tela que mostra o Certificado de Autoridade de Certificação adicionado listado na página Certificados de Autoridade de Certificação.

Observação

  • O nome do Certificado de Autoridade de Certificação pode ter entre 3 e 50 caracteres.
  • O nome do Certificado de Autoridade de Certificação pode incluir caracteres alfanuméricos, hífen (-) e não pode conter espaços.
  • Esse nome precisa ser exclusivo por namespace.

Definir as configurações de autenticação do cliente

  1. Navegue até a página Clientes.
  2. Selecione + Cliente para adicionar um novo cliente. Caso deseje atualizar um cliente existente, selecione o nome do cliente e abra a página Atualizar cliente.
  3. Na página Criar cliente, adicione o nome do cliente, o nome de autenticação do cliente e o esquema de validação de autenticação do certificado do cliente. Normalmente, o nome de autenticação do cliente se encontra no campo de nome da entidade do certificado do cliente.

Captura de tela que mostra que os metadados do cliente que usam a entidade correspondem à opção de nome de autenticação.

  1. 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 comandos a seguir para carregar/mostrar/excluir um Certificado de Autoridade de Certificação para o serviço

Carregar um 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 as informações do certificado

az eventgrid namespace ca-certificate show -g myRG --namespace-name myNS -n myCertName

Excluir o certificado

az eventgrid namespace ca-certificate delete -g myRG --namespace-name myNS -n myCertName

Próximas etapas