Prerequisiti per l'esecuzione della suite di AWS IoT Greengrass qualifiche - AWS IoT Greengrass

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à.

Prerequisiti per l'esecuzione della suite di AWS IoT Greengrass qualifiche

Questa sezione descrive i prerequisiti per l'utilizzo di AWS IoT Device Tester (IDT) per. AWS IoT Greengrass

Scarica la versione più recente di for AWS IoT Device TesterAWS IoT Greengrass

Scaricate l'ultima versione di IDT ed estraete il software in una posizione (< device-tester-extract-location >) del file system in cui disponete delle autorizzazioni di lettura/scrittura.

Nota

IDT non supporta l'esecuzione da parte di più utenti da un percorso condiviso, ad esempio una directory NFS o una cartella condivisa di rete Windows. Si consiglia di estrarre il pacchetto IDT in un'unità locale ed eseguire il file binario IDT sulla workstation locale.

In Windows esiste un limite di lunghezza del percorso di 260 caratteri. Se stai usando Windows, estrai IDT in una directory root come C:\ o D:\ per mantenere i percorsi entro il limite di 260 caratteri.

Scaricate il software AWS IoT Greengrass

IDT for AWS IoT Greengrass V2 verifica la compatibilità del dispositivo con una versione specifica di. AWS IoT Greengrass Esegui il seguente comando per scaricare il software AWS IoT Greengrass Core in un file denominato. aws.greengrass.nucleus.zip Sostituisci la versione con una versione del componente nucleus supportata per la tua versione IDT.

Linux or Unix
curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip > aws.greengrass.nucleus.zip
Windows Command Prompt (CMD)
curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip > aws.greengrass.nucleus.zip
PowerShell
iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip -OutFile aws.greengrass.nucleus.zip

Inserite il aws.greengrass.nucleus.zip file scaricato nella cartella<device-tester-extract-location>/products/.

Nota

Non posizionare più file in questa directory per lo stesso sistema operativo e architettura.

Crea e configura un Account AWS

Prima di utilizzarlo AWS IoT Device Tester per la AWS IoT Greengrass versione 2, è necessario eseguire le seguenti operazioni:

  1. Configurare un Account AWS. Se ne hai già uno Account AWS, vai al passaggio 2.

  2. Configura le autorizzazioni per IDT.

Queste autorizzazioni dell'account consentono a IDT di accedere ai AWS servizi e creare AWS risorse, come AWS IoT oggetti e AWS IoT Greengrass componenti, per tuo conto.

Per creare queste risorse, IDT for AWS IoT Greengrass V2 utilizza AWS le credenziali configurate nel config.json file per effettuare chiamate API per conto dell'utente. Il provisioning di queste risorse viene effettuato varie volte nel corso di un test.

Nota

Sebbene la maggior parte dei test sia idonea per il piano AWS gratuito, è necessario fornire una carta di credito quando ci si iscrive a un. Account AWS Per ulteriori informazioni, consulta Perché ho bisogno di un metodo di pagamento se il mio account è coperto dal livello gratuito?

Passo 1: Configurare un Account AWS

In questo passaggio, crea e configura un Account AWS. Se disponi già di un Account AWS, passa a Fase 2: configurazione delle autorizzazioni per IDT.

Se non ne hai uno Account AWS, completa i seguenti passaggi per crearne uno.

Per iscriverti a un Account AWS
  1. Apri la pagina all'indirizzo https://portal.aws.amazon.com/billing/signup.

  2. Segui le istruzioni online.

    Nel corso della procedura di registrazione riceverai una telefonata, durante la quale sarà necessario inserire un codice di verifica attraverso la tastiera del telefono.

    Quando ti iscrivi a un Account AWS, Utente root dell'account AWSviene creato un. L'utente root dispone dell'accesso a tutte le risorse e tutti i Servizi AWS nell'account. Come procedura consigliata in materia di sicurezza, assegnate l'accesso amministrativo a un utente e utilizzate solo l'utente root per eseguire attività che richiedono l'accesso da parte dell'utente root.

Per creare un utente amministratore, scegli una delle seguenti opzioni.

Scelta di un modo per gestire il tuo amministratore Per Come Puoi anche
In IAM Identity Center

(Consigliato)

Usa credenziali a breve termine per accedere a AWS.

Ciò è in linea con le best practice per la sicurezza. Per informazioni sulle best practice, consulta Best practice per la sicurezza in IAM nella Guida per l'utente di IAM.

