Eseguire la migrazione di risorse hub IoT a una nuova radice del certificato TLS
L'hub IoT di Azure e Device Provisioning Service (DPS) usano i certificati TLS rilasciati dalla radice di Baltimore CyberTrust, che scadrà nel 2025. A partire da febbraio 2023, tutti gli hub IoT nel cloud di Azure globale hanno iniziato a eseguire la migrazione a un nuovo certificato TLS rilasciato da DigiCert Global Root G2.
Gli effetti della migrazione dei certificati TLS negli hub IoT includono:
- Qualsiasi dispositivo che non ha DigiCert Global Root G2 nell'archivio certificati non è più in grado di connettersi ad Azure.
- L'indirizzo IP dell'hub IoT è stato modificato.
Sequenza temporale
A partire dal 30 settembre 2024, la migrazione è completa per tutte le risorse hub IoT, IoT Central e Del servizio Device Provisioning.
Passaggi necessari
Come parte della migrazione, seguire questa procedura:
Aggiungere i certificati DigiCert Global Root G2 e Microsoft RSA Root Certificate Authority 2017 ai dispositivi. È possibile scaricare tutti questi certificati dai dettagli dell'autorità di certificazione di Azure.
DigiCert Global Root G2 garantisce che i dispositivi possano connettersi dopo la migrazione. Microsoft RSA Root Certificate Authority 2017 consente di evitare interruzioni future nel caso in cui DigiCert Global Root G2 venga ritirato in modo imprevisto.
Per altre informazioni sulle procedure consigliate per i certificati di hub IoT, vedere Supporto TLS.
Assicurarsi di non aggiungere certificati intermedi o foglia e di usare le radici pubbliche per eseguire la convalida del server TLS.
hub IoT e dps esegue occasionalmente il rollover dell'autorità di certificazione intermedia(CA). In questi casi, i dispositivi perderanno la connettività se cercano in modo esplicito una CA intermedia o un certificato foglia. Tuttavia, i dispositivi che eseguono la convalida usando le radici pubbliche continueranno a connettersi indipendentemente dalle modifiche apportate alla CA intermedia.
Domande frequenti
I dispositivi usano l'autenticazione SAS/X.509/TPM. Questa migrazione ha interessato i dispositivi?
La migrazione del certificato TLS non influisce sul modo in cui i dispositivi vengono autenticati da hub IoT. Questa migrazione influisce sul modo in cui i dispositivi autenticano gli endpoint hub IoT e DPS.
hub IoT e DPS presentano il certificato server ai dispositivi e i dispositivi eseguono l'autenticazione del certificato sulla radice per considerare attendibile la connessione agli endpoint. I dispositivi devono avere il nuovo DigiCert Global Root G2 negli archivi certificati attendibili per poter verificare e connettersi ad Azure dopo questa migrazione.
I dispositivi usano gli SDK di Azure IoT per connettersi. È necessario eseguire alcuna operazione per mantenere gli SDK che funzionano con il nuovo certificato?
Dipende.
- Sì, se si usa il client del dispositivo Java V1. Questo client crea un pacchetto del certificato Baltimore Cybertrust Root insieme all'SDK. È possibile eseguire l'aggiornamento a Java V2 o aggiungere manualmente il certificato DigiCert Global Root G2 al codice sorgente.
- No, se si usano gli altri SDK di Azure IoT. La maggior parte degli SDK di Azure IoT si basa sull'archivio certificati del sistema operativo sottostante per recuperare le radici attendibili per l'autenticazione server durante l'handshake TLS.
I dispositivi si connettono a un'area di Azure sovrana. È comunque necessario aggiornarli?
No, solo il cloud di Azure globale è interessato da questa modifica. I cloud sovrani non sono stati inclusi in questa migrazione.
Uso IoT Central. È necessario aggiornare i dispositivi?
Sì, IoT Central usa sia hub IoT che dps nel back-end. La migrazione TLS ha interessato la soluzione ed è necessario aggiornare i dispositivi per mantenere la connessione.
Quando è possibile rimuovere Baltimore Cybertrust Root dai dispositivi?
È possibile rimuovere il certificato radice Baltimore ora che tutte le fasi della migrazione sono state completate. A partire dal 30 settembre 2024, nessuna risorsa IoT di Azure usa il certificato radice Baltimore.
Risoluzione dei problemi
Se si verificano problemi di connettività generali con hub IoT, vedere queste risorse per la risoluzione dei problemi:
- Modelli di connessione e ripetizione dei tentativi con SDK per dispositivi.
- Comprendere e risolvere hub IoT di Azure codici di errore.
Se si osserva Monitoraggio di Azure dopo la migrazione dei certificati, è necessario cercare un evento DeviceDisconnect seguito da un evento DeviceConnect, come illustrato nello screenshot seguente:
Se il dispositivo si disconnette ma non si riconnette dopo la migrazione, provare la procedura seguente:
Verificare che la risoluzione DNS e la richiesta di handshake siano completate senza errori.
Verificare che il dispositivo abbia sia il certificato DigiCert Global Root G2 che il certificato Baltimore installato nell'archivio certificati.
Usare la query Kusto seguente per identificare l'attività di connessione per i dispositivi. Per altre informazioni, vedere panoramica di Linguaggio di query Kusto (KQL).
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
Usare la scheda Metriche dell'hub IoT nel portale di Azure per tenere traccia del processo di riconnessione del dispositivo. Idealmente, non dovrebbe essere visualizzata alcuna modifica nei dispositivi prima e dopo aver completato questa migrazione. Una metrica consigliata da controllare è Dispositivi connessi, ma è possibile usare i grafici monitorati attivamente.