Emissão de certificado do dispositivo no gerenciamento de certificados Hub IoT do Azure (versão prévia)

A emissão de certificado do dispositivo é o processo pelo qual os dispositivos solicitam e recebem um certificado como parte do provisionamento. Azure ADR (Registro de Dispositivo) gera e emite um novo certificado X.509 para seus dispositivos IoT durante o provisionamento. Este artigo explica a responsabilidade de um dispositivo de enviar uma CSR (Solicitação de Autenticação de Certificado), como a ADR e o DPS (Serviço de Provisionamento de Dispositivos) funcionam em conjunto para emitir certificados em escala e como Hub IoT confia nos certificados emitidos.

Importante

O Hub IoT do Azure com integração ao Registro de Dispositivos do Azure e gerenciamento de certificados X.509 com suporte da Microsoft está em prévia pública e não é recomendado para cargas de trabalho de produção. Para obter mais informações, consulte FAQ: o que há de novo em Hub IoT?.

Como funciona a emissão de certificado do dispositivo

As etapas a seguir descrevem o fluxo de emissão de ponta a ponta:

  1. O dispositivo IoT se conecta ao ponto de extremidade DPS e se autentica usando sua credencial de integração pré-configurada, como uma chave simétrica, certificado X.509 ou TPM (Trusted Platform Module). Como parte dessa chamada de registro, o dispositivo envia uma CSR (solicitação de assinatura de certificado) que inclui a chave pública do dispositivo e sua ID de registro.
  2. O DPS atribui o dispositivo IoT a um Hub IoT com base na configuração de registro.
  3. A identidade do dispositivo é criada em Hub IoT e registrada no namespace da ADR. O CSR é encaminhado para a PKI exclusiva atribuída ao Namespace ADR. A PKI valida a solicitação e a encaminha para a política vinculada ao registro de DPS.
  4. A autoridade de certificação emissora da política assina e emite o certificado operacional.
  5. DPS retorna o certificado emitido e os detalhes de conexão do Hub IoT para o dispositivo.
  6. O dispositivo é autenticado com Hub IoT apresentando sua cadeia de certificados completa.

Diagram que mostra como Azure Registro de Dispositivo se integra com Hub IoT e DPS para gerenciamento de certificados durante provisionamento.

Requisitos de solicitação de assinatura de certificado

Quando um dispositivo é provisionado ou reprovisionado, ele envia uma Solicitação de Assinatura de Certificado (CSR) para o DPS. O DPS espera que a CSR atenda aos seguintes requisitos:

  • Formato: regras de codificação distintas (DER) codificadas em Base64 seguindo a especificação PKCS (padrões de criptografia de chave pública) #10. Cabeçalhos e rodapés de e-mail com privacidade aprimorada (PEM) não podem ser incluídos.
  • Nome comum (CN): O campo CN deve corresponder exatamente à ID de registro DPS do dispositivo.
  • Algoritmo de chave: Chave EC (curva elíptica) usando a curva NIST P-384. Não há suporte para chaves RSA na versão prévia atual.

Para obter exemplos de implementação, consulte exemplos de SDK do dispositivo DPS.

Algoritmos criptográficos

O gerenciamento de certificados usa os seguintes padrões criptográficos para todos os certificados emitidos por uma política:

Property Valor
Algoritmo de chave ECC (ECDSA)
Curva NIST P-384 (secp384r1)
Algoritmo de hash SHA-384
Armazenamento de chaves HSM Gerenciado do Azure

O ECC com P-384 oferece segurança equivalente à RSA em tamanhos de chave muito menores. Esse algoritmo produz certificados menores, handshakes TLS mais rápidos e menor consumo de energia em dispositivos IoT restritos.

Hub IoT sincronização de confiança e credenciais

Para que um dispositivo se autentique com Hub IoT usando seu certificado emitido, Hub IoT deve confiar na AC emissora que assinou o certificado do dispositivo. A ADR gerencia essa confiança por meio da sincronização de credenciais, que envia o certificado de AC emissor da ADR para seus Hubs IoT vinculados.

Para executar a sincronização de credenciais manualmente, use o seguinte comando CLI do Azure:

az iot adr ns credential sync --namespace <namespace> -g <resource-group>

Hub IoT armazena o certificado da autoridade de certificação emissora e o usa para validar a cadeia de certificados que seus dispositivos apresentam durante a autenticação TLS.