Utilisation des autorisations d'accès Amazon S3 avec EMR Serverless - 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.

Utilisation des autorisations d'accès Amazon S3 avec EMR Serverless

Présentation des subventions d'accès S3 pour EMR Serverless

Avec les EMR versions 6.15.0 et supérieures d'Amazon, Amazon S3 Access Grants fournit une solution de contrôle d'accès évolutive que vous pouvez utiliser pour augmenter l'accès à vos données Amazon S3 depuis Serverless. EMR Si vos exigences en matière de données S3 nécessitent une configuration d’autorisations complexe ou importante, vous pouvez utiliser S3 Access Grants pour mettre à l’échelle les autorisations de données S3 pour les utilisateurs, les groupes, les rôles et les applications.

Utilisez les subventions d'accès S3 pour augmenter l'accès aux données Amazon S3 au-delà des autorisations accordées par le rôle d'exécution ou IAM des rôles associés aux identités ayant accès à votre application EMR sans serveur.

Pour plus d'informations, consultez Gestion de l'accès avec S3 Access Grants pour Amazon EMR dans le Guide de EMR gestion Amazon et Gestion de l'accès avec S3 Access Grants dans le Guide de l'utilisateur d'Amazon Simple Storage Service.

Cette section décrit comment lancer une application EMR sans serveur qui utilise les autorisations d'accès S3 pour fournir un accès aux données dans Amazon S3. Pour savoir comment utiliser S3 Access Grants avec d'autres EMR déploiements Amazon, consultez la documentation suivante :

Lancez une application EMR sans serveur avec des autorisations d'accès S3 pour la gestion des données

Vous pouvez activer S3 Access Grants sur EMR Serverless et lancer une application Spark. Lorsque votre application demande à accéder aux données S3, Amazon S3 fournit des informations d’identification temporaires limitées au compartiment, au préfixe ou à l’objet concerné.

  1. Configurez un rôle d'exécution de tâches pour votre application EMR Serverless. Incluez les IAM autorisations requises pour exécuter des tâches Spark et utiliser S3 Access Grants, s3:GetDataAccess et s3: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" ] }
    Note

    Si vous spécifiez IAM des rôles pour l'exécution des tâches dotés d'autorisations supplémentaires pour accéder directement à S3, les utilisateurs pourront accéder aux données autorisées par le rôle même s'ils n'ont pas l'autorisation de S3 Access Grants.

  2. Lancez votre application EMR Serverless avec une étiquette de EMR version Amazon 6.15.0 ou supérieure et la spark-defaults classification, comme le montre l'exemple suivant. Remplacez les valeurs dans red text par les valeurs appropriées pour votre scénario d’utilisation.

    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" } }] }'

Considérations relatives aux autorisations d'accès S3 avec EMR Serverless

Pour obtenir des informations importantes sur l'assistance, la compatibilité et le comportement lorsque vous utilisez Amazon S3 Access Grants avec EMR Serverless, consultez les considérations relatives aux subventions d'accès S3 avec Amazon EMR dans le guide de EMR gestion Amazon.