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 tables S3
Une AWS balise est une paire clé-valeur qui contient des métadonnées relatives aux ressources, en l'occurrence des tables Amazon S3. Vous pouvez baliser les tables S3 lorsque vous les créez ou gérer les balises des tables existantes. 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 tables 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 tableaux
Utilisez des balises sur vos tables S3 pour :
-
Répartition des coûts : suivez les coûts de stockage par étiquette de table AWS Billing and Cost Management. Pour plus d’informations, consultez Utilisation de balises pour la répartition des coûts.
-
Attribute-based contrôle d'accès (ABAC) : augmentez les autorisations d'accès et accordez l'accès aux tables S3 en fonction de leurs balises. Pour plus d’informations, consultez Utilisation de balises pour l’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 tables S3
Les tables 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 Gestion des identités et des accès AWS (IAM) et les politiques relatives aux tables S3. ABAC dans Amazon S3 prend en charge l'autorisation sur plusieurs AWS comptes.
Dans vos politiques IAM, vous pouvez contrôler l'accès aux tables S3 en fonction des balises de la table à l'aide de la clé de s3tables:TableBucketTag/tag-key condition ou des clés de condition AWS globales :aws:ResourceTag/key-name,aws:RequestTag/key-name, ouaws:TagKeys.
aws : ResourceTag/key-name
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 à une table soit autorisé uniquement si la table contient la clé de balise Department avec la valeurMarketing.
Cette clé de condition s'applique aux actions de table effectuées à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI), des API S3 ou AWS des kits de développement logiciel.
Pour un exemple de politique, consultez 1.1 - politique de table pour restreindre les opérations sur la table à l'aide de balises.
Pour obtenir des exemples de politiques supplémentaires et plus d'informations, consultez la section Contrôle de l'accès aux AWS ressources dans le Guide de Gestion des identités et des accès AWS l'utilisateur.
Note
Pour les actions effectuées sur les tableaux, cette clé de condition agit sur les balises appliquées au tableau et non sur les balises appliquées au compartiment de tableaux contenant le tableau. Utilisez s3tables:TableBucketTag/tag-key plutôt le si vous souhaitez que vos politiques ABAC agissent sur les balises du compartiment de tableaux lorsque vous effectuez des actions de tableau.
aws : RequestTag/key-name
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'une 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 d'CreateTableAPI TagResource ou lorsque vous balisez ou créez un tableau contenant des balises à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI) ou des AWS kits de développement logiciel.
Pour un exemple de politique, consultez 1.2 - Politique IAM pour créer ou modifier des tableaux avec des balises spécifiques.
Pour obtenir des exemples de politiques supplémentaires et plus d'informations, consultez la section Contrôle de l'accès lors AWS des demandes dans le Guide de Gestion des identités et des accès AWS l'utilisateur.
aws : 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'CreateTableaction, vous devez créer une politique qui autorise à la fois les s3tables:CreateTable 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 CreateTable demande.
Cette clé de condition s'applique lorsque des clés de balise sont transmises dans le cadre d'une TagResource opération d'CreateTableAPI ou lors du balisage, du débalisage ou de la création d'un tableau contenant des balises à l'aide de l'interface de ligne de AWS commande (CLI) ou des SDK. UntagResource AWS
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 des balises.
Pour obtenir des exemples de politiques supplémentaires et plus d'informations, consultez la section Contrôle de l'accès en fonction des clés de tag dans le Guide de Gestion des identités et des accès AWS l'utilisateur.
Tableaux S3 : TableBucketTag/tag-key
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, en grande partie, sur les balises attribuées au compartiment de tables pour toutes les actions relatives aux tables S3. Même lorsque vous créez un tableau avec des balises, cette clé de condition agit sur les balises appliquées au compartiment de tables qui contient cette table. Les exceptions sont les suivantes :
Lorsque vous créez un compartiment de tables 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 tables
Consultez les exemples de politiques ABAC suivants pour les tables Amazon S3.
Note
Si vous avez une politique basée sur les ressources IAM ou S3 Tables qui restreint les utilisateurs IAM 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 LakeFormationDataAccessRole) et accorder à ce rôle les autorisations nécessaires. Cela est nécessaire pour que votre politique de contrôle d'accès basée sur les balises fonctionne correctement avec votre intégration d'analyse S3 Tables.
1.1 - politique de table pour restreindre les opérations sur la table à l'aide de balises
Dans cette politique de table, les principaux IAM spécifiés (utilisateurs et rôles) peuvent effectuer l'GetTableaction uniquement si la valeur de la balise de la table correspond à la valeur de la project 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/my_example_tab;e", "Condition": { "StringEquals": { "aws:ResourceTag/project": "${aws:PrincipalTag/project}" } } } ] }
1.2 - Politique IAM pour créer ou modifier des tableaux avec des balises spécifiques
Dans cette stratégie IAM, les utilisateurs ou les rôles dotés de cette politique ne peuvent créer des tables S3 que s'ils étiquettent la table avec la clé de balise project et la valeur de balise Trinity dans la demande de création de table. Ils peuvent également ajouter ou modifier des balises dans des tables S3 existantes 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 tables ou leurs objets.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateTableWithTags", "Effect": "Allow", "Action": [ "s3tables:CreateTable", "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 des balises
Dans cette politique IAM, les responsables IAM (utilisateurs ou rôles) peuvent modifier les balises d'une table uniquement si la valeur de la balise de la 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 tables. Cela permet de renforcer la gouvernance des balises, d'empêcher les modifications non autorisées des balises et de maintenir la cohérence du schéma de balisage sur l'ensemble de vos tables.
{ "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/my_example_table", "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 tables uniquement si le compartiment de tables possède la clé de balise Environment et la valeur Production de balise. La clé 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 tables 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 tableaux
Vous pouvez ajouter ou gérer des balises pour les tables S3 à l'aide de la console Amazon S3, de l'interface de ligne de AWS commande (CLI), AWS des kits SDK ou des API S3 : TagResource UntagResource, et ListTagsForResource. Pour en savoir plus, consultez :