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.
Activer le paiement des buckets Amazon S3 par le demandeur dans Athena pour Spark
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 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 :
-
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.
-
Dans la IAM console, créez une IAM politique pour autoriser l'accès au compartiment, puis associez la politique au IAM rôle qui sera utilisé pour accéder au compartiment de paiement du demandeur.
-
Dans Athena pour Spark, ajoutez une propriété de session pour activer la fonction de paiement par le demandeur.
Étape 1 : activer le paiement par le demandeur sur un compartiment Amazon S3 et ajouter une politique de compartiment
Pour activer le paiement par le demandeur sur un compartiment Amazon S3
Ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/
. -
Dans la liste des compartiments, choisissez le lien du compartiment pour lequel vous souhaitez activer le paiement par le demandeur.
-
Sur la page du compartiment, choisissez l'onglet Propriétés.
-
Faites défiler jusqu'à la section Paiement par le demandeur, puis choisissez Modifier.
-
Sur la page Modifier le paiement par le demandeur, choisissez Activer, puis Enregistrer les modifications.
-
Choisissez l’onglet Permissions (Autorisations).
-
Dans la section Bucket policy (Politique de compartiment), sélectionnez Edit (Modifier).
-
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 AWS principals (
"AWS": "*"
), mais votre accès peut être plus précis. Par exemple, vous souhaiterez peut-être spécifier uniquement un IAM rôle spécifique dans un autre compte.{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:*", "Resource": [ "arn:aws:s3:::
account_number
-us-east-1-my-s3-requester-pays-bucket", "arn:aws:s3:::account_number
-us-east-1-my-s3-requester-pays-bucket/*" ] } ] }
Étape 2 : créer une IAM politique et l'associer à un IAM rôle
Ensuite, vous créez une IAM politique pour 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 IAM politique pour le demandeur, payez un panier et associez la politique à un rôle
Ouvrez la IAM console à l'adresse https://console.aws.amazon.com/iam/
. -
Dans le volet de navigation de la IAM console, sélectionnez Policies.
-
Choisissez Create Policy (Créer une politique).
-
Choisissez JSON.
-
Dans Éditeur de politiques, ajoutez une politique comme suit :
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:*" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::
account_number
-us-east-1-my-s3-requester-pays-bucket", "arn:aws:s3:::account_number
-us-east-1-my-s3-requester-pays-bucket/*" ] } ] } -
Choisissez Suivant.
-
Dans la page Vérifier et créer, entrez un nom et une Description facultative pour la politique, puis choisissez Créer une politique.
-
Dans le panneau de navigation, choisissez Roles (Rôles).
-
Sur la page Rôles, recherchez le rôle que vous souhaitez utiliser, puis cliquez sur le lien du nom du rôle.
-
Dans la section Politiques d'autorisations, choisissez Ajouter des autorisations, Attacher des politiques.
-
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 : Ajouter une propriété de session Athena for Spark
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
-
Dans l'éditeur de bloc-notes, dans le menu Session en haut à droite, choisissez Modifier la session.
-
Développez les propriétés Spark.
-
Choisissez Modifier dans JSON.
-
Dans l'éditeur de JSON texte, entrez les informations suivantes :
{ "spark.hadoop.fs.s3.useRequesterPaysHeader":"true" }
-
Choisissez Save (Enregistrer).