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à.
Tutorial: provisioning del dispositivo in AWS IoT
Questa sezione crea le risorse AWS IoT Core che il tuo tutorial utilizzerà.
Fasi per effettuare il provisioning del dispositivo in AWS IoT
Fase 1: creare una policy AWS IoT per Device Shadow
I certificati X.509 autenticano il dispositivo con AWS IoT Core. Le policy AWS IoT sono collegate al certificato che consente al dispositivo di eseguire le operazioni AWS IoT, ad esempio la sottoscrizione o la pubblicazione in argomenti riservati MQTT utilizzati dal servizio Device Shadow. Il dispositivo presenta il proprio certificato durante la connessione e l'invio di messaggi a AWS IoT Core.
In questa procedura creerai un policy che consente di eseguire le operazioni AWS IoT necessarie per eseguire il programma di esempio. Ti consigliamo di creare una policy che conceda solo le autorizzazioni richieste per eseguire l'attività. È possibile creare prima la policy AWS IoT e quindi collegarla al certificato del dispositivo che verrà creato in seguito.
Per creare una policy AWS IoT
-
Nel menu di sinistra scegli Secure (Sicurezza) e quindi Policies (Policy). Se il tuo account dispone di policy esistenti, scegli Create (Crea); in caso contrario, nella pagina You don’t have a policy yet (Non hai ancora una policy) scegli Create a policy (Crea una policy).
-
Nella pagina Create a policy (Crea una policy):
-
Nel campo Name (Nome) inserire un nome per la policy (ad esempio
My_Device_Shadow_policy
). Non utilizzare dati personali identificabili nei nomi delle policy. -
Nel documento di policy vengono descritte le operazioni di connessione, sottoscrizione, ricezione e pubblicazione che consentono al dispositivo l’autorizzazione di pubblicare e sottoscrivere gli argomenti riservati MQTT.
Copia la policy di esempio seguente e incollala nel documento di policy. Sostituisci
thingname
con il nome della cosa che creerai (ad esempio,My_light_bulb
),region
con la regione AWS IoT in cui stai utilizzando i servizi eaccount
con il tuo numero Account AWS. Per ulteriori informazioni sulle policy AWS IoT, consulta AWS IoT Core politiche.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/get", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update" ] }, { "Effect": "Allow", "Action": [ "iot:Receive" ], "Resource": [ "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/get/accepted", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/get/rejected", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update/accepted", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update/rejected", "arn:aws:iot:region:account:topic/$aws/things/thingname/shadow/update/delta" ] }, { "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/get/accepted", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/get/rejected", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/update/accepted", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/update/rejected", "arn:aws:iot:region:account:topicfilter/$aws/things/thingname/shadow/update/delta" ] }, { "Effect": "Allow", "Action": "iot:Connect", "Resource": "arn:aws:iot:region:account:client/test-*" } ] }
-
Fase 2: creare una risorsa dell’oggetto e connettere la policy all’oggetto
I dispositivi connessi a AWS IoT possono essere rappresentati da risorse di oggetti nel registro AWS IoT. Una risorsa dell’oggetto rappresenta un dispositivo specifico o un'entità logica, come la lampadina in questo tutorial.
Per scoprire come creare un oggetto in AWS IoT, segui le fasi descritte in Crea un oggetto. Ecco alcune cose fondamentali da notare mentre segui i passaggi di tale tutorial:
-
Scegli Create a single thing (Crea un oggetto singolo), e nel campo Name (Nome) inserisci un nome per l'oggetto che è uguale a quello del
thingname
(ad esempio,My_light_bulb
) che hai specificato quando hai creato la policy in precedenza.Non è possibile modificare il nome di un oggetto dopo averlo creato. Se gli hai dato un nome diverso da
thingname
, crea un nuovo oggetto con nomethingname
ed elimina il vecchio oggetto.Nota
Non utilizzare dati personali identificabili nel nome dell’oggetto. Il nome dell’oggetto può essere visualizzato nelle comunicazioni e nei report non crittografati.
-
Si consiglia di scaricare ciascuno dei file di certificato nella pagina Certificato creato! in una posizione in cui è possibile trovarli facilmente. È necessario installare questi file per eseguire l'applicazione di esempio.
Ti consigliamo di scaricare i file in una sottodirectory
certs
nella directoryhome
sul Raspberry Pi e nominare ciascuno di essi con un nome più semplice come suggerito nella tabella seguente.Nomi dei file dei certificati File
Percorso del file
Un certificato emesso da una CA root
~/certs/Amazon-root-CA-1.pem
Certificato del dispositivo
~/certs/device.pem.crt
Chiave privata
~/certs/private.pem.key
-
Dopo aver attivato il certificato per abilitare le connessioni a AWS IoT, scegli Attach a policy (Collegamento di una policy) e assicurati di collegare la policy creata in precedenza (ad esempio,
My_Device_Shadow_policy
) all’oggetto.Dopo aver creato un oggetto, puoi vedere la risorsa dell’oggetto visualizzata nell'elenco degli oggetti nella console AWS IoT.
Fase 3: Esamina i risultati e i passaggi successivi
In questo tutorial, hai appreso come:
-
Impostare e configurare il dispositivo Raspberry Pi.
-
Creare un documento di policy AWS IoT che autorizza il dispositivo a interagire con i servizi AWS IoT.
-
Creare una risorsa dell’oggetto e il certificato del dispositivo X.509 associato e collegare il documento della policy ad esso.
Fasi successive
Ora puoi installare SDK di dispositivo per Python AWS IoT, eseguire l’applicazione di esempio shadow.py
e utilizzare Device Shadows per controllare lo stato. Per ulteriori informazioni su come eseguire questo tutorial, consulta Tutorial: Installare l'SDK di dispositivo ed eseguire l’applicazione di esempio per Device Shadows.