

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
<a name="table-tagging"></a>

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)](tagging.md).

**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](https://aws.amazon.com/s3/pricing/).

## Méthodes courantes d'utilisation des balises avec les tableaux
<a name="common-ways-to-use-tags-table"></a>

Utilisez des balises sur vos tables S3 pour :

1. **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](https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-cost-allocation).

1. **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](https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-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
<a name="abac-for-tables"></a>

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 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys) :`aws:ResourceTag/key-name`,`aws:RequestTag/key-name`, ou`aws:TagKeys`. 

#### aws : ResourceTag/key-name
<a name="table-condition-key-resource-tag"></a>

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 valeur`Marketing`.

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](#example-policy-table-resource-tag).

Pour obtenir des exemples de politiques supplémentaires et plus d'informations, consultez la section [ Contrôle de l'accès aux AWS ressources ](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-resources) 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
<a name="table-condition-key-request-tag"></a>

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 valeur`Accounting`. 

Cette clé de condition s'applique lorsque des clés de balise sont transmises dans une demande d'opération d'`CreateTable`API `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](#example-policy-table-request-tag).

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 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-requests) dans le Guide de *Gestion des identités et des accès AWS l'utilisateur*.

#### aws : TagKeys
<a name="table-condition-key-tag-keys"></a>

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'`CreateTable`action, 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'`CreateTable`API 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](#example-policy-table-tag-keys).

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 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-tag-keys) dans le Guide de *Gestion des identités et des accès AWS l'utilisateur*.

#### Tableaux S3 : TableBucketTag/tag-key
<a name="table-bucket-tag-condition-key"></a>

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](#example-policy-table-bucket-tag-tables).

#### Exemples de politiques ABAC pour les tables
<a name="example-table-abac-policies"></a>

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
<a name="example-policy-table-resource-tag"></a>

Dans cette politique de table, les principaux IAM spécifiés (utilisateurs et rôles) peuvent effectuer l'`GetTable`action 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
<a name="example-policy-table-request-tag"></a>

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
<a name="example-policy-table-tag-keys"></a>

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 balises`project`, `environment``owner`, 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
<a name="example-policy-table-bucket-tag-tables"></a>

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
<a name="table-working-with-tags"></a>

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 ](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_TagResource.html) [ UntagResource](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UntagResource.html), et [ ListTagsForResource](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListTagsForResource.html). Pour en savoir plus, consultez :

**Topics**
+ [Méthodes courantes d'utilisation des balises avec les tableaux](#common-ways-to-use-tags-table)
+ [Gestion des balises pour les tableaux](#table-working-with-tags)
+ [Création de tableaux avec des balises](table-create-tag.md)
+ [Ajouter un tag à un tableau](table-tag-add.md)
+ [Affichage des balises d'un tableau](table-tag-view.md)
+ [Supprimer un tag d'un tableau](table-tag-delete.md)