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 table S3
Une AWS balise est une paire clé-valeur qui contient des métadonnées relatives aux ressources, en l'occurrence des compartiments de table Amazon S3. Vous pouvez étiqueter les compartiments de table S3 lorsque vous les créez ou gérer les balises sur les compartiments de table existants. Pour plus d’informations sur les balises, consultez Balisage pour la répartition des coûts ou le contrôle d’accès par attributs (ABAC).
Note
L'utilisation de balises sur des compartiments de table n'entraîne aucun frais supplémentaire 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 des seaux de table
Utilisez des balises sur vos compartiments de table S3 pour :
Contrôle d'accès basé sur les attributs (ABAC) : adaptez les autorisations d'accès et accordez l'accès aux compartiments de table S3 en fonction de leurs balises. Pour plus d’informations, consultez Utilisation de balises pour l’ABAC.
SEAUX DE TABLE ABAC pour S3
Les compartiments de table 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 organisations AWS Identity and Access Management (IAM) et dans les politiques relatives aux compartiments de tables S3. Dans Amazon S3, ABAC prend en charge l'autorisation sur plusieurs AWS comptes.
Dans vos politiques IAM, vous pouvez contrôler l'accès aux compartiments de table S3 en fonction des balises du compartiment de table à l'aide de la clé de s3tables:TableBucketTag/tag-key condition ou des clés de condition AWS globales : aws:ResourceTag/key-nameaws:RequestTag/key-name, ou. aws:TagKeys
aws : ResourceTag /nom-clé
Utilisez cette clé de condition pour comparer la paire clé-valeur de balise que vous spécifiez dans la politique avec la paire clé-valeur attachée à la ressource. Par exemple, vous pouvez exiger que l'accès à un compartiment de table soit autorisé uniquement si le compartiment de table possède la clé de balise Department avec la valeurMarketing.
Cette clé de condition s'applique à toutes les actions du compartiment de table effectuées à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI), de S3 APIs ou du AWS SDKs, à l'exception de la demande d'CreateBucketAPI.
Pour un exemple de politique, consultez 1.1 - Politique de compartiment de table pour restreindre les opérations sur les tables à l'intérieur du compartiment de table à l'aide de balises.
Pour d'autres exemples de politiques et plus d'informations, voir Contrôle de l'accès aux AWS ressources dans le Guide de AWS Identity and Access Management l'utilisateur.
Note
Pour les actions effectuées sur des tables, cette clé de condition agit sur les balises appliquées à la table et non sur les balises appliquées au compartiment de table contenant la table. Utilisez-le s3tables:TableBucketTag/tag-key plutôt si vous souhaitez que vos politiques ABAC agissent sur les balises du compartiment de table lorsque vous effectuez des actions de table.
aws : RequestTag /nom-clé
Utilisez cette clé de condition pour comparer la paire clé-valeur de balise transmise dans la demande avec la paire de balises que vous spécifiez dans la politique. Par exemple, vous pouvez vérifier si la demande de balisage d'un compartiment de table inclut la clé de balise Department et si elle contient la valeurAccounting.
Cette clé de condition s'applique lorsque des clés de balise sont transmises dans une demande d'opération TagResource ou d'CreateTableBucketAPI, ou lorsque vous balisez ou créez un compartiment de table avec des balises à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI) ou du AWS SDKs.
Pour un exemple de politique, consultez 1.2 - Politique IAM pour créer ou modifier des compartiments de table avec des balises spécifiques.
Pour d'autres exemples de politiques et plus d'informations, consultez la section Contrôle de l'accès lors AWS des demandes dans le Guide de AWS Identity and Access Management l'utilisateur.
lois : TagKeys
Utilisez cette clé de condition pour comparer les clés de balise d'une demande avec les clés que vous spécifiez dans la politique afin de définir les clés de balise dont l'accès est autorisé. Par exemple, pour autoriser le balisage pendant l'CreateTableBucketaction, vous devez créer une politique qui autorise à la fois les s3tables:CreateTableBucket actions s3tables:TagResource et. Vous pouvez ensuite utiliser la clé de aws:TagKeys condition pour faire en sorte que seules des balises spécifiques soient utilisées dans la CreateTableBucket demande.
Cette clé de condition s'applique lorsque des clés de balise sont transmises dans le cadre d'une TagResource opération d'CreateTableBucketAPI ou lors du balisage, du débalisage ou de la création d'un compartiment de table avec des balises à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI) ou du. UntagResource AWS SDKs
Pour un exemple de politique, consultez 1.3 - Politique IAM pour contrôler la modification des balises sur les ressources existantes en maintenant la gouvernance du balisage.
Pour d'autres exemples de politiques et plus d'informations, consultez la section Contrôle de l'accès en fonction des clés de balise dans le Guide de AWS Identity and Access Management l'utilisateur.
s3tables : /tag-key TableBucketTag
Utilisez cette clé de condition pour accorder des autorisations à des données spécifiques dans des compartiments de tables à l'aide de balises. Cette clé de condition agit principalement sur les balises attribuées au compartiment de tables pour toutes les actions des tables S3. Même lorsque vous créez une table avec des balises, cette clé de condition agit sur les balises appliquées au compartiment de table qui contient cette table. Les exceptions sont les suivantes :
Lorsque vous créez un bucket de table avec des balises, cette clé de condition agit sur les balises de la demande.
Pour un exemple de politique, consultez 1.4 - Utilisation de la clé de condition s3tables TableBucketTag.
Exemples de politiques ABAC pour les compartiments de tables
Consultez les exemples de politiques ABAC suivants pour les compartiments de table Amazon S3.
Note
Si vous utilisez Lake Formation pour gérer l'accès à vos tables Amazon S3 et que vous avez une politique basée sur les ressources IAM ou S3 Tables qui restreint les utilisateurs et les rôles IAM en fonction des balises principales, vous devez associer les mêmes balises principales au rôle IAM que Lake Formation utilise pour accéder à vos données Amazon S3 (par exemple) et accorder à ce rôle les LakeFormationDataAccessRole autorisations nécessaires. Cela est nécessaire pour que votre politique de contrôle d'accès basée sur des balises fonctionne correctement avec votre intégration d'analyse S3 Tables.
1.1 - Politique de compartiment de table pour restreindre les opérations sur les tables à l'intérieur du compartiment de table à l'aide de balises
Dans cette politique de compartiment de table, les principaux IAM spécifiés (utilisateurs et rôles) peuvent effectuer l'GetTableaction sur n'importe quelle table du compartiment de table uniquement si la valeur de la project balise de la table correspond à la valeur de la balise du project principal.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGetTable", "Effect": "Allow", "Principal": { "AWS": "111122223333" }, "Action": "s3tables:GetTable", "Resource": "arn:aws::s3tables:us-west-2:111122223333:bucket/amzn-s3-demo-table-bucket/*", "Condition": { "StringEquals": { "aws:ResourceTag/project": "${aws:PrincipalTag/project}" } } } ] }
1.2 - Politique IAM pour créer ou modifier des compartiments de table avec des balises spécifiques
Note
Si vous utilisez AWS Lake Formation pour gérer l'accès à vos tables Amazon S3, et que vous utilisez ABAC avec Amazon S3 Tables, assurez-vous de donner également au rôle IAM que Lake Formation assume l'accès requis. Pour plus d'informations sur la configuration du rôle IAM pour Lake Formation, consultez la section Conditions préalables à l'intégration du catalogue de tables Amazon S3 au catalogue de données et à Lake Formation dans le guide du AWS Lake Formation développeur.
Dans cette politique IAM, les utilisateurs ou les rôles dotés de cette politique ne peuvent créer des compartiments de table S3 que s'ils balisent le compartiment de table avec la clé de balise project et la valeur de balise Trinity dans la demande de création de compartiment de table. Ils peuvent également ajouter ou modifier des balises sur des compartiments de table 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 de table ou leurs objets.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateTableBucketWithTags", "Effect": "Allow", "Action": [ "s3tables:CreateTableBucket", "s3tables:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/project": [ "Trinity" ] } } } ] }
1.3 - Politique IAM pour contrôler la modification des balises sur les ressources existantes en maintenant la gouvernance du balisage
Dans cette politique IAM, les principaux IAM (utilisateurs ou rôles) peuvent modifier les balises d'un compartiment de table uniquement si la valeur de la balise du compartiment de table correspond à la valeur de la project 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 table. 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 de table.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceTaggingRulesOnModification", "Effect": "Allow", "Action": [ "s3tables:TagResource", "s3tables:UntagResource" ], "Resource": "arn:aws::s3tables:us-west-2:111122223333:bucket/amzn-s3-demo-table-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 s3tables TableBucketTag
Dans cette politique IAM, l'instruction de condition autorise l'accès aux données du compartiment de table uniquement si le compartiment de table possède la clé de balise Environment et la valeur Production de balise. Elle s3tables:TableBucketTag/<tag-key> diffère de la clé de aws:ResourceTag/<tag-key> condition car, en plus de contrôler l'accès aux compartiments de table en fonction de leurs balises, elle vous permet de contrôler l'accès aux tables en fonction des balises de leur compartiment de table parent.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccessToSpecificTables", "Effect": "Allow", "Action": "*", "Resource": "arn:aws::s3tables:us-west-2:111122223333:bucket/amzn-s3-demo-table-bucket/*", "Condition": { "StringEquals": { "s3tables:TableBucketTag/Environment": "Production" } } } ] }
Gestion des balises pour les compartiments de table
Vous pouvez ajouter ou gérer des balises pour les compartiments de table 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 les ressources suivantes :