Utilisation de balises avec des compartiments de répertoire S3 - Amazon Simple Storage Service

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 de balises avec des compartiments de répertoire S3

Une AWS balise est une paire clé-valeur qui contient des métadonnées relatives aux ressources, en l'occurrence les compartiments d'annuaire Amazon S3. Vous pouvez étiqueter les compartiments de répertoire S3 lorsque vous les créez ou gérer les balises sur les compartiments de répertoire existants. Pour obtenir des informations générales sur les balises, consultezMarquage pour la répartition des coûts ou le contrôle d'accès basé sur les attributs (ABAC).

Note

L'utilisation de balises sur des compartiments de répertoire est gratuite, au-delà des taux de requêtes standard de l'API S3. Pour plus d’informations, consultez Tarification Amazon S3.

Méthodes courantes d'utilisation des balises avec les compartiments de répertoire

Utilisez des balises sur les compartiments de votre répertoire S3 pour :

  1. Répartition des coûts — Suivez les coûts de stockage par compartiment AWS Billing and Cost Management. Pour plus d'informations, consultez la section Utilisation de balises pour la répartition des coûts.

  2. Contrôle d'accès basé sur les attributs (ABAC) : adaptez les autorisations d'accès et accordez l'accès aux compartiments de répertoire S3 en fonction de leurs balises. Pour plus d'informations, consultez la section Utilisation de balises pour ABAC.

Note

Vous pouvez utiliser les mêmes balises pour la répartition des coûts et le contrôle d'accès.

ABAC pour compartiments de répertoire S3

Les compartiments d'annuaire Amazon S3 prennent en charge le contrôle d'accès basé sur les attributs (ABAC) à l'aide de balises. Utilisez des clés de condition basées sur des balises dans vos AWS politiques d'organisation, d'IAM et de bucket d'annuaire S3. Pour les entreprises, l'ABAC d'Amazon S3 prend en charge l'autorisation sur plusieurs AWS comptes.

Dans vos politiques IAM, vous pouvez contrôler l'accès aux compartiments du répertoire S3 en fonction des balises du compartiment à l'aide des clés de condition globales suivantes :

  • aws:ResourceTag/key-name

    • Utilisez cette clé pour comparer la paire valeur clé d'étiquette que vous spécifiez dans la politique avec la paire valeur clé attachée à la ressource. Par exemple, vous pouvez exiger que l'accès à une ressource soit autorisé uniquement si la clé de balise Dept est attachée à la ressource avec la valeur Marketing. Pour plus d'informations, consultez la section Contrôle de l'accès aux AWS ressources.

  • aws:RequestTag/key-name

    • Utilisez cette clé pour comparer la paire clé-valeur de balise qui a été transmise dans la demande avec la paire de balises spécifiée dans la politique. Par exemple, vous pouvez vérifier que la demande comprend la clé de balise Dept et qu'elle a la valeur Accounting. Pour plus d'informations, consultez la section Contrôle de l'accès lors AWS des demandes. Vous pouvez utiliser cette clé de condition pour restreindre les paires clé-valeur de balise qui peuvent être transmises pendant les opérations d'CreateBucketAPI TagResource et d'API.

  • aws:TagKeys

    • Utilisez cette clé pour comparer les clés de balise d’une demande avec celles spécifiées dans la politique. Nous vous recommandons, lorsque vous utilisez des politiques pour contrôler l'accès à l'aide de balises, d'utiliser la clé de condition aws:TagKeys pour définir quelles clés de balises sont autorisées. Pour des exemples de politiques et pour plus d'informations, consultez la section Contrôle de l'accès en fonction des clés de balise. Vous pouvez créer un compartiment de répertoire S3 avec des balises. Pour autoriser le balisage pendant le fonctionnement de l'CreateBucketAPI, vous devez créer une politique qui inclut à la fois les s3express:CreateBucket actions s3express:TagResource et. Vous pouvez ensuite utiliser la clé de aws:TagKeys condition pour appliquer l'utilisation de balises spécifiques dans la CreateBucket demande.

  • s3express:BucketTag/tag-key

    • Utilisez cette clé de condition pour accorder des autorisations à des données spécifiques dans des compartiments de répertoire à l'aide de balises. Lorsque vous accédez à un compartiment de répertoire à l'aide d'un point d'accès, cette clé de condition fait référence aux balises du compartiment de répertoire à la fois lors de l'autorisation accordée au point d'accès et au compartiment de répertoire, tandis qu'elle ne aws:ResourceTag/tag-key référencera les balises que de la ressource pour laquelle elle est autorisée.

