Condividi tramite


Gestore sicurezza di Azure IoT Edge

Si applica a:icona sì IoT Edge 1.1

Importante

La data di fine del supporto di IoT Edge 1.1 è stata il 13 dicembre 2022. Controllare il ciclo di vita del prodotto Microsoft per informazioni su come è supportato questo prodotto, servizio, tecnologia o API. Per altre informazioni sull'aggiornamento alla versione più recente di IoT Edge, vedere Aggiornare IoT Edge.

Il gestore della sicurezza di Azure IoT Edge è un core di sicurezza ben definito per la protezione del dispositivo IoT Edge e di tutti i suoi componenti, realizzato attraverso l'astrazione dell'hardware di silicio sicuro. Il responsabile della sicurezza è il punto focale per la protezione avanzata e fornisce il punto di integrazione della tecnologia ai produttori di apparecchiature originali (OEM).

Il responsabile della sicurezza astrae il hardware di silicio sicuro in un dispositivo IoT Edge.

Gestione della sicurezza di Azure IoT Edge Il responsabile della sicurezza di IoT Edge mira a difendere l'integrità del dispositivo IoT Edge e di tutte le operazioni software intrinseche. Il gestore della sicurezza trasferisce la fiducia dalla radice di fiducia hardware sottostante (se disponibile) per inizializzare il runtime IoT Edge e monitorare le operazioni in corso. Il gestore della sicurezza di IoT Edge è un software che opera in combinazione con l'hardware silicon sicuro, se disponibile, per offrire le massime garanzie di sicurezza.

Le responsabilità del gestore sicurezza di IoT Edge includono, in via esemplificativa:

  • Inizializzare il dispositivo Azure IoT Edge.
  • Controllare l'accesso alla radice di attendibilità dell'hardware del dispositivo tramite i servizi notarili.
  • Monitorare l'integrità delle operazioni di IoT Edge in fase di esecuzione.
  • Riceve la delega di attendibilità dal modulo di protezione hardware (HSM)
  • Configurare l'identità del dispositivo e gestire il passaggio di fiducia, se applicabile.
  • Ospitare e proteggere i componenti del dispositivo di servizi cloud come il servizio Device Provisioning.
  • Effettuare il provisioning di moduli IoT Edge con identità univoche.

Il gestore della sicurezza di IoT Edge è costituito da tre componenti:

  • Daemon di sicurezza di IoT Edge
  • Livello di astrazione della piattaforma del modulo di sicurezza hardware (HSM PAL)
  • È altamente consigliato utilizzare una radice di fiducia hardware o un HSM (hardware security module), sebbene sia facoltativo.

Daemon di sicurezza di IoT Edge

Il daemon di sicurezza di IoT Edge è responsabile delle operazioni di sicurezza logiche del gestore della sicurezza. Rappresenta una parte significativa della base di elaborazione attendibile del dispositivo IoT Edge.

Principi di progettazione

IoT Edge segue due principi fondamentali: ottimizzare l'integrità operativa e ridurre al minimo il bloat e la varianza.

Ottimizzare l'integrità operativa

Il demone di sicurezza di IoT Edge opera con il più alto livello di integrità possibile all'interno delle funzionalità di difesa di qualsiasi hardware della radice fidata. Con la corretta integrazione, l'hardware della radice di fiducia misura e monitora il daemon di sicurezza sia staticamente che durante l'esecuzione per resistere alla manomissione. L'accesso fisico dannoso ai dispositivi è sempre una minaccia in IoT. La radice hardware di fiducia svolge un ruolo importante nella difesa dell'integrità del dispositivo Edge IoT. La radice di attendibilità dell'hardware si presenta in due varianti:

  • Elementi sicuri per la protezione di informazioni riservate come segreti e chiavi di crittografia.
  • Proteggere le enclave per la protezione di segreti come chiavi e carichi di lavoro sensibili, ad esempio modelli di Machine Learning riservati e operazioni di misurazione.

