Rôle de service Greengrass - AWS IoT Greengrass

AWS IoT Greengrass Version 1 est entré dans la phase de durée de vie prolongée le 30 juin 2023. Pour plus d'informations, consultez la politique de AWS IoT Greengrass V1 maintenance. Après cette date, AWS IoT Greengrass V1 ne publiera pas de mises à jour fournissant des fonctionnalités, des améliorations, des corrections de bogues ou des correctifs de sécurité. Les appareils qui fonctionnent AWS IoT Greengrass V1 sous tension ne seront pas perturbés et continueront à fonctionner et à se connecter au cloud. Nous vous recommandons vivement de migrer vers AWS IoT Greengrass Version 2, qui ajoute de nouvelles fonctionnalités importantes et prend en charge des plateformes supplémentaires.

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.

Rôle de service Greengrass

Votre rôle de service Greengrass est unAWS Identity and Access ManagementRôle de service (IAM) qui autorise àAWS IoT Greengrasspour accéder aux ressources deAWSles services en votre nom. Ceci permet à AWS IoT Greengrass d'effectuer des tâches essentielles, telles que la récupération de vos fonctions AWS Lambda et la gestion des shadows AWS IoT.

Pour autoriser àAWS IoT Greengrasspour accéder à vos ressources, le rôle de service Greengrass doit être associé à votreCompte AWSet spécifiezAWS IoT Greengrassen tant qu'entité de confiance. Votre rôle doit inclure les AWSGreengrassResourceAccessRolePolicyune stratégie gérée ou une stratégie personnalisée qui définit des autorisations équivalentes pour leAWS IoT Greengrassles fonctionnalités que vous utilisez. Cette politique est maintenue parAWSet définit l'ensemble des autorisations quiAWS IoT Greengrasspour accéder à votreAWSAWS.

Vous pouvez réutiliser le même rôle de service Greengrass dans tous lesRégion AWS, mais vous devez l'associer à votre compte dans chaqueRégion AWSoù vous utilisezAWS IoT Greengrass. Le déploiement du groupe échoue si le rôle de service n'existe pas dans leCompte AWSet région.

Les sections suivantes décrivent comment créer et gérer le rôle de service Greengrass dans AWS Management Console ou l'AWS CLI.

Note

Outre le rôle de service qui autorise l'accès de niveau de service, vous pouvez attribuer unrôle de groupeà unAWS IoT Greengrass. Le rôle de groupe est un rôle IAM distinct qui contrôle la façon dont les fonctions Greengrass Lambda et les connecteurs du groupe peuvent accéder.AWSServices .

Gestion du rôle de service Greengrass (console)

La console AWS IoT facilite la gestion de votre rôle de service Greengrass. Par exemple, lorsque vous créez ou déployez un groupe Greengrass, la console vérifie si votreCompte AWSest associée à un rôle de service Greengrass dans leRégion AWSactuellement sélectionnée dans la console. Si ce n'est pas le cas, la console peut créer et configurer un rôle de service pour vous. Pour plus d'informations, consultez Créer le rôle de service Greengrass (console).

Vous pouvez utiliser le pluginAWS IoTconsole pour les tâches de gestion de rôles suivantes :

Note

L'utilisateur qui est connecté à la console doit disposer d'autorisations pour afficher, créer ou modifier le rôle de service.

 

Rechercher votre rôle de service Greengrass (console)

Procédez comme suit pour rechercher le rôle de service quiAWS IoT Greengrassutilise dans la version actuelleRégion AWS.

  1. À partir desAWS IoTconsolevolet de navigation, choisissezParamètres.

  2. Faites défiler l'écran jusqu'à la section Greengrass service role (Rôle de service Greengrass) pour afficher votre rôle de service et ses stratégies.

    Si vous ne voyez pas de rôle de service, vous pouvez laisser la console en créer ou en configurer un pour vous. Pour plus d'informations, consultez Créer le rôle de service Greengrass.

 

Créer le rôle de service Greengrass (console)

La console peut créer et configurer un rôle de service Greengrass par défaut pour vous. Ce rôle a les propriétés suivantes :

Propriété Valeur
Nom Greengrass_ServiceRole
Entité de confiance AWS service: greengrass
Politique AWSGreengrassResourceAccessRolePolicy
Note

Si le script de configuration de l'appareil Greengrass crée le rôle de service, le nom du rôle est GreengrassServiceRole_random-string.