Exemples de politiques ABAC pour les compartiments de répertoires

Consultez les exemples de politiques ABAC suivants pour les compartiments d'annuaire Amazon S3.

1.1 - Politique IAM pour créer ou modifier des buckets avec des balises spécifiques

Dans cette politique IAM, les utilisateurs ou les rôles dotés de cette politique ne peuvent créer des compartiments d'annuaire S3 que s'ils balisent le compartiment avec la clé project et la valeur de balise Trinity dans la demande de création de compartiment. Ils peuvent également ajouter ou modifier des balises sur des compartiments de répertoire S3 existants tant que la TagResource demande inclut la paire clé-valeur de balise. project:Trinity Cette politique n'accorde aucune autorisation de lecture, d'écriture ou de suppression sur les compartiments ou leurs objets.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateBucketWithTags", "Effect": "Allow", "Action": [ "s3express:CreateBucket", "s3express:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/project": [ "Trinity" ] } } } ] }

1.2 - Politique de compartiment visant à restreindre les opérations sur le compartiment à l'aide de balises

Dans cette politique de compartiment, les principaux IAM (utilisateurs et rôles) peuvent effectuer des opérations à l'aide de l'CreateSessionaction sur le compartiment uniquement si la valeur de la project balise du compartiment correspond à la valeur de la balise du project principal.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowObjectOperations", "Effect": "Allow", "Principal": { "AWS": "111122223333" }, "Action": "s3express:CreateSession", "Resource": "arn:aws::s3express:us-west-2:111122223333:bucket/amzn-s3-demo-bucket--usw2-az1--x-s3", "Condition": { "StringEquals": { "aws:ResourceTag/project": "${aws:PrincipalTag/project}" } } } ] }

1.3 - Politique IAM visant à modifier les balises sur les ressources existantes tout en maintenant la gouvernance du balisage

Dans cette politique IAM, les principaux IAM (utilisateurs ou rôles) peuvent modifier les balises d'un bucket uniquement si la valeur de la project balise du bucket correspond à la valeur de la balise du principal. project Seules les quatre balisesproject, environmentowner, et cost-center spécifiées dans les clés de aws:TagKeys condition sont autorisées pour ces compartiments de répertoire. Cela permet de renforcer la gouvernance des balises, d'empêcher les modifications non autorisées des balises et de garantir la cohérence du schéma de balisage dans tous vos compartiments.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceTaggingRulesOnModification", "Effect": "Allow", "Action": [ "s3express:TagResource" ], "Resource": "arn:aws::s3express:us-west-2:111122223333:bucket/*", "Condition": { "StringEquals": { "aws:ResourceTag/project": "${aws:PrincipalTag/project}" }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "project", "environment", "owner", "cost-center" ] } } } ] }

1.4 - Utilisation de la clé de condition s3express : BucketTag

Dans cette politique IAM, l'énoncé de condition autorise l'accès aux données du bucket uniquement si le bucket possède la clé de balise Environment et la valeur Production de balise.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccessToSpecificAccessPoint", "Effect": "Allow", "Action": "*", "Resource": "arn:aws::s3express:us-west-2:111122223333:accesspoint/*", "Condition": { "StringEquals": { "s3express:BucketTag/Environment": "Production" } } } ] }

Gestion des balises pour les compartiments de répertoires

Vous pouvez ajouter ou gérer des balises pour les compartiments de répertoire S3 à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI) ou du S3 APIs : TagResourceUntagResource, et ListTagsForResource. AWS SDKs Pour plus d'informations, consultez :