Balisage de vos ressources AWS IoT Wireless - AWS IoT Wireless

Balisage de vos ressources AWS IoT Wireless

Pour vous aider à gérer et organiser vos appareils, passerelles, destinations et profils, vous pouvez éventuellement attribuer vos propres métadonnées à chacune de ces ressources sous la forme de balises. Cette section décrit les balises et montre comment les créer. AWS IoT Wireless ne possède pas de groupes de facturation et utilise les mêmes groupes de facturation qu’AWS IoT Core. Pour plus d’informations, consultez Groupes de facturation dans la documentation d’AWS IoT Core.

Principes de base des étiquettes

Lorsque vous possédez plusieurs ressources AWS IoT Wireless du même type, vous pouvez utiliser des balises pour classer vos ressources de différentes manières (par exemple, par objectif, propriétaire ou environnement). Cela vous permet d’identifier rapidement une ressource en fonction des balises qui lui ont été attribuées.

Chaque balise est constituée d'une clé et d'une valeur facultative que vous définissez. Par exemple, vous pouvez définir un ensemble de balises pour un groupe d’appareils LoRaWAN pour lesquels le micrologiciel de l’appareil est actuellement mis à jour. Pour mieux gérer vos ressources, nous vous recommandons de créer un ensemble cohérent de clés de balise répondant à vos besoins pour chaque type de ressource.

Vous pouvez rechercher et filtrer les ressources en fonction des balises que vous ajoutez ou appliquez. Vous pouvez également utiliser des balises pour contrôler l’accès à vos ressources en utilisant des politiques IAM et des balises de groupe de facturation pour classer et suivre vos coûts.

Création et gestion de balises

Vous pouvez créer et gérer des balises à l’aide de l’éditeur de balises dans la AWS Management Console, AWS IoT Wireless ou l’AWS CLI.

Utilisation de la console

Pour faciliter l’utilisation, l’éditeur de balises de la AWS Management Console offre un moyen central et unifié de créer et de gérer vos balises. Pour plus d’informations, consultez Utilisation de l’éditeur de balises dans Utilisation de la AWS Management Console.

Utilisation de l’API ou de la CLI

Vous pouvez également utiliser l’API ou l’interface de ligne de commande et associer des balises à des appareils sans fil, des passerelles, des profils et des destinations lors de leur création en utilisant le champ Tags dans les commandes suivantes :

Mise à jour de balises ou élaboration d’une liste de balises pour les ressources

Vous pouvez ajouter, modifier ou supprimer des balises pour les ressources existantes qui prennent en charge le balisage à l'aide des commandes suivantes :

Vous pouvez modifier les clés et valeurs de balise, et vous pouvez retirer des balises d’une ressource à tout moment. Vous pouvez définir la valeur d’une balise sur une chaîne vide, mais vous ne pouvez pas définir la valeur d’une balise sur null. Si vous ajoutez une balise ayant la même clé qu’une balise existante sur cette ressource, la nouvelle valeur remplace l’ancienne valeur. Si vous supprimez une ressource, toutes les balises associées à celle-ci sont également supprimées.

Limites et restrictions liées aux balises

Les restrictions de base suivantes s’appliquent aux balises :

  • Nombre maximal de balises par ressource : 50.

  • Longueur de clé maximale : 127 caractères Unicode en UTF-8.

  • Longueur de valeur maximale : 255 caractères Unicode en UTF-8.

  • Les clés et valeurs de balise sont sensibles à la casse.

  • N'utilisez pas le aws: préfixe dans vos noms et valeurs de balise. Il est réservé pour un AWS usage. Vous ne pouvez pas modifier ou supprimer des noms ou valeurs de balise ayant ce préfixe. Les balises avec ce préfixe ne sont pas comptabilisées comme vos balises pour la limite de ressources.

  • Si votre schéma de balisage est utilisé pour plusieurs services et ressources, n'oubliez pas que d'autres services peuvent avoir des restrictions concernant les caractères autorisés. Les caractères autorisés incluent les lettres, les espaces et les chiffres représentables en UTF-8, ainsi que les caractères spéciaux suivants : + - = . _ : / @.

Utilisation des balises avec des politiques IAM

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

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

  • Utilisez aws:RequestTag/tag-key: tag-value pour exiger qu'une balise spécifique soit utilisée (ou ne soit pas utilisée) lorsque vous effectuez une demande d'API pour créer ou modifier une ressource qui autorise les balises.

  • Utilisez aws:TagKeys: [tag-key, ...] pour exiger qu'un ensemble de clés de balise spécifique soit utilisé (ou ne soit pas utilisé) lorsque vous effectuez une demande d'API pour créer ou modifier une ressource qui autorise les balises.

Note

Les clés et les valeurs de contexte de condition dans une politique IAM s'appliquent uniquement aux actions AWS IoT dans lesquelles un identifiant pour une ressource pouvant être balisée est un paramètre obligatoire. Par exemple, l’utilisation de DescribeEndpoint n’est pas autorisée ou refusée sur la base des clés/valeurs de contexte de condition, car aucune ressource pouvant être balisée n’est référencée dans cette demande.

Pour de plus amples informations, veuillez consulter Contrôle de l'accès à l'aide d’étiquettes dans le AWS Identity and Access ManagementGuide de l'utilisateur. La section Référence de stratégie JSON IAM de ce guide fournit la syntaxe détaillée, des descriptions, ainsi que des exemples des éléments, des variables et de la logique d'évaluation des stratégies JSON dans IAM.

L'exemple de stratégie suivant applique deux restrictions basées sur des balises. Un utilisateur IAM restreint par cette stratégie :

  • Ne peut pas attribuer à une ressource la balise « env=prod » (dans l’exemple, voir la ligne "aws:RequestTag/env" : "prod").

  • Ne peut pas modifier une ressource qui a une balise existante « env=prod » ou y accéder (dans l’exemple, voir la ligne "aws:ResourceTag/env" : "prod").

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iot:CreateMulticastGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iot:CreateMulticastGroup", "iot:UpdateMulticastGroup", "iot:GetMulticastGroup", "iot:ListMulticastGroups" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "prod" } } }, { "Effect": "Allow", "Action": [ "iot:CreateMulticastGroup", "iot:UpdateMulticastGroup", "iot:GetMulticastGroup", "iot:ListMulticastGroups" ], "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.