Migrar os recursos do Hub IoT para uma nova raiz de certificado TLS
O Hub IoT do Azure e o DPS (Serviço de Provisionamento de Dispositivos) usam certificados TLS emitidos pela Baltimore CyberTrust Root, que expira em 2025. A partir de fevereiro de 2023, todos os hubs IoT na nuvem global do Azure começaram a migrar para um novo certificado TLS emitido pela DigiCert Global Root G2.
Os efeitos da migração de certificado TLS em seus hubs IoT incluem:
- Qualquer dispositivo que não tenha o DigiCert Global Root G2 no repositório de certificados não é mais capaz de se conectar ao Azure.
- O endereço IP do hub IoT foi alterado.
Linha do tempo
A partir de 30 de setembro de 2024, a migração será concluída para todos os recursos do Hub IoT, do IoT Central e do Serviço de Provisionamento de Dispositivos.
Etapas necessárias
Como parte da migração, execute as seguintes etapas:
Adicione os certificados DigiCert Global Root G2 e Microsoft RSA Root Certificate Authority 2017 aos seus dispositivos. Você pode baixar todos esses certificados nos detalhes da Autoridade de Certificação do Azure.
O DigiCert Global Root G2 garante que seus dispositivos possam se conectar após a migração. A Autoridade de Certificação Raiz do Microsoft RSA 2017 ajuda a evitar interrupções futuras caso o DigiCert Global Root G2 seja desativado inesperadamente.
Para obter mais informações sobre as práticas de certificado recomendadas do Hub IoT, consulte o suporte do TLS.
Verifique se você não está fixando nenhum certificado intermediário ou folha e se está usando as raízes públicas para executar a validação do servidor TLS.
Ocasionalmente, o Hub IoT e o DPS distribuem as respectivas ACs (autoridades de certificação) intermediárias. Nesses casos, seus dispositivos perderão a conectividade se procurarem explicitamente um certificado folha ou uma AC intermediária. No entanto, os dispositivos que executam a validação usando as raízes públicas continuarão se conectando, independentemente de qualquer alteração na AC intermediária.
Perguntas frequentes
Meus dispositivos usam a autenticação SAS/X.509/TPM. Essa migração afetou meus dispositivos?
A migração do certificado TLS não afeta a forma como os dispositivos são autenticados pelo Hub IoT. Essa migração afeta como os dispositivos autenticam os pontos de extremidade do Hub IoT e do DPS.
O Hub IoT e o DPS apresentam os respectivos certificados do servidor para os dispositivos, e os dispositivos autenticam esses certificados em relação à raiz para confiar na conexão com os pontos de extremidade. Os dispositivos precisam ter o novo DigiCert Global Root G2 nos repositórios de certificados confiáveis para verificação e conexão com o Azure após essa migração.
Meus dispositivos usam os SDKs do IoT do Azure para conexão. Preciso fazer alguma coisa para manter os SDKs funcionando com o novo certificado?
Depende.
- Sim, caso você use o cliente de dispositivo Java V1. Esse cliente empacota o certificado Baltimore Cybertrust Root acompanhado do SDK. Você pode atualizar para o Java V2 ou adicionar manualmente o certificado DigiCert Global Root G2 ao código-fonte.
- Não, caso você use os outros SDKs do IoT do Azure. A maioria dos SDKs do IoT do Azure depende do repositório de certificados do sistema operacional subjacente para recuperar as raízes confiáveis para a autenticação de servidor durante o handshake do TLS.
Meus dispositivos se conectam a uma região soberana do Azure. Ainda preciso atualizá-los?
Não, somente a nuvem global do Azure é afetada por essa alteração. As nuvens soberanas não foram incluídas nessa migração.
Uso o IoT Central. Preciso atualizar meus dispositivos?
Sim, o IoT Central usa o Hub IoT e o DPS no back-end. A migração do TLS afetou sua solução e você precisa atualizar seus dispositivos para manter a conexão.
Quando poderei remover o Baltimore Cybertrust Root dos meus dispositivos?
Você poderá remover o certificado raiz do Baltimore agora que todas as fases da migração foram concluídas. A partir de 30 de setembro de 2024, nenhum recurso da Internet das Coisas do Azure usará o certificado raiz de Baltimore.
Solucionar problemas
Se estiver tendo problemas gerais de conectividade com o Hub IoT, confira estes recursos de solução de problemas:
- Padrões de conexão e repetição com os SDKs de dispositivo.
- Noções básicas e solução de códigos de erro do Hub IoT do Azure.
Se estiver inspecionando o Azure Monitor depois de migrar os certificados, procure um evento DeviceDisconnect seguido de um evento DeviceConnect, conforme demonstrado na seguinte captura de tela:
Se o dispositivo se desconectar, mas não se reconectar após a migração, experimente as seguintes etapas:
Verifique se a resolução DNS e a solicitação de handshake foram concluídas sem erros.
Verifique se o dispositivo tem o certificado DigiCert Global Root G2 e o certificado Baltimore instalados no repositório de certificados.
Use a consulta Kusto a seguir para identificar a atividade de conexão dos dispositivos. Para obter mais informações, confira Visão geral da KQL (consultas Linguagem de Consulta Kusto).
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Category == "Connections" | extend parsed_json = parse_json(properties_s) | extend SDKVersion = tostring(parsed_json.sdkVersion), DeviceId = tostring(parsed_json.deviceId), Protocol = tostring(parsed_json.protocol) | distinct TimeGenerated, OperationName, Level, ResultType, ResultDescription, DeviceId, Protocol, SDKVersion
Use a guia Métricas do hub IoT no portal do Azure para acompanhar o processo de reconexão do dispositivo. O ideal é que você não veja nenhuma alteração nos dispositivos antes e depois de concluir essa migração. Uma métrica recomendada para inspeção é Dispositivos Conectados, mas você pode usar qualquer gráfico que monitora ativamente.