翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
クロスアカウントアクセスのセットアップ
EMR Serverless のクロスアカウントアクセスを設定するには、次の手順を実行します。この例では、AccountA
は Amazon EMR Serverless アプリケーションを作成したアカウントであり、AccountB
は Amazon DynamoDB があるアカウントです。
-
AccountB
で DynamoDB テーブルを作成します。詳細については、ステップ 1: テーブルを作成するを参照してください。 -
AccountB
に、DynamoDB テーブルにアクセスできるCross-Account-Role-B
IAM ロールを作成します。にサインイン AWS Management Console し、https://console.aws.amazon.com/iam/
で IAM コンソールを開きます。 -
[ロール] を選択し、
Cross-Account-Role-B
という新しいロールを作成します。IAM ロールの作成方法の詳細については、ユーザーガイドの「IAM ロールの作成」を参照してください。 -
クロスアカウント DynamoDB テーブルへのアクセス権限を付与する IAM ポリシーを作成します。IAM ポリシーを
Cross-Account-Role-B
にアタッチします。DynamoDB テーブル
CrossAccountTable
へのアクセスを許可するポリシーを次に示します。 -
Cross-Account-Role-B
ロールの信頼関係を編集します。ロールの信頼関係を設定するには、IAM コンソールで、ステップ 2: Cross-Account-Role-B で作成したロールの [信頼関係] タブを選択します。
[信頼関係の編集] を選択し、次のポリシードキュメントを追加します。このドキュメントでは、
AccountA
のJob-Execution-Role-A
がこのCross-Account-Role-B
ロールを引き受けることを許可します。 -
- STS Assume role
を持つAccountA
のJob-Execution-Role-A
に、Cross-Account-Role-B
を引き受けるアクセス権限を付与します。の IAM コンソールで AWS アカウント
AccountA
、 を選択しますJob-Execution-Role-A
。次のポリシーステートメントをJob-Execution-Role-A
に追加して、Cross-Account-Role-B
ロールに対してAssumeRole
アクションを許可します。 -
core-site 分類で値を
com.amazonaws.emr.AssumeRoleAWSCredentialsProvider
としてdynamodb.customAWSCredentialsProvider
プロパティを設定します。環境変数ASSUME_ROLE_CREDENTIALS_ROLE_ARN
に ARN 値Cross-Account-Role-B
を設定します。
-
Job-Execution-Role-A
を使用して Spark ジョブまたは Hive ジョブを実行します。