Verwenden von Amazon S3 Access Grants mit EMR Serverless - Amazon EMR

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.

Verwenden von Amazon S3 Access Grants mit EMR Serverless

Übersicht über S3 Access Grants für EMR Serverless

Mit den EMR Amazon-Versionen 6.15.0 und höher bieten Amazon S3 Access Grants eine skalierbare Zugriffskontrolllösung, mit der Sie den Zugriff auf Ihre Amazon S3 S3-Daten von Serverless aus erweitern können. EMR Wenn Sie für Ihre S3-Daten eine komplexe oder umfangreiche Berechtigungskonfiguration haben, können Sie mit S3 Access Grants die S3-Datenberechtigungen für Benutzer, Gruppen, Rollen und Anwendungen skalieren.

Verwenden Sie S3 Access Grants, um den Zugriff auf Amazon S3 S3-Daten über die von der Runtime-Rolle gewährten Berechtigungen oder die IAM Rollen hinaus zu erweitern, die den Identitäten mit Zugriff auf Ihre EMR serverlose Anwendung zugewiesen sind.

Weitere Informationen finden Sie unter Verwaltung des Zugriffs mit S3 Access Grants for Amazon EMR im Amazon EMR Management Guide und Verwaltung des Zugriffs mit S3 Access Grants im Amazon Simple Storage Service User Guide.

In diesem Abschnitt wird beschrieben, wie Sie eine EMR serverlose Anwendung starten, die S3 Access Grants verwendet, um Zugriff auf Daten in Amazon S3 zu gewähren. Schritte zur Verwendung von S3 Access Grants mit anderen EMR Amazon-Bereitstellungen finden Sie in der folgenden Dokumentation:

Starten Sie eine EMR serverlose Anwendung mit S3 Access Grants für die Datenverwaltung

Sie können S3 Access Grants auf EMR Serverless aktivieren und eine Spark-Anwendung starten. Wenn Ihre Anwendung eine Anfrage für S3-Daten stellt, stellt Amazon S3 temporäre Anmeldeinformationen bereit, die auf den jeweiligen Bucket, das Präfix oder das Objekt beschränkt sind.

  1. Richten Sie eine Rolle zur Auftragsausführung für Ihre EMR serverlose Anwendung ein. Geben Sie die erforderlichen IAM Berechtigungen an, die Sie für die Ausführung von Spark-Jobs und die Verwendung von S3 Access Grants benötigen, s3:GetDataAccess unds3:GetAccessGrantsInstanceForPrefix:

    { "Effect": "Allow", "Action": [ "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ], "Resource": [ //LIST ALL INSTANCE ARNS THAT THE ROLE IS ALLOWED TO QUERY "arn:aws_partition:s3:Region:account-id1:access-grants/default", "arn:aws_partition:s3:Region:account-id2:access-grants/default" ] }
    Anmerkung

    Wenn Sie IAM Rollen für die Auftragsausführung angeben, die über zusätzliche Berechtigungen für den direkten Zugriff auf S3 verfügen, können Benutzer auch dann auf die durch die Rolle zugelassenen Daten zugreifen, wenn sie keine Genehmigung von S3 Access Grants haben.

  2. Starten Sie Ihre EMR serverlose Anwendung mit einem EMR Amazon-Release-Label von 6.15.0 oder höher und der spark-defaults Klassifizierung, wie das folgende Beispiel zeigt. Ersetzen Sie die Werte in red text mit den passenden Werten für Ihr Nutzungsszenario.

    aws emr-serverless start-job-run \ --application-id application-id \ --execution-role-arn job-role-arn \ --job-driver '{ "sparkSubmit": { "entryPoint": "s3://us-east-1.elasticmapreduce/emr-containers/samples/wordcount/scripts/wordcount.py", "entryPointArguments": ["s3://amzn-s3-demo-destination-bucket1/wordcount_output"], "sparkSubmitParameters": "--conf spark.executor.cores=1 --conf spark.executor.memory=4g --conf spark.driver.cores=1 --conf spark.driver.memory=4g --conf spark.executor.instances=1" } }' \ --configuration-overrides '{ "applicationConfiguration": [{ "classification": "spark-defaults", "properties": { "spark.hadoop.fs.s3.s3AccessGrants.enabled": "true", "spark.hadoop.fs.s3.s3AccessGrants.fallbackToIAM": "false" } }] }'

Überlegungen zu S3 Access Grants mit Serverless EMR

Wichtige Informationen zu Support, Kompatibilität und Verhalten bei der Verwendung von Amazon S3 Access Grants mit EMR Serverless finden Sie unter Überlegungen zu S3 Access Grants with Amazon EMR im Amazon EMR Management Guide.