Esistono due tipi di ambienti di esecuzione per utilizzare la radice di fiducia hardware.

  • L'ambiente di esecuzione standard o avanzato (REE, Rich Execution Environment), che si basa sull'uso di elementi sicuri per proteggere le informazioni riservate.
  • L'ambiente di esecuzione attendibile (TEE, Trusted Execution Environment), che si basa sull'uso della tecnologia delle enclavi sicure per proteggere le informazioni riservate e offrire la protezione per l'esecuzione del software.

Per i dispositivi che usano enclave sicuri come radice di attendibilità hardware, la logica sensibile all'interno del daemon di sicurezza di IoT Edge deve trovarsi all'interno dell'enclave. Le parti non sensibili del daemon di sicurezza possono trovarsi all'esterno dell'ambiente TEE. In tutti i casi, è consigliabile che i produttori di progettazione originali (ODM) e i produttori di apparecchiature originali (OEM) estendano l'attendibilità dal loro HSM per misurare e difendere l'integrità del daemon di sicurezza IoT Edge in fase di avvio e durante l'esecuzione.

Ridurre al minimo gli elementi superflui e il turnover

Un altro principio di base per il daemon di sicurezza di IoT Edge è la riduzione della varianza. Per il massimo livello di attendibilità, il daemon di sicurezza di IoT Edge può essere strettamente associato alla radice di attendibilità dell'hardware del dispositivo e operare come codice nativo. In questi casi, è comune aggiornare il software IoT Edge tramite la radice hardware dei percorsi di aggiornamento sicuri dell'attendibilità anziché i meccanismi di aggiornamento del sistema operativo, che possono risultare difficili. Il rinnovo della sicurezza è consigliato per i dispositivi IoT, ma requisiti di aggiornamento eccessivi o payload di aggiornamento di grandi dimensioni possono espandere la superficie delle minacce in molti modi. Ad esempio, si potrebbe essere tentati di ignorare alcuni aggiornamenti per ottimizzare la disponibilità dei dispositivi. Di conseguenza, la progettazione del daemon di sicurezza di IoT Edge è concisa per mantenere la base di elaborazione attendibile ben isolata di piccole dimensioni per incoraggiare gli aggiornamenti frequenti.

Architettura

Il daemon di sicurezza di IoT Edge sfrutta qualsiasi tecnologia disponibile per la radice di fiducia dell'hardware per migliorare la sicurezza. Consente anche la suddivisione tra un ambiente di esecuzione standard/avanzato (REE) e un ambiente di esecuzione attendibile (TEE), quando le tecnologie hardware offrono ambienti di quest'ultimo tipo. Le interfacce specifiche del ruolo consentono ai componenti principali di assicurare l'integrità del dispositivo IoT Edge e delle relative operazioni.

Architettura del daemon di sicurezza di Azure IoT Edge

Interfaccia cloud

L'interfaccia cloud consente l'accesso ai servizi cloud che integrano la sicurezza dei dispositivi. Ad esempio, questa interfaccia consente l'accesso al servizio Device Provisioning per la gestione del ciclo di vita delle identità dei dispositivi.

API di gestione

L'API di gestione viene chiamata dall'agente IoT Edge durante la creazione/avvio/arresto/rimozione di un modulo IoT Edge. Il daemon di sicurezza archivia le "registrazioni" per tutti i moduli attivi. Queste registrazioni mappano l'identità di un modulo ad alcune proprietà del modulo. Ad esempio, queste proprietà del modulo includono l'identificatore del processo (pid) del processo in esecuzione nel contenitore e l'hash del contenuto del contenitore Docker.

Queste proprietà vengono usate dall'API del carico di lavoro (descritta di seguito) per verificare che il chiamante sia autorizzato per un'azione.

L'API di gestione è un'API con privilegi, che può essere chiamata solo dall'agente di IoT Edge. Poiché il daemon di sicurezza di IoT Edge effettua il bootstrap e avvia l'agente IoT Edge, verifica che l'agente non sia stato manomesso, quindi può creare una registrazione implicita per l'agente IoT Edge. Lo stesso processo di attestazione impiegato dall'API viene usato anche per limitare l'accesso all'API di gestione solo all'agente di IoT Edge.

