

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.

# Activation des compartiments Amazon S3 de type Paiement par le demandeur dans Athena pour Spark
<a name="notebooks-spark-requester-pays"></a>

Lorsqu'un compartiment Amazon S3 a une configuration de type Paiement par le demandeur, le compte de l'utilisateur exécutant la requête est débité pour les frais d'accès aux données et de transfert de données associés à la requête. Pour plus d'informations, consultez [Utilisation des compartiments de type Paiement par le demandeur pour les transferts et l'utilisation du stockage](https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html) dans le *Guide de l'utilisateur Amazon S3*.

Dans Athena pour Spark, les compartiments de type Paiement par le demandeur sont activés par session, et non par groupe de travail. De manière générale, l'activation des compartiments de type Paiement par le demandeur comprend les étapes suivantes :

1. Dans la console Amazon S3, activez le paiement par le demandeur sur les propriétés du compartiment et ajoutez une politique de compartiment pour spécifier l'accès.

1. Dans la console IAM, créez une politique IAM pour autoriser l'accès au compartiment, puis attachez la politique au rôle IAM qui sera utilisé pour accéder au compartiment de type Paiement par le demandeur.

1. Dans Athena pour Spark, ajoutez une propriété de session pour activer la fonction de paiement par le demandeur.

## Étape 1 : Activation du paiement par le demandeur pour un compartiment Amazon S3 et ajout d’une stratégie de compartiment.
<a name="notebooks-spark-requester-pays-enable-requester-pays-on-an-amazon-s3-bucket"></a>

**Pour activer le paiement par le demandeur sur un compartiment Amazon S3**

1. Ouvrez la console Amazon S3 à l'adresse [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Dans la liste des compartiments, choisissez le lien du compartiment pour lequel vous souhaitez activer le paiement par le demandeur.

1. Sur la page du compartiment, choisissez l'onglet **Propriétés**.

1. Faites défiler jusqu'à la section **Paiement par le demandeur**, puis choisissez **Modifier**.

1. Sur la page **Modifier le paiement par le demandeur**, choisissez **Activer**, puis **Enregistrer les modifications**.

1. Sélectionnez l’onglet **Autorisations**.

1. Dans la section **Bucket policy** (Politique de compartiment), sélectionnez **Edit** (Modifier).

1. Sur la page **Modifier la politique de compartiment**, appliquez la politique de compartiment que vous souhaitez au compartiment source. L'exemple de politique suivant donne accès à tous les AWS principaux (`"AWS": "*"`), mais votre accès peut être plus précis. Par exemple, vous pouvez souhaiter spécifier uniquement un rôle IAM spécifique dans un autre compte.

------
#### [ JSON ]

****  

   ```
   { "Version":"2012-10-17",		 	 	  "Statement": [ { "Sid": "Statement1", "Effect": "Allow",
       "Principal": { "AWS": "arn:aws:iam::111122223333:root" },
       "Action": "s3:*", "Resource": [
           "arn:aws:s3:::111122223333-us-east-1-amzn-s3-demo-bucket",
           "arn:aws:s3:::555555555555-us-east-1-amzn-s3-demo-bucket/*"
       ] } ] }
   ```

------

## Étape 2 : Création d’une politique IAM et attachement de cette politique à un rôle IAM
<a name="notebooks-spark-requester-pays-create-an-iam-policy-and-attach-it-to-an-iam-role"></a>

Ensuite, vous créez une politique IAM afin d'autoriser l'accès au compartiment. Vous attachez ensuite la politique au rôle qui sera utilisé pour accéder au compartiment de type Paiement par le demandeur.

**Pour créer une politique IAM pour le compartiment de type Paiement par le demandeur et l'attacher à un rôle**

1. Ouvrez la console IAM à l’adresse [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Dans le panneau de navigation de la console IAM, sélectionnez **Politiques**.

1. Choisissez **Create Policy** (Créer une politique).

1. Choisissez **JSON**.

1. Dans **Éditeur de politiques**, ajoutez une politique comme suit :

------
#### [ JSON ]

****  

   ```
   { "Version":"2012-10-17",		 	 	  "Statement": [ { "Action": [ "s3:*" ], "Effect": "Allow",
       "Resource": [
           "arn:aws:s3:::111122223333-us-east-1-amzn-s3-demo-bucket",
           "arn:aws:s3:::111122223333-us-east-1-amzn-s3-demo-bucket/*"
       ] } ] }
   ```

------

1. Choisissez **Suivant**.

1. Dans la page **Vérifier et créer**, entrez un nom et une Description facultative pour la politique, puis choisissez **Créer une politique**.

1. Dans le panneau de navigation, choisissez **Rôles**.

1. Sur la page **Rôles**, recherchez le rôle que vous souhaitez utiliser, puis cliquez sur le lien du nom du rôle.

1. Dans la section **Politiques d'autorisations**, choisissez **Ajouter des autorisations**, **Attacher des politiques**.

1. Dans la section **Autres politiques d'autorisations**, cochez la case correspondant à la politique que vous avez créée, puis choisissez **Ajouter des autorisations**.

## Étape 3 : Ajout d’une propriété de session Athena pour Spark
<a name="notebooks-spark-requester-pays-add-a-session-property"></a>

Après avoir configuré le compartiment Amazon S3 et les autorisations associées pour le paiement par le demandeur, vous pouvez activer cette fonctionnalité dans une session Athena pour Spark.

**Pour activer des compartiments de type Paiement par le demandeur dans une session Athena pour Spark**

1. Dans l'éditeur de bloc-notes, dans le menu **Session** en haut à droite, choisissez **Modifier la session**.

1. Développez les **propriétés Spark**. 

1. Choisissez **Modifier dans JSON**. 

1. Dans l'éditeur de texte JSON, entrez ce qui suit :

   ```
   {
     "spark.hadoop.fs.s3.useRequesterPaysHeader":"true"
   }
   ```

1. Choisissez **Enregistrer**.