Lorsque vous créez ou déployez un groupe Greengrass à partir duAWS IoT, la console vérifie si un rôle de service Greengrass est associé à votreCompte AWSdans leRégion AWSactuellement sélectionnée dans la console. Si ce n'est pas le cas, la console vous invite à autoriser àAWS IoT Greengrassà lire et à écrire dansAWSles services en votre nom.

Si vous accordez l'autorisation, la console vérifie si un rôle nomméGreengrass_ServiceRoleexiste dans votreCompte AWS.

  • Si le rôle existe, la console attache le rôle de service à votreCompte AWSdans les actuelsRégion AWS.

  • Si le rôle n'existe pas, la console crée un rôle de service Greengrass par défaut et l'attache à votreCompte AWSdans les actuelsRégion AWS.

Note

Si vous souhaitez créer un rôle de service avec des stratégies de rôle personnalisées, utilisez la console IAM pour créer ou modifier le rôle. Pour de plus amples informations, veuillez consulterCréation d'un rôle pour la délégation d'autorisations à unAWSserviceouModification d'un rôledans leIAM User Guide. Assurez-vous que le rôle accorde des autorisations équivalentes à la stratégie AWSGreengrassResourceAccessRolePolicy gérée pour les fonctions et les ressources que vous utilisez. Nous vous recommandons également d'inclure lesaws:SourceArnetaws:SourceAccountclés de contexte de condition globale dans votre stratégie de confiance pour empêcher ledéputé confusproblème de sécurité. Les clés contextuelles de condition limitent l'accès afin d'autoriser uniquement les demandes provenant du compte spécifié et de l'espace de travail Greengrass. Pour plus d'informations sur le problème du député confus, veuillez consulterPrévention du problème de l'adjoint confus entre services.

Si vous créez un rôle de service, revenez à laAWS IoTconsole et attachez le rôle au groupe. Vous pouvez effectuer cette opération sous Rôle de service Greengrass sur la page Paramètres du groupe.

 

Modifier le rôle de service Greengrass (console)

Utilisez la procédure suivante pour choisir un rôle de service Greengrass différent à attacher à votreCompte AWSdans leRégion AWSactuellement sélectionnée dans la console.

  1. À partir desAWS IoTconsolevolet de navigation, choisissezParamètres.

  2. UnderRôle de service Greengrass, choisissezChanger de rôle.

    LeRôle de service de mise à jours'ouvre et affiche les rôles IAM dans votreCompte AWSqui définissentAWS IoT Greengrassen tant qu'entité de confiance.

  3. Choisissez le rôle de service Greengrass à associer.

  4. ChoisissezAttachement d'.

Note

Pour permettre à la console de créer un rôle de service Greengrass par défaut pour vous, choisissez Créer un rôle pour moi au lieu de choisir un rôle dans la liste. LeCréer un rôle pour moile lien n'apparaît pas si un rôle nomméGreengrass_ServiceRoleest dans votreCompte AWS.

 

Détacher le rôle de service Greengrass (console)

Utilisez la procédure suivante pour détacher le rôle de service Greengrass de votreCompte AWSdans leRégion AWSactuellement sélectionnée dans la console. Cela révoque les autorisations pourAWS IoT Greengrasspour accéder àAWSservices dans le courantRégion AWS.

Important

Le détachement du rôle de service peut interrompre les opérations actives.

  1. À partir desAWS IoTconsolevolet de navigation, choisissezParamètres.

  2. UnderRôle de service Greengrass, choisissezDétachez un rôle.

  3. Dans la boîte de dialogue de confirmation, choisissez Détacher.

Note

Si vous n'avez plus besoin du rôle, vous pouvez le supprimer dans la console IAM. Pour plus d'informations, consultez Suppression de rôles ou de profils d'instance dans le guide de l'utilisateur IAM.

D'autres rôles peuvent permettre à AWS IoT Greengrass d'accéder à vos ressources. Pour trouver tous les rôles qui autorisentAWS IoT Greengrasspour assumer les autorisations en votre nom, dans la console IAM, sur leRôles, recherchez les rôles qui incluentAWSservice : herbe vertedans leEntités de confiancecolumn.

Gestion du rôle de service Greengrass (interface de ligne de commande)

Dans les procédures suivantes, nous supposons que lesAWS CLIest installé et configuré pour utiliser votreCompte AWSID. Pour de plus amples informations, veuillez consulterInstallation deAWSInterface de ligne de commandeetConfiguration deAWS CLIdans leAWS Command Line InterfaceGuide de l'utilisateur.

Vous pouvez utiliser l'AWS CLI pour les tâches de gestion de rôles suivantes :

 

Obtenir le rôle de service Greengrass (interface de ligne de commande)

Utilisez la procédure suivante pour déterminer si un rôle de service Greengrass est associé à votreCompte AWSdans unRégion AWS.

  • Obtenez le rôle de service. Remplacezrégionavec vos recettesRégion AWS(par exemple,us-west-2).

    aws Greengrass get-service-role-for-account --region region

    Si un rôle de service Greengrass est déjà associé à votre compte, les métadonnées de rôle suivantes sont renvoyées.

    { "AssociatedAt": "timestamp", "RoleArn": "arn:aws:iam::account-id:role/path/role-name" }

    Si aucune métadonnée de rôle n'est renvoyée, vous devez créer le rôle de service (s'il n'existe pas) et l'associer à votre compte dans leRégion AWS.

 

Créer le rôle de service Greengrass (interface de ligne de commande)

Procédez comme suit pour créer un rôle et l'associer à votreCompte AWS.

Pour créer le rôle de service à l'aide d'IAM
  1. Créez le rôle avec une stratégie d'approbation permettant à AWS IoT Greengrass d'assumer le rôle. Cet exemple crée un rôle nommé Greengrass_ServiceRole, mais vous pouvez utiliser un autre nom. Nous vous recommandons également d'inclure lesaws:SourceArnetaws:SourceAccountclés de contexte de condition globale dans votre stratégie de confiance pour empêcher ledéputé confusproblème de sécurité. Les clés contextuelles de condition limitent l'accès afin d'autoriser uniquement les demandes provenant du compte spécifié et de l'espace de travail Greengrass. Pour plus d'informations sur le problème du député confus, veuillez consulterPrévention du problème de l'adjoint confus entre services.

    Linux, macOS, or Unix
    aws iam create-role --role-name Greengrass_ServiceRole --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "greengrass.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:greengrass:region:account-id:*" } } } ] }'
    Windows command prompt
    aws iam create-role --role-name Greengrass_ServiceRole --assume-role-policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"greengrass.amazonaws.com\"},\"Action\":\"sts:AssumeRole\",\"Condition\":{\"ArnLike\":{\"aws:SourceArn\":\"arn:aws:greengrass:region:account-id:*\"},\"StringEquals\":{\"aws:SourceAccount\":\"account-id\"}}}]}"
  2. Copiez l'ARN de rôle du rôle des métadonnées dans la sortie. Vous utilisez l'ARN pour associer le rôle à votre compte.

  3. Attachez la stratégie AWSGreengrassResourceAccessRolePolicy au rôle.

    aws iam attach-role-policy --role-name Greengrass_ServiceRole --policy-arn arn:aws:iam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy
Pour associer le rôle de service à votreCompte AWS
  • Associez le rôle à votre compte. Remplacezrole-arnavec le nom ARN du rôle de service etrégionavec vos recettesRégion AWS(par exemple,us-west-2).

    aws greengrass associate-service-role-to-account --role-arn role-arn --region region

    En cas de réussite, la réponse suivante est renvoyée.

    { "AssociatedAt": "timestamp" }

 

Supprimer le rôle de service Greengrass (interface de ligne de commande)

Procédez comme suit pour dissocier le rôle de service Greengrass de votreCompte AWS.

  • Dissociez le rôle de service de votre compte. Remplacezrégionavec vos recettesRégion AWS(par exemple,us-west-2).

    aws greengrass disassociate-service-role-from-account --region region

    En cas de réussite, la réponse suivante est renvoyée.

    { "DisassociatedAt": "timestamp" }
    Note

    Vous devez supprimer le rôle de service si vous ne l'utilisez dans aucunRégion AWS. Utilisez d'abord delete-role-policy pour détacher la stratégie gérée du rôle, puis utilisez AWSGreengrassResourceAccessRolePolicydelete-role pour supprimer le rôle. Pour plus d'informations, consultez Suppression de rôles ou de profils d'instance dans le guide de l'utilisateur IAM.

Consulter aussi