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.
Configurer l'accès intercompte
Pour configurer l'accès entre comptes pour EMR Serverless, procédez comme suit. Dans l'exemple, AccountA
il s'agit du compte sur lequel vous avez créé votre application Amazon EMR Serverless et AccountB
du compte sur lequel se trouve votre Amazon DynamoDB.
-
Créez une table DynamoDB dans.
AccountB
Pour plus d'informations, voir Étape 1 : Création d'une table. -
Créez un
Cross-Account-Role-B
IAM rôle permettant d'accéder à la table DynamoDB.AccountB
Connectez-vous à la IAM console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/iam/
. -
Choisissez Rôles, puis créez un nouveau rôle appelé
Cross-Account-Role-B
. Pour plus d'informations sur la création de IAM rôles, consultez la section Création de IAM rôles dans le guide de l'utilisateur. -
Créez une IAM politique qui accorde les autorisations d'accès à la table DynamoDB entre comptes. Attachez ensuite la IAM politique à
Cross-Account-Role-B
.Voici une politique qui autorise l'accès à une table DynamoDB
CrossAccountTable
.{"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:
region
:AccountB:table/CrossAccountTable" } ] } -
Modifiez la relation de confiance du rôle
Cross-Account-Role-B
.Pour configurer la relation de confiance pour le rôle, choisissez l'onglet Relations de confiance dans la IAM console pour le rôle que vous avez créé à l'étape 2 : Cross-Account-Role-B.
Sélectionnez Modifier la relation de confiance, puis ajoutez le document de politique suivant. Ce document permet
AccountA
àJob-Execution-Role-A
in d'assumer ceCross-Account-Role-B
rôle.{"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::AccountA:role/Job-Execution-Role-A" }, "Action": "sts:AssumeRole" } ] }
-
Job-Execution-Role-A
AccountA
Accordez-le avec- STS Assume role
les autorisations d'assumerCross-Account-Role-B
.Dans la IAM console pour Compte AWS
AccountA
, sélectionnezJob-Execution-Role-A
. Ajoutez la déclaration de politique générale suivante au rôleJob-Execution-Role-A
pour autoriser l'actionAssumeRole
sur le rôleCross-Account-Role-B
.{"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::AccountB:role/Cross-Account-Role-B" } ] }
-
Définissez la
dynamodb.customAWSCredentialsProvider
propriété avec une valeur commecom.amazonaws.emr.AssumeRoleAWSCredentialsProvider
dans la classification des sites principaux. Définissez la variable d'environnementASSUME_ROLE_CREDENTIALS_ROLE_ARN
avec la ARN valeur deCross-Account-Role-B
.
-
Exécutez le job Spark ou Hive en utilisant
Job-Execution-Role-A
.