Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Einrichten des kontoübergreifenden Zugriffs
Gehen Sie wie folgt vor, um den kontenübergreifenden Zugriff für EMR Serverless einzurichten. Im Beispiel AccountA
ist das Konto, in dem Sie Ihre Amazon EMR Serverless-Anwendung erstellt haben, und das Konto, in dem sich Ihre Amazon DynamoDB AccountB
befindet.
-
Erstellen Sie eine DynamoDB-Tabelle in.
AccountB
Weitere Informationen finden Sie unter Schritt 1: Eine Tabelle erstellen. -
Erstellen Sie eine
Cross-Account-Role-B
IAM Rolle inAccountB
, die auf die DynamoDB-Tabelle zugreifen kann.Melden Sie sich bei der an AWS Management Console und öffnen Sie die IAM Konsole unter. https://console.aws.amazon.com/iam/
-
Wählen Sie Rollen und erstellen Sie eine neue Rolle mit dem Namen
Cross-Account-Role-B
. Weitere Informationen zum Erstellen von IAM Rollen finden Sie unter IAMRollen erstellen im Benutzerhandbuch. -
Erstellen Sie eine IAM Richtlinie, die Berechtigungen für den Zugriff auf die kontoübergreifende DynamoDB-Tabelle gewährt. Hängen Sie dann die IAM Richtlinie an an.
Cross-Account-Role-B
Die folgende Richtlinie gewährt Zugriff auf eine DynamoDB-Tabelle.
CrossAccountTable
{"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:
region
:AccountB:table/CrossAccountTable" } ] } -
So bearbeiten Sie die Vertrauensbeziehung für die
Cross-Account-Role-B
-Rolle.Um die Vertrauensstellung für die Rolle zu konfigurieren, wählen Sie in der IAM Konsole die Registerkarte Trust Relationships für die Rolle aus, die Sie in Schritt 2 erstellt haben:. Cross-Account-Role-B
Wählen Sie Vertrauensstellung bearbeiten aus und fügen Sie dann das folgende Richtliniendokument hinzu. Dieses Dokument ermöglicht es Ihnen
Job-Execution-Role-A
, dieseCross-Account-Role-B
RolleAccountA
zu übernehmen.{"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::AccountA:role/Job-Execution-Role-A" }, "Action": "sts:AssumeRole" } ] }
-
Geben
Job-Execution-Role-A
Sie ein undAccountA
erhalten- STS Assume role
Sie die erforderlichen Rechte zur ÜbernahmeCross-Account-Role-B
.Wählen Sie in der IAM Konsole für AWS-Konto
AccountA
die Option ausJob-Execution-Role-A
. Fügen Sie die folgende Richtlinienanweisung zuJob-Execution-Role-A
hinzu, um dieAssumeRole
-Aktion in der RolleCross-Account-Role-B
zu verweigern.{"Version": "2012-10-17", "Statement": [ {"Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::AccountB:role/Cross-Account-Role-B" } ] }
-
Stellen Sie die
dynamodb.customAWSCredentialsProvider
Eigenschaft mit einem Wert wiecom.amazonaws.emr.AssumeRoleAWSCredentialsProvider
bei der Klassifizierung der Kernstandorte ein. Stellen Sie die Umgebungsvariable aufASSUME_ROLE_CREDENTIALS_ROLE_ARN
den ARN Wert von ein.Cross-Account-Role-B
-
Führen Sie den Spark- oder Hive-Job aus mit
Job-Execution-Role-A
.