API del contenitore

L'API contenitore interagisce con il sistema contenitore in uso per la gestione dei moduli, ad esempio Moby o Docker.

API del carico di lavoro

L'API del carico di lavoro è accessibile a tutti i moduli. Fornisce una prova di identità, sia come token firmato radicato in un HSM che come un certificato X509, e il pacchetto di fiducia corrispondente a un modulo. Il bundle di attendibilità contiene i certificati della CA per tutti gli altri server che i moduli devono considerare attendibili.

Il daemon di sicurezza di IoT Edge usa un processo di attestazione per proteggere questa API. Quando un modulo chiama l'API, il daemon di sicurezza tenta di trovare una registrazione per l'identità. Se l'operazione riesce, usa le proprietà della registrazione per misurare il modulo. Se il risultato del processo di misurazione corrisponde alla registrazione, viene generata una nuova prova di identità. I certificati della CA (bundle di attendibilità) corrispondenti vengono restituiti al modulo. Il modulo usa questo certificato per connettersi all'hub IoT o ad altri moduli oppure per avviare un server. Quando il token firmato o il certificato sta per scadere, è responsabilità del modulo richiedere un nuovo certificato.

Integrazione e manutenzione

Microsoft gestisce la base di codice principale per il daemon di sicurezza di IoT Edge in GitHub.

Installazione e aggiornamenti

L'installazione e gli aggiornamenti del daemon di sicurezza di IoT Edge vengono gestiti tramite il sistema di gestione pacchetti del sistema operativo. I dispositivi IoT Edge con radice di attendibilità hardware devono fornire protezione avanzata aggiuntiva all'integrità del daemon gestendone il ciclo di vita tramite i sistemi di gestione di avvio e aggiornamenti sicuri. I produttori di dispositivi devono esplorare queste strade in base alle funzionalità dei rispettivi dispositivi.

Controllo delle versioni

Il runtime di IoT Edge registra e restituisce la versione del daemon di sicurezza di IoT Edge. La versione viene segnalata come attributo runtime.platform.version della proprietà segnalata del modulo dell'agente IoT Edge.

Modulo di protezione hardware

Il livello di astrazione della piattaforma del modulo di sicurezza hardware (HSM PAL) astrae tutte le radici dell'hardware attendibile per isolare lo sviluppatore o l'utente di IoT Edge dalle loro complessità. Include una combinazione di API (Application Programming Interface) e procedure di comunicazione tra domini, ad esempio per la comunicazione tra un ambiente di esecuzione standard e un'enclave protetta. L'implementazione reale del HSM (Hardware Security Module) Platform Abstraction Layer dipende dallo specifico hardware di sicurezza in uso. La sua esistenza consente di utilizzare praticamente qualsiasi hardware di silicio sicuro.

Radice di fiducia hardware sicura al silicio

Un processore sicuro è necessario per ancorare l'attendibilità nell'hardware del dispositivo IoT Edge. I processori sicuri possono essere di diversi tipi, come Trusted Platform Module (TPM), embedded Secure Element (eSE), Arm TrustZone, Intel SGX e tecnologie per processori sicuri personalizzate. L'uso di una radice di fiducia sicura in silicio nei dispositivi è fortemente consigliato, considerati i rischi associati alla possibilità di accesso fisico ai dispositivi IoT.

Il gestore sicurezza di IoT Edge ha come obiettivo di identificare e isolare i componenti che difendono la sicurezza e l'integrità della piattaforma Azure IoT Edge per la protezione avanzata personalizzata. Le terze parti, come i produttori di dispositivi, devono fare uso delle funzionalità di sicurezza personalizzate disponibili con l'hardware dei relativi dispositivi.

Scopri come rafforzare il gestore della sicurezza di Azure IoT con il "Trusted Platform Module" (TPM) usando software o TPM virtuali.

Creare ed effettuare il provisioning di un dispositivo IoT Edge con un TPM virtuale in Linux o Linux in Windows.

Passaggi successivi

Per altre informazioni sulla protezione dei dispositivi IoT Edge, leggere i post di blog seguenti: