Utilisation des balises avec les stratégies IAM - AWS IoT Core

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.

Utilisation des balises avec les stratégies IAM

Vous pouvez appliquer des autorisations au niveau des ressources basées sur des balises dans les IAM politiques que vous utilisez pour les actions. AWS IoT API Vous bénéficiez ainsi d'un meilleur contrôle sur les ressources qu'un utilisateur peut créer, modifier ou utiliser. Vous utilisez l'Conditionélément (également appelé Condition bloc) avec les clés et valeurs de contexte de condition suivantes dans une IAM politique pour contrôler l'accès des utilisateurs (autorisations) en fonction des balises d'une ressource :

  • Utilisez aws:ResourceTag/tag-key: tag-value pour accorder ou refuser aux utilisateurs des actions sur des ressources ayant des balises spécifiques.

  • aws:RequestTag/tag-key: tag-valueÀ utiliser pour exiger qu'une balise spécifique soit utilisée (ou non) lors d'une API demande de création ou de modification d'une ressource qui autorise les balises.

  • aws:TagKeys: [tag-key, ...]À utiliser pour exiger qu'un ensemble spécifique de clés de balise soit utilisé (ou non utilisé) lors d'une API demande de création ou de modification d'une ressource qui autorise les balises.

Note

Les clés et valeurs du contexte de condition d'une IAM politique s'appliquent uniquement aux AWS IoT actions pour lesquelles un identifiant pour une ressource susceptible d'être étiquetée est un paramètre obligatoire. Par exemple, l'utilisation de n'DescribeEndpointest pas autorisée ou refusée sur la base des clés et des valeurs du contexte des conditions, car aucune ressource balisable (groupes d'objets, types d'objets, règles de rubrique, tâches ou profil de sécurité) n'est référencée dans cette demande. Pour plus d'informations sur les AWS IoT ressources balisables et les clés de condition qu'elles prennent en charge, consultez la section Actions, ressources et clés de condition pour. AWS IoT

Pour de plus amples informations, veuillez consulter Contrôle de l'accès à l'aide d’étiquettes dans le AWS Identity and Access Management Guide de l'utilisateur. La section de référence des IAM JSON politiques de ce guide contient une syntaxe détaillée, des descriptions et des exemples des éléments, des variables et de la logique d'évaluation des JSON politiques dansIAM.

L'exemple de stratégie suivant applique deux restrictions basées sur des ThingGroup actions. Un IAM utilisateur soumis à des restrictions en vertu de cette politique :

  • Impossible de créer un groupe d'objets avec la balise « env=prod » (dans l'exemple, voir la ligne"aws:RequestTag/env" : "prod").

  • Impossible de modifier ou d'accéder à un groupe de choses qui a une balise existante "env=prod" (dans l'exemple, voir la ligne "aws:ResourceTag/env" : "prod").

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iot:CreateThingGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:UpdateThingGroup" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "prod" } } }, { "Effect": "Allow", "Action": [ "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:UpdateThingGroup" ], "Resource": "*" } ] }

Vous pouvez également spécifier plusieurs valeurs de balise pour une clé de balise donnée en les plaçant dans une liste, comme suit :

"StringEquals" : { "aws:ResourceTag/env" : ["dev", "test"] }
Note

Si vous autorisez ou refusez à des utilisateurs l’accès à des ressources en fonction de balises, vous devez envisager de refuser de manière explicite la possibilité pour les utilisateurs d’ajouter ces balises ou de les supprimer des mêmes ressources. Sinon, il sera possible pour un utilisateur de contourner vos restrictions et d’obtenir l’accès à une ressource en modifiant ses balises.