Segui le istruzioni riportate in Nozioni di base nella Guida per l'utente di AWS IAM Identity Center . Configura l'accesso programmatico configurando l'uso AWS IAM Identity Center nella AWS CLI Guida per l'utente.AWS Command Line Interface
In IAM

(Non consigliato)

Usa credenziali a lungo termine per accedere a AWS. Segui le istruzioni in Creazione del primo utente e gruppo di utenti IAM di amministrazione nella Guida per l'utente di IAM. Configura l'accesso programmatico seguendo quanto riportato in Gestione delle chiavi di accesso per gli utenti IAM nella Guida per l'utente di IAM.

Fase 2: configurazione delle autorizzazioni per IDT

In questo passaggio, configura le autorizzazioni utilizzate da IDT for AWS IoT Greengrass V2 per eseguire test e raccogliere dati sull'utilizzo di IDT. Puoi utilizzare AWS Management Consoleor AWS Command Line Interface (AWS CLI) per creare una policy IAM e un utente di test per IDT, quindi allegare le policy all'utente. Se hai già creato un utente di prova per IDT, vai a. Configura il tuo dispositivo per eseguire test IDT

  1. Accedere alla console IAM.

  2. Creare un criterio gestito dal cliente che concede le autorizzazioni per creare ruoli con autorizzazioni specifiche.

    1. Nel riquadro di navigazione, seleziona Policy e quindi Crea policy.

    2. Se non lo utilizzi PreInstalled, nella scheda JSON, sostituisci il contenuto segnaposto con la seguente politica. Se lo stai utilizzando PreInstalled, procedi al passaggio successivo.

      { "Version":"2012-10-17", "Statement":[ { "Sid":"passRoleForResources", "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::*:role/idt-*", "Condition":{ "StringEquals":{ "iam:PassedToService":[ "iot.amazonaws.com", "lambda.amazonaws.com", "greengrass.amazonaws.com" ] } } }, { "Sid":"lambdaResources", "Effect":"Allow", "Action":[ "lambda:CreateFunction", "lambda:PublishVersion", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource":[ "arn:aws:lambda:*:*:function:idt-*" ] }, { "Sid":"iotResources", "Effect":"Allow", "Action":[ "iot:CreateThing", "iot:DeleteThing", "iot:DescribeThing", "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:AddThingToThingGroup", "iot:RemoveThingFromThingGroup", "iot:AttachThingPrincipal", "iot:DetachThingPrincipal", "iot:UpdateCertificate", "iot:DeleteCertificate", "iot:CreatePolicy", "iot:AttachPolicy", "iot:DetachPolicy", "iot:DeletePolicy", "iot:GetPolicy", "iot:Publish", "iot:TagResource", "iot:ListThingPrincipals", "iot:ListAttachedPolicies", "iot:ListTargetsForPolicy", "iot:ListThingGroupsForThing", "iot:ListThingsInThingGroup", "iot:CreateJob", "iot:DescribeJob", "iot:DescribeJobExecution", "iot:CancelJob" ], "Resource":[ "arn:aws:iot:*:*:thing/idt-*", "arn:aws:iot:*:*:thinggroup/idt-*", "arn:aws:iot:*:*:policy/idt-*", "arn:aws:iot:*:*:cert/*", "arn:aws:iot:*:*:topic/idt-*", "arn:aws:iot:*:*:job/*" ] }, { "Sid":"s3Resources", "Effect":"Allow", "Action":[ "s3:GetObject", "s3:PutObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:CreateBucket", "s3:ListBucket", "s3:ListBucketVersions", "s3:DeleteBucket", "s3:PutObjectTagging", "s3:PutBucketTagging" ], "Resource":"arn:aws:s3::*:idt-*" }, { "Sid":"roleAliasResources", "Effect":"Allow", "Action":[ "iot:CreateRoleAlias", "iot:DescribeRoleAlias", "iot:DeleteRoleAlias", "iot:TagResource", "iam:GetRole" ], "Resource":[ "arn:aws:iot:*:*:rolealias/idt-*", "arn:aws:iam::*:role/idt-*" ] }, { "Sid":"idtExecuteAndCollectMetrics", "Effect":"Allow", "Action":[ "iot-device-tester:SendMetrics", "iot-device-tester:SupportedVersion", "iot-device-tester:LatestIdt", "iot-device-tester:CheckVersion", "iot-device-tester:DownloadTestSuite" ], "Resource":"*" }, { "Sid":"genericResources", "Effect":"Allow", "Action":[ "greengrass:*", "iot:GetThingShadow", "iot:UpdateThingShadow", "iot:ListThings", "iot:DescribeEndpoint", "iot:CreateKeysAndCertificate" ], "Resource":"*" }, { "Sid":"iamResourcesUpdate", "Effect":"Allow", "Action":[ "iam:CreateRole", "iam:DeleteRole", "iam:CreatePolicy", "iam:DeletePolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:TagRole", "iam:TagPolicy", "iam:GetPolicy", "iam:ListAttachedRolePolicies", "iam:ListEntitiesForPolicy" ], "Resource":[ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:policy/idt-*" ] } ] }
    3. Se lo stai utilizzando PreInstalled, nella scheda JSON, sostituisci il contenuto segnaposto con la seguente politica. Assicurati di:

      • Sostituite ThingName e ThingGroup nell'iotResourcesistruzione con il nome e il gruppo di oggetti che sono stati creati durante l'installazione di Greengrass sul dispositivo in fase di test (DUT) per aggiungere le autorizzazioni.

      • Sostituisci PassRole e RoleAlias nell'istruzione e nell'istruzione con roleAliasResources i ruoli creati durante passRoleForResources l'installazione di Greengrass sul tuo DUT.

      { "Version":"2012-10-17", "Statement":[ { "Sid":"passRoleForResources", "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::*:role/passRole", "Condition":{ "StringEquals":{ "iam:PassedToService":[ "iot.amazonaws.com", "lambda.amazonaws.com", "greengrass.amazonaws.com" ] } } }, { "Sid":"lambdaResources", "Effect":"Allow", "Action":[ "lambda:CreateFunction", "lambda:PublishVersion", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource":[ "arn:aws:lambda:*:*:function:idt-*" ] }, { "Sid":"iotResources", "Effect":"Allow", "Action":[ "iot:CreateThing", "iot:DeleteThing", "iot:DescribeThing", "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:AddThingToThingGroup", "iot:RemoveThingFromThingGroup", "iot:AttachThingPrincipal", "iot:DetachThingPrincipal", "iot:UpdateCertificate", "iot:DeleteCertificate", "iot:CreatePolicy", "iot:AttachPolicy", "iot:DetachPolicy", "iot:DeletePolicy", "iot:GetPolicy", "iot:Publish", "iot:TagResource", "iot:ListThingPrincipals", "iot:ListAttachedPolicies", "iot:ListTargetsForPolicy", "iot:ListThingGroupsForThing", "iot:ListThingsInThingGroup", "iot:CreateJob", "iot:DescribeJob", "iot:DescribeJobExecution", "iot:CancelJob" ], "Resource":[ "arn:aws:iot:*:*:thing/thingName", "arn:aws:iot:*:*:thinggroup/thingGroup", "arn:aws:iot:*:*:policy/idt-*", "arn:aws:iot:*:*:cert/*", "arn:aws:iot:*:*:topic/idt-*", "arn:aws:iot:*:*:job/*" ] }, { "Sid":"s3Resources", "Effect":"Allow", "Action":[ "s3:GetObject", "s3:PutObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:CreateBucket", "s3:ListBucket", "s3:ListBucketVersions", "s3:DeleteBucket", "s3:PutObjectTagging", "s3:PutBucketTagging" ], "Resource":"arn:aws:s3::*:idt-*" }, { "Sid":"roleAliasResources", "Effect":"Allow", "Action":[ "iot:CreateRoleAlias", "iot:DescribeRoleAlias", "iot:DeleteRoleAlias", "iot:TagResource", "iam:GetRole" ], "Resource":[ "arn:aws:iot:*:*:rolealias/roleAlias", "arn:aws:iam::*:role/idt-*" ] }, { "Sid":"idtExecuteAndCollectMetrics", "Effect":"Allow", "Action":[ "iot-device-tester:SendMetrics", "iot-device-tester:SupportedVersion", "iot-device-tester:LatestIdt", "iot-device-tester:CheckVersion", "iot-device-tester:DownloadTestSuite" ], "Resource":"*" }, { "Sid":"genericResources", "Effect":"Allow", "Action":[ "greengrass:*", "iot:GetThingShadow", "iot:UpdateThingShadow", "iot:ListThings", "iot:DescribeEndpoint", "iot:CreateKeysAndCertificate" ], "Resource":"*" }, { "Sid":"iamResourcesUpdate", "Effect":"Allow", "Action":[ "iam:CreateRole", "iam:DeleteRole", "iam:CreatePolicy", "iam:DeletePolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:TagRole", "iam:TagPolicy", "iam:GetPolicy", "iam:ListAttachedRolePolicies", "iam:ListEntitiesForPolicy" ], "Resource":[ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:policy/idt-*" ] } ] }
    4. Scegli Verifica policy.

    5. Per Nome, immetti IDTGreengrassIAMPermissions. In Riepilogo, esaminare le autorizzazioni concesse dai criteri.

    6. Scegli Crea policy.

  3. Crea un utente IAM e assegna le autorizzazioni richieste da IDT per. AWS IoT Greengrass

    1. Crea un utente IAM. Segui i passaggi da 1 a 5 in Creazione di utenti IAM (console) nella Guida per l'utente IAM.

    2. Allega le autorizzazioni al tuo utente IAM:

      1. Nella pagina Imposta autorizzazioni, seleziona Collega direttamente policy esistenti.

      2. Cercare il criterio IDTGreenGrassiamPermissions creato nel passaggio precedente. Selezionare la casella di controllo.

    3. Scegli Successivo: Tag.

    4. Scegliere Next:Review per visualizzare un riepilogo delle tue scelte.

    5. Selezionare Create user (Crea utente).

    6. Per visualizzare le chiavi di accesso dell'utente (ID chiave di accesso e chiavi di accesso segrete), scegliere Mostra accanto alla password e alla chiave di accesso. Per salvare le chiavi di accesso, scegliere Scarica .csv e salvare il file in una posizione sicura. Utilizzerai queste informazioni in seguito per configurare il file AWS delle credenziali.

  4. Passaggio successivo: configurare il dispositivo fisico.

  1. Sul tuo computer, installa e configura il AWS CLI se non è già installato. Segui la procedura descritta in Installazione di AWS CLI nella Guida AWS Command Line Interface per l'utente.

    Nota

    AWS CLI È uno strumento open source che puoi utilizzare per interagire con AWS i servizi dalla tua shell a riga di comando.

  2. Creare una policy gestita dal cliente che conceda le autorizzazioni per gestire ruoli IDT e AWS IoT Greengrass .

    1. Se non lo utilizzi PreInstalled, apri un editor di testo e salva il seguente contenuto delle policy in un file JSON. Se lo stai utilizzando PreInstalled, procedi al passaggio seguente.

      { "Version":"2012-10-17", "Statement":[ { "Sid":"passRoleForResources", "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::*:role/idt-*", "Condition":{ "StringEquals":{ "iam:PassedToService":[ "iot.amazonaws.com", "lambda.amazonaws.com", "greengrass.amazonaws.com" ] } } }, { "Sid":"lambdaResources", "Effect":"Allow", "Action":[ "lambda:CreateFunction", "lambda:PublishVersion", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource":[ "arn:aws:lambda:*:*:function:idt-*" ] }, { "Sid":"iotResources", "Effect":"Allow", "Action":[ "iot:CreateThing", "iot:DeleteThing", "iot:DescribeThing", "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:AddThingToThingGroup", "iot:RemoveThingFromThingGroup", "iot:AttachThingPrincipal", "iot:DetachThingPrincipal", "iot:UpdateCertificate", "iot:DeleteCertificate", "iot:CreatePolicy", "iot:AttachPolicy", "iot:DetachPolicy", "iot:DeletePolicy", "iot:GetPolicy", "iot:Publish", "iot:TagResource", "iot:ListThingPrincipals", "iot:ListAttachedPolicies", "iot:ListTargetsForPolicy", "iot:ListThingGroupsForThing", "iot:ListThingsInThingGroup", "iot:CreateJob", "iot:DescribeJob", "iot:DescribeJobExecution", "iot:CancelJob" ], "Resource":[ "arn:aws:iot:*:*:thing/idt-*", "arn:aws:iot:*:*:thinggroup/idt-*", "arn:aws:iot:*:*:policy/idt-*", "arn:aws:iot:*:*:cert/*", "arn:aws:iot:*:*:topic/idt-*", "arn:aws:iot:*:*:job/*" ] }, { "Sid":"s3Resources", "Effect":"Allow", "Action":[ "s3:GetObject", "s3:PutObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:CreateBucket", "s3:ListBucket", "s3:ListBucketVersions", "s3:DeleteBucket", "s3:PutObjectTagging", "s3:PutBucketTagging" ], "Resource":"arn:aws:s3::*:idt-*" }, { "Sid":"roleAliasResources", "Effect":"Allow", "Action":[ "iot:CreateRoleAlias", "iot:DescribeRoleAlias", "iot:DeleteRoleAlias", "iot:TagResource", "iam:GetRole" ], "Resource":[ "arn:aws:iot:*:*:rolealias/idt-*", "arn:aws:iam::*:role/idt-*" ] }, { "Sid":"idtExecuteAndCollectMetrics", "Effect":"Allow", "Action":[ "iot-device-tester:SendMetrics", "iot-device-tester:SupportedVersion", "iot-device-tester:LatestIdt", "iot-device-tester:CheckVersion", "iot-device-tester:DownloadTestSuite" ], "Resource":"*" }, { "Sid":"genericResources", "Effect":"Allow", "Action":[ "greengrass:*", "iot:GetThingShadow", "iot:UpdateThingShadow", "iot:ListThings", "iot:DescribeEndpoint", "iot:CreateKeysAndCertificate" ], "Resource":"*" }, { "Sid":"iamResourcesUpdate", "Effect":"Allow", "Action":[ "iam:CreateRole", "iam:DeleteRole", "iam:CreatePolicy", "iam:DeletePolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:TagRole", "iam:TagPolicy", "iam:GetPolicy", "iam:ListAttachedRolePolicies", "iam:ListEntitiesForPolicy" ], "Resource":[ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:policy/idt-*" ] } ] }
    2. Se lo stai utilizzando PreInstalled, apri un editor di testo e salva il seguente contenuto delle policy in un file JSON. Assicurati di:

      • Sostituite ThingName e ThingGroup nell'iotResourcesistruzione creata durante l'installazione di Greengrass sul dispositivo in fase di test (DUT) per aggiungere le autorizzazioni.

      • Sostituisci PassRole e RoleAlias nell'istruzione e nell'istruzione con roleAliasResources i ruoli creati durante passRoleForResources l'installazione di Greengrass sul tuo DUT.

      { "Version":"2012-10-17", "Statement":[ { "Sid":"passRoleForResources", "Effect":"Allow", "Action":"iam:PassRole", "Resource":"arn:aws:iam::*:role/passRole", "Condition":{ "StringEquals":{ "iam:PassedToService":[ "iot.amazonaws.com", "lambda.amazonaws.com", "greengrass.amazonaws.com" ] } } }, { "Sid":"lambdaResources", "Effect":"Allow", "Action":[ "lambda:CreateFunction", "lambda:PublishVersion", "lambda:DeleteFunction", "lambda:GetFunction" ], "Resource":[ "arn:aws:lambda:*:*:function:idt-*" ] }, { "Sid":"iotResources", "Effect":"Allow", "Action":[ "iot:CreateThing", "iot:DeleteThing", "iot:DescribeThing", "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:AddThingToThingGroup", "iot:RemoveThingFromThingGroup", "iot:AttachThingPrincipal", "iot:DetachThingPrincipal", "iot:UpdateCertificate", "iot:DeleteCertificate", "iot:CreatePolicy", "iot:AttachPolicy", "iot:DetachPolicy", "iot:DeletePolicy", "iot:GetPolicy", "iot:Publish", "iot:TagResource", "iot:ListThingPrincipals", "iot:ListAttachedPolicies", "iot:ListTargetsForPolicy", "iot:ListThingGroupsForThing", "iot:ListThingsInThingGroup", "iot:CreateJob", "iot:DescribeJob", "iot:DescribeJobExecution", "iot:CancelJob" ], "Resource":[ "arn:aws:iot:*:*:thing/thingName", "arn:aws:iot:*:*:thinggroup/thingGroup", "arn:aws:iot:*:*:policy/idt-*", "arn:aws:iot:*:*:cert/*", "arn:aws:iot:*:*:topic/idt-*", "arn:aws:iot:*:*:job/*" ] }, { "Sid":"s3Resources", "Effect":"Allow", "Action":[ "s3:GetObject", "s3:PutObject", "s3:DeleteObjectVersion", "s3:DeleteObject", "s3:CreateBucket", "s3:ListBucket", "s3:ListBucketVersions", "s3:DeleteBucket", "s3:PutObjectTagging", "s3:PutBucketTagging" ], "Resource":"arn:aws:s3::*:idt-*" }, { "Sid":"roleAliasResources", "Effect":"Allow", "Action":[ "iot:CreateRoleAlias", "iot:DescribeRoleAlias", "iot:DeleteRoleAlias", "iot:TagResource", "iam:GetRole" ], "Resource":[ "arn:aws:iot:*:*:rolealias/roleAlias", "arn:aws:iam::*:role/idt-*" ] }, { "Sid":"idtExecuteAndCollectMetrics", "Effect":"Allow", "Action":[ "iot-device-tester:SendMetrics", "iot-device-tester:SupportedVersion", "iot-device-tester:LatestIdt", "iot-device-tester:CheckVersion", "iot-device-tester:DownloadTestSuite" ], "Resource":"*" }, { "Sid":"genericResources", "Effect":"Allow", "Action":[ "greengrass:*", "iot:GetThingShadow", "iot:UpdateThingShadow", "iot:ListThings", "iot:DescribeEndpoint", "iot:CreateKeysAndCertificate" ], "Resource":"*" }, { "Sid":"iamResourcesUpdate", "Effect":"Allow", "Action":[ "iam:CreateRole", "iam:DeleteRole", "iam:CreatePolicy", "iam:DeletePolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:TagRole", "iam:TagPolicy", "iam:GetPolicy", "iam:ListAttachedRolePolicies", "iam:ListEntitiesForPolicy" ], "Resource":[ "arn:aws:iam::*:role/idt-*", "arn:aws:iam::*:policy/idt-*" ] } ] }
    3. Esegui il comando seguente per creare una policy gestita dal cliente denominataIDTGreengrassIAMPermissions. Sostituisci policy.json con il percorso completo del file JSON creato nel passaggio precedente.

      aws iam create-policy --policy-name IDTGreengrassIAMPermissions --policy-document file://policy.json
  3. Crea un utente IAM e allega le autorizzazioni richieste da IDT for. AWS IoT Greengrass

    1. Crea un utente IAM. In questa configurazione di esempio, l'utente viene chiamato IDTGreengrassUser.

      aws iam create-user --user-name IDTGreengrassUser
    2. Allega la IDTGreengrassIAMPermissions policy che hai creato nel passaggio 2 al tuo utente IAM. <account-id>Sostituiscilo nel comando con l'ID del tuo Account AWS.

      aws iam attach-user-policy --user-name IDTGreengrassUser --policy-arn arn:aws:iam::<account-id>:policy/IDTGreengrassIAMPermissions
  4. Creare una chiave di accesso segreta per l'utente.

    aws iam create-access-key --user-name IDTGreengrassUser

    Memorizzare l'output in una posizione sicura. Queste informazioni verranno utilizzate successivamente per configurare il file AWS delle credenziali.

  5. Passaggio successivo: configurare il dispositivo fisico.

AWS IoT Device Tester autorizzazioni

Le seguenti politiche descrivono le AWS IoT Device Tester autorizzazioni.

AWS IoT Device Tester richiede queste autorizzazioni per il controllo della versione e le funzionalità di aggiornamento automatico.

  • iot-device-tester:SupportedVersion

    Concede AWS IoT Device Tester l'autorizzazione a recuperare l'elenco dei prodotti supportati, delle suite di test e delle versioni IDT.

  • iot-device-tester:LatestIdt

    Concede AWS IoT Device Tester l'autorizzazione a recuperare l'ultima versione IDT disponibile per il download.

  • iot-device-tester:CheckVersion

    Concede AWS IoT Device Tester l'autorizzazione a verificare la compatibilità delle versioni per IDT, suite di test e prodotti.

  • iot-device-tester:DownloadTestSuite

    Concede AWS IoT Device Tester l'autorizzazione a scaricare gli aggiornamenti delle suite di test.

AWS IoT Device Tester utilizza anche la seguente autorizzazione per la segnalazione facoltativa delle metriche:

  • iot-device-tester:SendMetrics

    Concede l'autorizzazione AWS a raccogliere metriche sull' AWS IoT Device Tester uso interno. Se questa autorizzazione viene omessa, queste metriche non verranno raccolte.