

Avviso di fine del supporto: il 7 ottobre 2026, AWS il supporto per. AWS IoT Greengrass Version 1 Dopo il 7 ottobre 2026, non potrai più accedere alle risorse. AWS IoT Greengrass V1 Per ulteriori informazioni, visita [Migrate](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html) from. AWS IoT Greengrass Version 1

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Panoramica della AWS IoT Greengrass sicurezza
<a name="gg-sec"></a>

AWS IoT Greengrass utilizza certificati, AWS IoT policy e ruoli IAM X.509 per proteggere le applicazioni eseguite sui dispositivi nell'ambiente Greengrass locale.

Il diagramma seguente mostra i componenti del modello di sicurezza: AWS IoT Greengrass 

![\[Diagramma dell'architettura del servizio Greengrass che mostra i servizi AWS , i dispositivi principali e connessi di Greengrass e le relative interazioni con i certificati.\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/images/gg-security.png)


A - Ruolo del servizio Greengrass  
Un ruolo IAM creato dal cliente che si assume AWS IoT Greengrass quando si accede alle AWS risorse da AWS IoT Core e altri servizi. AWS Lambda AWS Per ulteriori informazioni, consulta [Ruolo del servizio Greengrass](service-role.md).

B - Certificato dispositivo core  
Un certificato X.509 utilizzato per autenticare un core Greengrass con e. AWS IoT Core AWS IoT Greengrass Per ulteriori informazioni, consulta [Autenticazione e autorizzazione del dispositivo per AWS IoT Greengrass](device-auth.md).

C - Certificato dispositivo  
Un certificato X.509 utilizzato per autenticare un dispositivo client, noto anche come dispositivo connesso, con e. AWS IoT Core AWS IoT Greengrass Per ulteriori informazioni, consulta [Autenticazione e autorizzazione del dispositivo per AWS IoT Greengrass](device-auth.md).

D - Ruolo gruppo  
Un ruolo IAM creato dal cliente assunto da AWS IoT Greengrass quando si chiamano AWS servizi da un core Greengrass.  
Questo ruolo viene utilizzato per specificare le autorizzazioni di accesso necessarie alle funzioni e ai connettori Lambda definiti dall'utente per accedere ai AWS servizi, come DynamoDB. Lo usi anche per consentire di AWS IoT Greengrass esportare i flussi dello stream manager nei servizi e scriverli AWS nei registri. CloudWatch Per ulteriori informazioni, consulta [Ruolo del gruppo Greengrass](group-role.md).  
AWS IoT Greengrass non utilizza il ruolo di esecuzione Lambda specificato nella AWS Lambda versione cloud di una funzione Lambda.

Certificato server e-MQTT  
Il certificato utilizzato per l'autenticazione reciproca Transport Layer Security (TLS) tra un dispositivo core Greengrass e i dispositivi client del gruppo Greengrass. Il certificato è firmato dal certificato CA di gruppo, che è memorizzato in. Cloud AWS

## Flusso di lavoro di connessione del dispositivo
<a name="gg-sec-connection"></a>

Questa sezione descrive come i dispositivi client si connettono al AWS IoT Greengrass servizio e ai dispositivi core Greengrass. I dispositivi client sono AWS IoT Core dispositivi registrati che fanno parte dello stesso gruppo Greengrass del dispositivo principale. 
+ Un dispositivo core Greengrass utilizza il certificato del dispositivo, la chiave privata e il certificato CA AWS IoT Core principale per connettersi al AWS IoT Greengrass servizio. Sul dispositivo principale, l'oggetto `crypto` nel [file di configurazione](gg-core.md#config-json) specifica il percorso del file per questi elementi.
+ Il dispositivo core Greengrass scarica le informazioni sull'appartenenza al gruppo dal servizio AWS IoT Greengrass .
+ Quando viene effettuata una distribuzione sul dispositivo core di Greengrass, Device Certificate Manager (DCM) si occupa della gestione dei certificati del server locale per il dispositivo core Greengrass.
+ Un dispositivo client si connette al AWS IoT Greengrass servizio utilizzando il certificato del dispositivo, la chiave privata e il certificato CA AWS IoT Core principale. Dopo aver effettuato la connessione, il dispositivo client utilizza il Greengrass Discovery Service per trovare l'indirizzo IP del suo dispositivo principale Greengrass. Il dispositivo client scarica anche il certificato CA di gruppo, che viene utilizzato per l'autenticazione reciproca TLS con il dispositivo principale Greengrass.
+ Un dispositivo client tenta di connettersi al dispositivo principale Greengrass, passando il certificato del dispositivo e l'ID client. Se l'ID client corrisponde al nome dell'oggetto del dispositivo client e il certificato è valido (parte del gruppo Greengrass), viene stabilita la connessione. In caso contrario, la connessione viene terminata. 

La AWS IoT politica per i dispositivi client deve concedere l'`greengrass:Discover`autorizzazione per consentire ai dispositivi client di scoprire le informazioni di connettività relative al core. Per ulteriori informazioni sull’istruzione di policy, consulta [Autorizzazione alla scoperta](gg-discover-api.md#gg-discover-auth).

## Configurazione della sicurezza AWS IoT Greengrass
<a name="gg-config-sec"></a>

**Per configurare la sicurezza dell'applicazione Greengrass:**

1. Crea AWS IoT Core qualcosa per il tuo dispositivo principale Greengrass.

1. Generare una coppia di chiavi e un certificato di dispositivo per il dispositivo core Greengrass.

1. Creare e collegare una [policy AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) al certificato del dispositivo. Il certificato e la policy consentono al dispositivo principale di Greengrass di accedere ai servizi AWS IoT Core e AWS IoT Greengrass ai servizi. Per ulteriori informazioni, consulta [ AWS IoT Politica minima per il dispositivo principale](device-auth.md#gg-config-sec-min-iot-policy).
**Nota**  
<a name="thing-policy-variable-not-supported"></a>L'uso di [thing policy variables](https://docs.aws.amazon.com/iot/latest/developerguide/thing-policy-variables.html) (`iot:Connection.Thing.*`) nella AWS IoT policy per un dispositivo principale non è supportato. Il core utilizza lo stesso certificato del dispositivo per effettuare [più connessioni](gg-core.md#connection-client-id) AWS IoT Core , ma l'ID client in una connessione potrebbe non corrispondere esattamente al nome dell'oggetto principale.

1. Creare un [ruolo di servizio Greengrass](service-role.md). Questo ruolo IAM AWS IoT Greengrass autorizza l'accesso alle risorse di altri AWS servizi per tuo conto. Ciò consente di AWS IoT Greengrass eseguire attività essenziali, come il recupero delle AWS Lambda funzioni e la gestione delle ombre dei dispositivi.

   Puoi utilizzare lo stesso ruolo di servizio su Regione AWS s, ma deve essere associato al tuo Account AWS in ogni Regione AWS luogo in cui lo utilizzi. AWS IoT Greengrass

1. (Facoltativo) Creare un [ruolo del gruppo Greengrass](group-role.md). Questo ruolo IAM concede l'autorizzazione alle funzioni e ai connettori Lambda in esecuzione su un core Greengrass per chiamare i servizi. AWS Ad esempio, il [connettore Kinesis Firehose](kinesis-firehose-connector.md) richiede l'autorizzazione a scrivere record in un flusso di distribuzione di Amazon Data Firehose.

   È possibile associare un solo ruolo a un gruppo Greengrass.

1. Crea AWS IoT Core qualcosa per ogni dispositivo che si connette al tuo core Greengrass.
**Nota**  
Puoi anche usare AWS IoT Core oggetti e certificati esistenti.

1. Crea certificati, coppie di chiavi e AWS IoT policy per ogni dispositivo che si connette al tuo core Greengrass.

## AWS IoT Greengrass principi di sicurezza fondamentali
<a name="gg-principals"></a>

Il core Greengrass utilizza i seguenti principi di sicurezza: AWS IoT client, server MQTT locale e gestore dei segreti locali. La configurazione per questi principal è memorizzata nell'oggetto `crypto` nel file di configurazione `config.json`. Per ulteriori informazioni, consulta [AWS IoT Greengrass file di configurazione principale](gg-core.md#config-json).

Questa configurazione include il percorso della chiave privata utilizzata dal componente principal per l'autenticazione e la crittografia. AWS IoT Greengrass supporta due modi di storage della chiave privata: basato su hardware o basato su file system (impostazione predefinita). Per ulteriori informazioni sulla memorizzazione delle chiavi in moduli di sicurezza hardware, consulta [Integrazione della sicurezza hardware](hardware-security.md).

**AWS IoT Cliente**  
Il AWS IoT client (client IoT) gestisce la comunicazione via Internet tra il core Greengrass e. AWS IoT Core AWS IoT Greengrass utilizza certificati X.509 con chiavi pubbliche e private per l'autenticazione reciproca quando stabilisce connessioni TLS per questa comunicazione. Per ulteriori informazioni consulta [Certificati X.509 e AWS IoT Core](https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html) nella *Guida per sviluppatori AWS IoT Core *.  
Il client IoT supporta certificati e chiavi RSA ed EC. Il percorso del certificato e della chiave privata è specificato per il principal `IoTCertificate` in `config.json`.

**Server MQTT**  
Il server MQTT locale gestisce la comunicazione sulla rete locale tra il core Greengrass e i dispositivi client del gruppo. AWS IoT Greengrass utilizza certificati X.509 con chiavi pubbliche e private per l'autenticazione reciproca quando stabilisce connessioni TLS per questa comunicazione.  
Per impostazione predefinita, AWS IoT Greengrass genera automaticamente una chiave privata RSA. Per configurare il core per usare un'altra chiave privata, è necessario fornire il percorso della chiave per il principal `MQTTServerCertificate` in `config.json`. L'utente è responsabile della rotazione di una chiave fornita dal cliente.    
**Supporto per la chiave privata**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/gg-sec.html)
La configurazione della chiave privata determina processi correlati. Per l'elenco delle suite di cifratura supportate dal core Greengrass supporta come server, consulta [Supporto TLS per le suite di cifratura](#gg-cipher-suites).    
**Se nessuna chiave privata è specificata** (impostazione predefinita)  
+ AWS IoT Greengrass ruota il tasto in base alle impostazioni di rotazione.
+ Il core genera una chiave RSA che viene utilizzata per generare il certificato.
+ Il certificato del server MQTT ha una chiave pubblica RSA e una firma RSA SHA-256.  
**Se viene specificata una chiave privata RSA** (richiede GGC v1.7 o successivo)  
+ Sei responsabile della rotazione della chiave.
+ Il core utilizza la chiave specificata per generare il certificato.
+ La chiave RSA deve avere una lunghezza minima di 2048 bit.
+ Il certificato del server MQTT ha una chiave pubblica RSA e una firma RSA SHA-256.  
**Se viene specificata una chiave privata EC** (richiede GGC v1.9 o successivo)  
+ Sei responsabile della rotazione della chiave.
+ Il core utilizza la chiave specificata per generare il certificato.
+ La chiave privata EC deve utilizzare una curva NIST P-256 o NIST P-384.
+ Il certificato del server MQTT ha una chiave pubblica EC e una firma RSA SHA-256.

  Il certificato del server MQTT presentato dal core ha una firma RSA SHA-256, indipendentemente dal tipo di chiave. Per questo motivo, i client devono supportare la convalida del certificato RSA SHA-256 per stabilire una connessione sicura con il core.

**Secrets Manager**  
Il gestore dei segreti locali gestisce in modo sicuro le copie locali dei segreti creati dall'utente. Gestione dei segreti AWS Utilizza una chiave privata per proteggere la chiave dati utilizzata per crittografare i segreti. Per ulteriori informazioni, consulta [Implementa i segreti fino al nucleo AWS IoT Greengrass](secrets.md).  
Per impostazione predefinita, viene utilizzata la chiave privata del client IoT, ma è possibile specificare una chiave privata diversa per il principal `SecretsManager` in `config.json`. Solo il tipo di chiave RSA è supportato. Per ulteriori informazioni, consulta [Specificare la chiave privata per la crittografia dei segreti](secrets.md#secrets-config-private-key).  
Attualmente, AWS IoT Greengrass supporta solo il meccanismo di riempimento [PKCS \$11 v1.5](https://tools.ietf.org/html/rfc2313) per la crittografia e la decrittografia dei segreti locali quando si utilizzano chiavi private basate su hardware. Se stai seguendo le istruzioni fornite dal fornitore per generare manualmente chiavi private basate su hardware, assicurati di scegliere PKCS \$11 v1.5. AWS IoT Greengrass non supporta Optimal Asymmetric Encryption Padding (OAEP).  
**Supporto per la chiave privata**    
<a name="secrets-manager-private-key-support"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/gg-sec.html)

## Sottoscrizioni gestite nel flusso di lavoro di messaggistica MQTT
<a name="gg-msg-workflow"></a>

AWS IoT Greengrass utilizza una tabella di sottoscrizione per definire come i messaggi MQTT possono essere scambiati tra dispositivi client, funzioni e connettori in un gruppo Greengrass e con AWS IoT Core o il servizio shadow locale. Ogni sottoscrizione specifica un'origine, una destinazione e un argomento (o oggetto) MQTT su cui inviare o ricevere i messaggi. AWS IoT Greengrass consente l'invio di messaggi da un'origine a una destinazione solo se è definita una sottoscrizione corrispondente.

Una sottoscrizione definisce il flusso dei messaggi solo in una direzione, dall'origine alla destinazione. Per supportare lo scambio di messaggi bidirezionale, è necessario creare due sottoscrizioni, una per ogni direzione.

## Supporto TLS per le suite di cifratura
<a name="gg-cipher-suites"></a>

AWS IoT Greengrass utilizza il modello di sicurezza del AWS IoT Core trasporto per crittografare le comunicazioni con il cloud utilizzando suite di [crittografia](https://en.wikipedia.org/wiki/Cipher_suite) [TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security). Inoltre, AWS IoT Greengrass i dati vengono crittografati quando sono inattivi (nel cloud). Per ulteriori informazioni sulla sicurezza del AWS IoT Core trasporto e sulle suite di crittografia supportate, consulta [Transport security](https://docs.aws.amazon.com/iot/latest/developerguide/transport-security.html) nella *AWS IoT Core Developer* Guide.

**Suite di cifratura supportate per le comunicazioni sulla rete locale**

Al contrario AWS IoT Core, il AWS IoT Greengrass core supporta le seguenti suite di crittografia TLS di *rete locale* per gli algoritmi di firma dei certificati. Tutte queste suite sono supportate quando le chiavi private sono memorizzate nel file system. Un sottoinsieme è supportato quando il core è configurato per l'utilizzo di moduli di sicurezza hardware (HSM). Per ulteriori informazioni, consulta [AWS IoT Greengrass principi di sicurezza fondamentali](#gg-principals) e [Integrazione della sicurezza hardware](hardware-security.md). La tabella include anche la versione minima del software Core richiesta per il supporto. AWS IoT Greengrass 


|  | Crittografia | Supporto HSM | Versione GGC minima | 
| --- |--- |--- |--- |
| TLSv12. | TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Supportato | 1 | 
| --- |--- |--- |--- |
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | Supportato | 1 | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 | Supportato | 1 | 
| TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Non supportato | 1 | 
| TLS\$1RSA\$1CON\$1AES\$1128\$1GCM\$1 SHA256 | Non supportato | 1 | 
| TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | Non supportato | 1 | 
| TLS\$1RSA\$1CON\$1AES\$1256\$1GCM\$1 SHA384 | Non supportato | 1 | 
| TLS\$1ECDHE\$1ECDSA\$1CON\$1AES\$1128\$1GCM\$1 SHA256 | Supportato | 1.9 | 
| TLS\$1ECDHE\$1ECDSA\$1CON\$1AES\$1256\$1GCM\$1 SHA384 | Supportato | 1.9 | 
| TLSv11. | TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Supportato | 1 | 
| --- |--- |--- |--- |
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | Supportato | 1 | 
| TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Non supportato | 1 | 
| TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | Non supportato | 1 | 
| TLSv10. | TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Supportato | 1 | 
| --- |--- |--- |--- |
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | Supportato | 1 | 
| TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Non supportato | 1 | 
| TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | Non supportato | 1 | 