Configurer l'accès intercompte - Amazon EMR

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.

  1. Créez une table DynamoDB dans. AccountB Pour plus d'informations, voir Étape 1 : Création d'une table.

  2. Créez un Cross-Account-Role-B IAM rôle permettant d'accéder à la table DynamoDB. AccountB

    1. Connectez-vous à la IAM console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/iam/.

    2. 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.

    3. 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 DynamoDBCrossAccountTable.

      {"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:region:AccountB:table/CrossAccountTable" } ] }
    4. 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 ce Cross-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" } ] }
    5. Job-Execution-Role-AAccountAAccordez-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ôle Job-Execution-Role-A pour autoriser l'action AssumeRole sur le rôle Cross-Account-Role-B.

      {"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::AccountB:role/Cross-Account-Role-B" } ] }
    6. Définissez la dynamodb.customAWSCredentialsProvider propriété avec une valeur comme com.amazonaws.emr.AssumeRoleAWSCredentialsProvider dans la classification des sites principaux. Définissez la variable d'environnement ASSUME_ROLE_CREDENTIALS_ROLE_ARN avec la ARN valeur deCross-Account-Role-B.

  3. Exécutez le job Spark ou Hive en utilisantJob-Execution-Role-A.