Conditions préalables à l'exécution de la suite de AWS IoT Greengrass qualifications - AWS IoT Greengrass

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Conditions préalables à l'exécution de la suite de AWS IoT Greengrass qualifications

Cette section décrit les conditions préalables à l'utilisation de AWS IoT Device Tester (IDT) pour AWS IoT Greengrass.

Téléchargez la dernière version de AWS IoT Device Tester for AWS IoT Greengrass

Téléchargez la dernière version du logiciel IDT et extrayez-le dans un emplacement (<device-tester-extract-location>) sur votre système de fichiers sur lequel vous disposez d'autorisations de lecture/écriture.

Note

IDTne prend pas en charge l'exécution par plusieurs utilisateurs à partir d'un emplacement partagé, tel qu'un NFS répertoire ou un dossier partagé sur le réseau Windows. Nous vous recommandons d'extraire le IDT package sur un lecteur local et d'exécuter le IDT fichier binaire sur votre poste de travail local.

Pour Windows, la limitation de la longueur du chemin est de 260 caractères. Si vous utilisez Windows, extrayez IDT vers un répertoire racine tel que C:\ ou D:\ pour que vos chemins ne dépassent pas la limite de 260 caractères.

Téléchargez le AWS IoT Greengrass logiciel

IDTfor AWS IoT Greengrass V2 teste la compatibilité de votre appareil avec une version spécifique de AWS IoT Greengrass. Exécutez la commande suivante pour télécharger le logiciel AWS IoT Greengrass Core dans un fichier nomméaws.greengrass.nucleus.zip. Remplacez version avec une version de composant Nucleus prise en charge pour votre IDT version.

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

Placez le aws.greengrass.nucleus.zip fichier téléchargé dans le <device-tester-extract-location>/products/ dossier.

Note

Ne placez pas plusieurs fichiers dans ce répertoire pour le même système d'exploitation et la même architecture.

Créez et configurez un Compte AWS

Avant de pouvoir utiliser AWS IoT Device Tester la AWS IoT Greengrass version V2, vous devez effectuer les étapes suivantes :

  1. Configurez un Compte AWS. Si vous en avez déjà un Compte AWS, passez à l'étape 2.

  2. Configurez les autorisations pourIDT.

Ces autorisations de compte permettent IDT d'accéder aux AWS services et de créer AWS des ressources, telles que AWS IoT des objets et AWS IoT Greengrass des composants, en votre nom.

Pour créer ces ressources, IDT for AWS IoT Greengrass V2 utilise les AWS informations d'identification configurées dans le config.json fichier pour passer API des appels en votre nom. Ces ressources sont allouées à différents moments d'un test.

Note

Bien que la plupart des tests soient éligibles au niveau AWS gratuit, vous devez fournir une carte de crédit lorsque vous vous inscrivez à un Compte AWS. Pour de plus amples informations, veuillez consulter Pourquoi ai-je besoin d'un mode de paiement si mon compte est couvert par le niveau gratuit ?.

Étape 1 : Configurez un Compte AWS

Au cours de cette étape, créez et configurez un Compte AWS. Si vous disposez déjà d'un Compte AWS, passez directement à l'étape Étape 2 : configurer les autorisations pour IDT.

Si vous n'en avez pas Compte AWS, procédez comme suit pour en créer un.

Pour vous inscrire à un Compte AWS
  1. Ouvrez l'https://portal.aws.amazon.com/billing/inscription.

  2. Suivez les instructions en ligne.

    Dans le cadre de la procédure d‘inscription, vous recevrez un appel téléphonique et vous saisirez un code de vérification en utilisant le clavier numérique du téléphone.

    Lorsque vous vous inscrivez à un Compte AWS, un Utilisateur racine d'un compte AWSest créé. Par défaut, seul l‘utilisateur racine a accès à l‘ensemble des Services AWS et des ressources de ce compte. La meilleure pratique de sécurité consiste à attribuer un accès administratif à un utilisateur, et à utiliser uniquement l‘utilisateur racine pour effectuer les tâches nécessitant un accès utilisateur racine.

Afin de créer un utilisateur administrateur, choisissez l'une des options suivantes :

Choisissez un moyen de gérer votre administrateur Pour Par Vous pouvez également
Dans IAM Identity Center

(Recommandé)

Utiliser des identifiants à court terme pour accéder à AWS.

