Balisage des ressources IAM - AWS Identity and Access Management

Balisage des ressources IAM

Une balise est un attribut personnalisé que vous pouvez attribue à une ressource AWS. Chaque balise se compose de deux parties :

  • Une clé de balise (par exemple, CostCenter, Environment, Project ou Purpose). Les clés de balises sont sensibles à la casse.

  • Un champ facultatif appelé valeur de balise (par exemple, 111122223333, Production ou le nom d'une équipe). Omettre la valeur de balise équivaut à l'utilisation d'une chaîne vide. Les valeurs de balise sont sensibles à la casse, tout comme les clés de balise.

Ensemble, ces éléments sont connus sous le nom de paires clé-valeur. Pour connaître les limites de nombre de balises possibles pour les ressources IAM, veuillez consulter IAM et quotas AWS STS, exigences relatives aux noms et limites de caractères.

Les balises vous aident à identifier et organiser vos ressources AWS. De nombreux services AWS prennent en charge le balisage. Vous pouvez donc attribuer la même balise à des ressources à partir de différents services pour indiquer que les ressources sont liées. Par exemple, vous pouvez attribuer la même balise à un rôle IAM que vous affectez à un compartiment Amazon S3. Pour de plus amples informations sur les politiques de balisage, veuillez consulter Étiquette des ressources AWS dans le Guide de référence générale AWS.

Outre l'identification, l'organisation et le suivi de vos ressources IAM avec des balises, vous pouvez utiliser des balises dans les politiques IAM afin de contrôler qui peut consulter et interagir avec vos ressources. Pour en savoir plus sur l'utilisation des balises pour contrôler l'accès, consultez Contrôle de l'accès aux et pour les utilisateurs et rôles IAM à l'aide de balises.

Vous pouvez également utiliser des balises dans AWS STS pour ajouter des attributs personnalisés lorsque vous endossez un rôle ou fédérez un utilisateur. Pour plus d'informations, veuillez consulter Transmission des balises de session dans AWS STS.

Choix d'une convention de dénomination de balises AWS

Lorsque vous commencez à attacher des balises à vos ressources IAM, choisissez soigneusement votre convention de dénomination de balises. Appliquez la même convention à toutes vos balises AWS. Ce point est particulièrement important si vous utilisez les balises dans les politiques de contrôle de l'accès aux ressources AWS. Si vous utilisez déjà des balises dans AWS, passez en revue votre convention de dénomination et ajustez-la en conséquence.

Note

Si votre compte est membre de AWS Organizations, consultez Stratégies de balises dans le guide de l'utilisateur d'Organizations pour en savoir plus sur l'utilisation des balises dans Organizations.

Bonnes pratiques pour nommer les balises

Voici quelques bonnes pratiques et conventions pour la dénomination des balises.

Les noms pour les balises AWS sont sensibles à la casse, assurez-vous qu'ils sont utilisés de manière cohérente. Par exemple, les balises CostCenter et costcenter sont différentes, de sorte que l'une peut être configurée en tant que balise de répartition des coûts pour l'analyse financière et la confection de rapports, alors que l'autre peut ne pas l'être. De même, la balise Name apparaît dans la console AWS pour de nombreuses ressources, mais la balise name n'apparaît pas.

Un certain nombre de balises sont prédéfinies par AWS ou créées automatiquement par divers services AWS. Plusieurs balises définis par AWS sont entièrement en minuscules, avec des traits d'union séparant les mots dans le nom et des préfixes pour identifier le service source de la balise. Par exemple :

  • aws:ec2spot:fleet-request-id identifie la demande d'instance Spot Amazon EC2 ponctuelle qui a lancé l'instance.

  • aws:cloudformation:stack-name identifie la pile AWS CloudFormation qui a créé la ressource.

  • elasticbeanstalk:environment-name identifie l'application qui a créé la ressource.

Pensez à nommer vos balises en minuscules, avec des traits d'union séparant les mots et un préfixe identifiant le nom de l'organisation ou le nom abrégé. Par exemple, pour une entreprise fictive nommée AnyCompany, vous pouvez définir des balises telles que :

  • anycompany:cost-center pour identifier le code du centre de coûts interne

  • anycompany:environment-type pour déterminer si l'environnement est un environnement de développement, de test ou de production

  • anycompany:application-id pour identifier l'application pour laquelle la ressource a été créée

Le préfixe garantit que les balises sont clairement identifiées comme ayant été définies par votre organisation et non pas par AWSou un outil tiers que vous utilisez probablement. L'utilisation de minuscules et de traits d'union pour les séparateurs évite toute confusion quant à l'utilisation de majuscules pour le nom d'une balise. Par exemple, anycompany:project-idest plus simple à mémoriser que ANYCOMPANY:ProjectID, anycompany:projectID ouAnycompany:ProjectId.

Règles de balisage dans IAM et AWS STS

Un certain nombre de conventions régissent la création et l'application des balises dans IAM et AWS STS.

Dénomination des balises

Respectez les conventions suivantes lorsque vous définissez une convention de dénomination de balises pour les ressources IAM, les sessions assume-role AWS STS et les sessions d'utilisateurs fédérés AWS STS :

Character requirements (Exigences relatives aux caractères) : les clés et valeurs des balises peuvent inclure n'importe quelle combinaison de lettres, chiffres, espaces et caractères _ . : / = + - @.

Case sensitivity (Sensibilité à la casse) : la sensibilité à la casse pour les clés de balise diffère selon le type de ressource IAM qui est balisé. Les valeurs clés de balise pour les utilisateurs et les rôles IAM ne sont pas sensibles à la casse, mais la casse est conservée. Cela signifie que vous ne pouvez pas avoir des clés de balise Department et department distinctes. Si vous avez balisé un utilisateur avec la balise Department=finance et que vous ajoutez la balise department=hr, elle remplace la première balise. Une deuxième balise n'est pas ajoutée.

Pour les autres types de ressources IAM, les valeurs de clé de balise sont sensibles à la casse. Cela signifie que vous pouvez avoir des clés de balise Costcenter et costcenter séparées. Par exemple, si vous avez balisé une politique gérée par le client avec la balise Costcenter = 1234 et que vous ajoutez la balise costcenter = 5678, la politique aura à la fois les clés de balise Costcenter et costcenter.

À titre de bonne pratique, nous vous recommandons d'éviter d'utiliser des balises similaires avec un traitement de casse incohérent. Nous vous recommandons de choisir une stratégie pour l'utilisation de majuscules pour le nom d'une balise et de mettre en œuvre cette stratégie de manière cohérente sur tous les types de ressources. Pour en savoir plus sur les bonnes pratiques en matière de balisage, consultez Balisage des ressources AWS dans la Référence générale AWS.

Les listes suivantes présentent les différences de sensibilité à la casse pour les clés de balise attachées aux ressources IAM.

Les valeurs de clé de balise ne sont pas sensibles à la casse :

  • Rôles IAM

  • Utilisateurs IAM

Les valeurs de clé de balise sont sensibles à la casse :

  • Politiques gérées par le client

  • Profils d'instance

  • Fournisseurs d'identité OpenID Connect

  • Fournisseurs d'identité SAML

  • Certificats de serveur

  • Appareils MFA virtuels

En outre, les règles suivantes s'appliquent :

  • Vous ne pouvez pas créer une clé ou valeur de balise qui commence par le texte aws:. Ce préfixe de balise est réservé à une utilisation interne AWS.

  • Vous pouvez créer une balise avec une valeur vide comme phoneNumber = . Vous ne pouvez pas créer une clé de balise vide.

  • Vous ne pouvez pas spécifier plusieurs valeurs dans une seule balise, mais vous pouvez créer une structure multivaleur personnalisée dans la valeur unique. Par exemple, supposons que l'utilisateur Zhang fonctionne sur l'équipe d'ingénierie et l'équipe d'assurance qualité. Si vous attachez la balise team = Engineering, puis attachez la balise team = QA, vous modifiez la valeur de la balise de Engineering en QA. Au lieu de cela, vous pouvez inclure plusieurs valeurs dans une seule balise avec un séparateur personnalisé. Dans cet exemple, vous pouvez attacher la balise team = Engineering:QA à Zhang.

    Note

    Pour contrôler l'accès aux ingénieurs de cet exemple à l'aide de la balise team, vous devez créer une politique qui autorise chaque configuration susceptible d'inclure Engineering, y compris Engineering:QA. Pour en savoir plus sur l'utilisation des balises dans les politiques consultez Contrôle de l'accès aux et pour les utilisateurs et rôles IAM à l'aide de balises.

Application et modification de balises

Observez les conventions suivantes lorsque vous attachez des balises aux ressources IAM :

  • Vous pouvez baliser la plupart des ressources IAM, mais pas les groupes, les rôles endossés, les rapports d'accès, les dispositifs MFA matériels.

  • Vous ne pouvez pas utiliser Tag Editor pour baliser les ressources IAM. Tag Editor ne prend pas en charge les balises IAM. Pour plus d'informations sur l'utilisation de Tag Editor avec d'autres services, consultez Utilisation de Tag Editor dans le Guide de l'utilisateur AWS Resource Groups.

  • Vous devez disposer d'autorisations spécifiques pour baliser une ressource IAM. Pour ajouter ou supprimer des balises aux ressources, vous devez également disposer d'une autorisation pour afficher la liste des balises. Pour plus d'informations, consultez la liste des rubriques pour chaque ressource IAM à la fin de cette page.

  • Le nombre et la taille des ressources IAM dans un compte AWS sont limités. Pour plus d'informations, veuillez consulter IAM et quotas AWS STS, exigences relatives aux noms et limites de caractères.

  • Vous pouvez appliquer la même balise à plusieurs ressources IAM. Par exemple, supposons que vous ayez un service nommé AWS_Development comprenant 12 membres. Vous pouvez avoir 12 utilisateurs et un rôle avec la clé de balise department et la valeur awsDevelopment (department = awsDevelopment). Vous pouvez également utiliser la même balise sur les ressources d'autres services qui prennent en charge le balisage.

  • Les entités IAM ( utilisateurs ou rôles) ne peuvent pas avoir plusieurs instances de la même clé de balise. Par exemple, si vous avez un utilisateur avec la paire clé-valeur de balise costCenter = 1234, vous pouvez ensuite attacher la paire clé-valeur de balise costCenter = 5678. IAM met à jour la valeur de la balise costCenter à 5678.

  • Pour modifier une balise qui est attachée à une entité IAM (utilisateur ou rôle), attachez une balise avec une nouvelle valeur pour remplacer la balise existante. Par exemple, supposons que vous disposiez d'un utilisateur avec la paire clé-valeur de balise department = Engineering. Si vous devez déplacer l'utilisateur vers le service d'assurance qualité, vous pouvez attacher la paire clé-valeur de balise department = QA à l'utilisateur. Il s'ensuit que la valeur Engineering de la clé de balise department est remplacée par la valeur QA.