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à.
Configurazione dell'hub onboarding
Completa questi passaggi di configurazione per ogni dispositivo hub prima di iniziare il processo di onboarding per il provisioning della flotta. Questa sezione descrive come creare oggetti gestiti, impostare strutture di directory e configurare i certificati richiesti.
Passaggi di impostazione
Fase 1: Registrare un endpoint personalizzato
Crea un endpoint di comunicazione dedicato che i tuoi dispositivi utilizzino per lo scambio di dati con integrazioni gestite. Questo endpoint stabilisce un punto di connessione sicuro per tutti i device-to-cloud messaggi, inclusi i comandi del dispositivo, gli aggiornamenti di stato e le notifiche.
Per registrare un endpoint
-
Utilizza l'RegisterCustomEndpointAPI per creare un endpoint per la comunicazione delle device-to-managed integrazioni.
RegisterCustomEndpointEsempio di richiesta
aws iot-managed-integrations register-custom-endpoint
Risposta:
{ [
ACCOUNT-PREFIX
]-ats.iot.AWS-REGION
.amazonaws.com }Nota
Memorizza l'indirizzo dell'endpoint. Ti servirà per le future comunicazioni tra dispositivi.
Per restituire le informazioni sull'endpoint, utilizza l'
GetCustomEndpoint
API.Per ulteriori informazioni, consulta l'RegisterCustomEndpointAPI e l'API nella Guida di riferimento dell'GetCustomEndpointAPI per le integrazioni gestite.
Fase 2: Creare un profilo di provisioning
Un profilo di provisioning contiene le credenziali di sicurezza e le impostazioni di configurazione necessarie ai dispositivi per connettersi alle integrazioni gestite.
Per creare un profilo di approvvigionamento della flotta
-
Chiama l'CreateProvisioningProfileAPI per generare quanto segue:
-
Un modello di provisioning che definisce le impostazioni di connessione del dispositivo
-
Un certificato di richiesta e una chiave privata per l'autenticazione del dispositivo
Importante
Archivia il certificato di richiesta, la chiave privata e l'ID del modello in modo sicuro. Avrai bisogno di queste credenziali per integrare i dispositivi nelle integrazioni gestite. Se perdi queste credenziali, devi creare un nuovo profilo di provisioning.
-
CreateProvisioningProfile
richiesta di esempio
aws iot-managed-integrations create-provisioning-profile \ --provisioning-type FLEET_PROVISIONING \ --name PROFILE_NAME
Risposta:
{ "Arn":"arn:aws:iotmanagedintegrations:
AWS-REGION
:ACCOUNT-ID
:provisioning-profile/PROFILE-ID
", "ClaimCertificate": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7.....w3rrszlaEXAMPLE= -----END CERTIFICATE-----", "ClaimCertificatePrivateKey": "-----BEGIN RSA PRIVATE KEY----- MIICiTCCAfICCQ...3rrszlaEXAMPLE= -----END RSA PRIVATE KEY-----", "Id": "PROFILE-ID
", "PROFILE-NAME
", "ProvisioningType": "FLEET_PROVISIONING" }
Fase 3: Creare un oggetto gestito (approvvigionamento della flotta)
Utilizza l'CreateManagedThing
API per creare un oggetto gestito per il tuo dispositivo hub. Ogni hub richiede una propria funzionalità gestita con materiali di autenticazione unici. Per ulteriori informazioni, consulta l'CreateManagedThingAPI nella Guida alle API di riferimento per le integrazioni gestite.
Quando crei un oggetto gestito, specifica questi parametri:
-
Role
: Imposta questo valore suCONTROLLER
. -
AuthenticationMaterial
: include i seguenti campi.-
SN
: il numero di serie univoco di questo dispositivo -
UPC
: Il codice prodotto universale per questo dispositivo
-
-
Owner
: L'identificatore del proprietario di questo oggetto gestito.
Importante
Ogni dispositivo deve avere un numero di serie (SN) univoco nel materiale di autenticazione.
CreateManagedThing
Esempio di richiesta:
{ "Role": "
CONTROLLER
", "Owner": "ThingOwner1
", "AuthenticationMaterialType": "WIFI_SETUP_QR_BAR_CODE
", "AuthenticationMaterial": "SN:123456789524
;UPC:829576019524
" }
Per ulteriori informazioni, consulta il riferimento CreateManagedThingall'API di riferimento per le integrazioni gestite.
(Facoltativo) Ottieni una cosa gestita
La ProvisioningStatus
cosa che hai gestito deve essere UNCLAIMED
prima di poter procedere. Utilizza l'GetManagedThing
API per verificare che l'oggetto gestito esista e sia pronto per il provisioning. Per ulteriori informazioni, consulta il riferimento GetManagedThingall'API di riferimento per le integrazioni gestite.
Passaggio 4: Creare la struttura delle cartelle
Crea le directory per i tuoi file di configurazione e i tuoi certificati. Per impostazione predefinita, il processo di onboarding dell'hub utilizza il. /data/aws/iotmi/config/iotmi_config.json
È possibile specificare percorsi personalizzati per certificati e chiavi private nel file di configurazione. Questa guida utilizza il percorso predefinito/data/aws/iotmi/certs
.
mkdir -p /data/aws/iotmi/config mkdir -p /data/aws/iotmi/certs /data/ aws/ iotmi/ config/ certs/
Fase 5: Aggiungere materiale di autenticazione al dispositivo hub
Copia i certificati e le chiavi sul tuo dispositivo hub, quindi crea un file di configurazione specifico del dispositivo. Questi file stabiliscono una comunicazione sicura tra l'hub e le integrazioni gestite durante il processo di provisioning.
Per copiare il certificato e la chiave della richiesta
-
Copia questi file di autenticazione dalla risposta
CreateProvisioningProfile
API al tuo dispositivo hub:-
claim_cert.pem
: Il certificato di richiesta (comune a tutti i dispositivi) -
claim_pk.key
: La chiave privata per il certificato di richiesta
Posiziona entrambi i file nella
/data/aws/iotmi/certs
directory.Importante
Quando memorizzi certificati e chiavi private in formato PEM, assicurati che la formattazione sia corretta gestendo correttamente i caratteri di nuova riga. Per i file con codifica PEM, i caratteri di nuova riga
(\n)
devono essere sostituiti con veri e propri separatori di riga, poiché la semplice memorizzazione delle nuove righe in escape non verrà recuperata correttamente in seguito.Nota
Se utilizzi l'archiviazione sicura, archivia queste credenziali nella tua posizione di archiviazione sicura anziché nel file system. Per ulteriori informazioni, consulta Crea un gestore di certificati personalizzato per l'archiviazione sicura.
-
Passaggio 6: Creare il file di configurazione del dispositivo
Crea un file di configurazione che contenga identificatori univoci del dispositivo, posizioni dei certificati e impostazioni di provisioning. L'SDK utilizza questo file durante l'onboarding dell'hub per autenticare il dispositivo, gestire lo stato del provisioning e memorizzare le impostazioni di connessione.
Nota
Ogni dispositivo hub richiede il proprio file di configurazione con valori unici specifici del dispositivo.
Utilizzare la procedura seguente per creare o modificare il file di configurazione e copiarlo nell'hub.
-
Creare o modificare il file di configurazione (fleet provisioning).
Configura questi campi obbligatori nel file di configurazione del dispositivo:
-
Percorsi dei certificati
-
iot_claim_cert_path
: Ubicazione del certificato di reclamo (claim_cert.pem
) -
iot_claim_pk_path
: Ubicazione della chiave privata (claim_pk.key
) -
Utilizzalo
SECURE_STORAGE
per entrambi i campi durante l'implementazione del Secure Storage Cert Handler
-
-
Impostazioni di connessione
-
fp_template_name
: IlProvisioningProfile
nome usato in precedenza. -
endpoint_url
: l'URL dell'endpoint delle integrazioni gestite ricavato dalla risposta dell'RegisterCustomEndpoint
API (uguale per tutti i dispositivi in una regione).
-
-
Identificatori di dispositivo
-
SN
: numero di serie del dispositivo che corrisponde alla chiamataCreateManagedThing
API (unico per dispositivo) -
UPC
Codice prodotto universale ottenuto dalla chiamataCreateManagedThing
API (uguale per tutti i dispositivi di questo prodotto)
-
{ "ro": { "iot_provisioning_method": "FLEET_PROVISIONING", "iot_claim_cert_path": "
<SPECIFY_THIS_FIELD>
", "iot_claim_pk_path": "<SPECIFY_THIS_FIELD>
", "fp_template_name": "<SPECIFY_THIS_FIELD>
", "endpoint_url": "<SPECIFY_THIS_FIELD>
", "SN": "<SPECIFY_THIS_FIELD>
", "UPC": "<SPECIFY_THIS_FIELD>
" }, "rw": { "iot_provisioning_state": "NOT_PROVISIONED" } } -
Contenuto del file di configurazione
Esamina il contenuto del iotmi_config.json
file.
Chiave | Valori | Aggiunto dal cliente? | Note |
---|---|---|---|
iot_provisioning_method |
FLEET_PROVISIONING |
Sì | Specificate il metodo di provisioning che desiderate utilizzare. |
iot_claim_cert_path |
Il percorso del file specificato oSECURE_STORAGE . Ad esempio, /data/aws/iotmi/certs/claim_cert.pem |
Sì | Specificate il percorso del file che desiderate utilizzare oSECURE_STORAGE . |
iot_claim_pk_path |
Il percorso del file specificato oSECURE_STORAGE . Ad esempio, /data/aws/iotmi/certs/claim_pk.pem |
Sì | Specificate il percorso del file che desiderate utilizzare oSECURE_STORAGE . |
fp_template_name |
Il nome del modello di fleet provisioning deve essere uguale al nome del ProvisioningProfile modello utilizzato in precedenza. |
Sì | Uguale al nome usato ProvisioningProfile in precedenza |
endpoint_url |
L'URL dell'endpoint per le integrazioni gestite. | Sì | I tuoi dispositivi utilizzano questo URL per connettersi al cloud delle integrazioni gestite. Per ottenere queste informazioni, utilizza l'RegisterCustomEndpointAPI. |
SN |
Il numero di serie del dispositivo. Ad esempio, AIDACKCEVSQ6C2EXAMPLE . |
Sì | È necessario fornire queste informazioni univoche per ogni dispositivo. |
UPC |
Codice prodotto universale del dispositivo. Ad esempio, 841667145075 . |
Sì | È necessario fornire queste informazioni per il dispositivo. |
managed_thing_id |
L'ID dell'oggetto gestito. | No | Queste informazioni vengono aggiunte successivamente durante il processo di onboarding dopo il provisioning dell'hub. |
iot_provisioning_state |
Lo stato di approvvigionamento. | Sì | Lo stato di approvvigionamento deve essere impostato come. NOT_PROVISIONED |
iot_permanent_cert_path |
Il percorso del certificato IoT. Ad esempio, /data/aws/iotmi/iot_cert.pem . |
No | Queste informazioni vengono aggiunte successivamente durante il processo di onboarding dopo il provisioning dell'hub. |
iot_permanent_pk_path |
Il percorso del file della chiave privata IoT. Ad esempio, /data/aws/iotmi/iot_pk.pem . |
No | Queste informazioni vengono aggiunte successivamente durante il processo di onboarding dopo il provisioning dell'hub. |
client_id |
L'ID client che verrà utilizzato per le connessioni MQTT. | No | Queste informazioni vengono aggiunte successivamente durante il processo di onboarding dopo il provisioning dell'hub, per essere utilizzate da altri componenti. |
event_manager_upper_bound |
Il valore predefinito è 500 | No | Queste informazioni vengono aggiunte successivamente durante il processo di onboarding dopo il provisioning dell'hub, per consentire l'utilizzo di altri componenti. |
Passaggio 7: Copiare il file di configurazione nell'hub
Copia il file di configurazione /data/aws/iotmi/config
o il percorso di directory personalizzato. Fornirai questo percorso al HubOnboarding
file binario durante il processo di onboarding.
Per l'approvvigionamento della flotta
/data/ aws/ iotmi/ config/ iotmi_config.json certs/ claim_cert.pem claim_pk.key