Telles sont les meilleures pratiques en matière de sécurité. Pour plus d'informations sur les meilleures pratiques, consultez la section Bonnes pratiques en matière de sécurité IAM dans le guide de IAM l'utilisateur.

Suivre les instructions de la section Mise en route dans le AWS IAM Identity Center Guide de l'utilisateur. Configurez l'accès par programmation en configurant le AWS CLI à utiliser AWS IAM Identity Center dans le guide de l'AWS Command Line Interface utilisateur.
Dans IAM

(Non recommandé)

Utiliser des identifiants à long terme pour accéder à AWS. Suivez les instructions de la section Création de votre premier utilisateur IAM administrateur et de votre premier groupe d'utilisateurs dans le guide de IAM l'utilisateur. Configurez l'accès par programmation en gérant les clés d'accès pour IAM les utilisateurs dans le guide de IAM l'utilisateur.

Étape 2 : configurer les autorisations pour IDT

Au cours de cette étape, configurez les autorisations utilisées par la AWS IoT Greengrass V2 IDT pour exécuter des tests et collecter des données IDT d'utilisation. Vous pouvez utiliser le AWS Management Consoleou AWS Command Line Interface (AWS CLI) pour créer une IAM politique et un utilisateur de test pourIDT, puis associer des politiques à l'utilisateur. Si vous avez déjà créé un utilisateur de test pourIDT, passez directement àConfigurez votre appareil pour exécuter des tests IDT.

  1. Connectez-vous à la IAMconsole.

  2. Créez une stratégie gérée par le client qui accorde des autorisations de création des rôles avec des autorisations spécifiques.

    1. Dans le volet de navigation, sélectionnez Politiques, puis Créer une politique.

    2. Si vous ne l'utilisez pas PreInstalled, dans l'JSONonglet, remplacez le contenu de l'espace réservé par la politique suivante. Si vous en utilisez PreInstalled, passez à l'étape suivante.

      { "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. Si vous utilisez PreInstalled, dans l'JSONonglet, remplacez le contenu de l'espace réservé par la politique suivante. Assurez-vous de :

      • Remplacez thingName and thingGroup dans la iotResources déclaration avec le nom de l'objet et le groupe d'objets créés lors de l'installation de Greengrass sur votre appareil en cours de test (DUT) pour ajouter des autorisations.

      • Remplacez le passRole and roleAlias dans l'roleAliasResourcesinstruction et dans l'passRoleForResourcesinstruction contenant les rôles créés lors de l'installation de Greengrass sur votre. 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-*" ] } ] }
      Note

      Si vous souhaitez utiliser un IAMrôle personnalisé comme rôle d'échange de jetons pour votre appareil testé, assurez-vous de mettre à jour la roleAliasResources déclaration et la passRoleForResources déclaration de votre politique afin d'autoriser votre ressource de IAM rôle personnalisée.

    4. Choisissez Review policy (Examiner une politique).

    5. Pour Name (Nom), saisissez IDTGreengrassIAMPermissions. Sous Résumé, vérifiez les autorisations accordées par votre stratégie.

    6. Choisissez Create Policy (Créer une politique).

  3. Créez un IAM utilisateur et associez les autorisations requises par IDT for AWS IoT Greengrass.

    1. Créez un IAM utilisateur. Suivez les étapes 1 à 5 de la section Création d'IAMutilisateurs (console) dans le guide de IAM l'utilisateur.

    2. Associez les autorisations à votre IAM utilisateur :

      1. Sur la page Définir les autorisations, choisissez Attacher directement les stratégies existantes à l'utilisateur.

      2. Recherchez la IDTGreengrassIAMPermissionspolitique que vous avez créée à l'étape précédente. Activez la case à cocher.

    3. Choisissez Suivant : Balises.

    4. Choisissez Suivant : Réviser pour afficher un résumé de vos choix.

    5. Choisissez Create user (Créer un utilisateur).

    6. Pour afficher les clés d'accès de l'utilisateur (clé d'accès IDs et clés d'accès secrètes), choisissez Afficher à côté du mot de passe et de la clé d'accès. Pour enregistrer les clés d'accès, choisissez Télécharger .csv, puis enregistrez le fichier dans un emplacement sécurisé sur votre ordinateur. Vous utiliserez ces informations ultérieurement pour configurer votre fichier AWS d'informations d'identification.

  4. Étape suivante : Configurez votre appareil physique.

  1. Sur votre ordinateur, installez et configurez le AWS CLI s'il n'est pas déjà installé. Suivez les étapes décrites AWS CLI dans la section Installation du guide de AWS Command Line Interface l'utilisateur.

    Note

    AWS CLI Il s'agit d'un outil open source que vous pouvez utiliser pour interagir avec les AWS services à partir de votre shell de ligne de commande.

  2. Créez une politique gérée par le client qui accorde des autorisations de gestion IDT et AWS IoT Greengrass des rôles.

    1. Si vous ne l'utilisez pas PreInstalled, ouvrez un éditeur de texte et enregistrez le contenu de la politique ci-dessous dans un JSON fichier. Si vous en utilisez PreInstalled, passez à l'étape suivante.

      { "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. Si vous en utilisez un PreInstalled, ouvrez un éditeur de texte et enregistrez le contenu de la politique ci-dessous dans un JSON fichier. Assurez-vous de :

      • Remplacez thingName and thingGroup dans l'iotResourcesinstruction créée lors de l'installation de Greengrass sur votre appareil en cours de test (DUT) pour ajouter des autorisations.

      • Remplacez le passRole and roleAlias dans l'roleAliasResourcesinstruction et dans l'passRoleForResourcesinstruction contenant les rôles créés lors de l'installation de Greengrass sur votre. 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-*" ] } ] }
      Note

      Si vous souhaitez utiliser un IAMrôle personnalisé comme rôle d'échange de jetons pour votre appareil testé, assurez-vous de mettre à jour la roleAliasResources déclaration et la passRoleForResources déclaration de votre politique afin d'autoriser votre ressource de IAM rôle personnalisée.

    3. Exécutez la commande suivante pour créer une politique gérée par le client nomméeIDTGreengrassIAMPermissions. policy.jsonRemplacez-le par le chemin complet du JSON fichier que vous avez créé à l'étape précédente.

      aws iam create-policy --policy-name IDTGreengrassIAMPermissions --policy-document file://policy.json
  3. Créez un IAM utilisateur et associez les autorisations requises par IDT for AWS IoT Greengrass.

    1. Créez un IAM utilisateur. Dans cet exemple de configuration, l'utilisateur est nommé IDTGreengrassUser.

      aws iam create-user --user-name IDTGreengrassUser
    2. Attachez la IDTGreengrassIAMPermissions politique que vous avez créée à l'étape 2 à votre IAM utilisateur. Remplacez <account-id> dans la commande avec l'identifiant de votre Compte AWS.

      aws iam attach-user-policy --user-name IDTGreengrassUser --policy-arn arn:aws:iam::<account-id>:policy/IDTGreengrassIAMPermissions
  4. Créez une clé d'accès secrète pour l'utilisateur.

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

    Stockez la sortie dans un emplacement sécurisé. Vous utiliserez ces informations ultérieurement pour configurer votre fichier AWS d'informations d'identification.

  5. Étape suivante : Configurez votre appareil physique.

AWS IoT Device Tester autorisations

Les politiques suivantes décrivent AWS IoT Device Tester les autorisations.

AWS IoT Device Tester nécessite ces autorisations pour les fonctionnalités de vérification des versions et de mise à jour automatique.

  • iot-device-tester:SupportedVersion

    Accorde AWS IoT Device Tester l'autorisation de récupérer la liste des produits, suites de tests et IDT versions pris en charge.

  • iot-device-tester:LatestIdt

    Accorde AWS IoT Device Tester l'autorisation de récupérer la dernière IDT version disponible au téléchargement.

  • iot-device-tester:CheckVersion

    Accorde AWS IoT Device Tester l'autorisation de vérifier la compatibilité des versionsIDT, des suites de tests et des produits.

  • iot-device-tester:DownloadTestSuite

    AWS IoT Device Tester Autorise le téléchargement des mises à jour des suites de tests.

AWS IoT Device Tester utilise également l'autorisation suivante pour les rapports de mesures facultatifs :

  • iot-device-tester:SendMetrics

    Accorde l'autorisation AWS de collecter des statistiques relatives à l'utilisation AWS IoT Device Tester interne. Si cette autorisation est omise, ces statistiques ne seront pas collectées.