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 sans serveur
Présentation des subventions d'accès S3 pour EMR Serverless
Avec les versions 6.15.0 et supérieures d'Amazon EMR, Amazon S3 Access Grants fournit une solution de contrôle d'accès évolutive pour augmenter l'accès à vos données Amazon S3 depuis EMR Serverless. Si vous disposez d'une configuration d'autorisations complexe ou importante pour vos données S3, utilisez Access Grants pour adapter les autorisations de données S3 aux utilisateurs, aux rôles et aux 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 des rôles IAM associés aux identités ayant accès à votre application EMR Serverless.
Pour plus d'informations, reportez-vous aux sections Gestion de l'accès avec S3 Access Grants pour Amazon EMR dans le Guide de gestion Amazon EMR et Gestion de l'accès avec S3 Access Grants dans le Guide de l'utilisateur d'Amazon Simple Storage Service.
Cette section explique 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 déploiements Amazon EMR, consultez la documentation suivante :
Lancez une application EMR sans serveur avec S3 Access Grants 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é.
-
Configurez un rôle d'exécution de tâche pour votre application EMR Serverless. Incluez les autorisations IAM requises pour exécuter des tâches Spark et utiliser S3 Access Grants,
s3:GetDataAccessets3: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 des rôles IAM pour l'exécution des tâches dotés d'autorisations supplémentaires pour accéder directement à S3, les utilisateurs peuvent accéder aux données autorisées par le rôle même s'ils n'ont pas l'autorisation de S3 Access Grants.
-
Lancez votre application EMR Serverless avec une étiquette de version Amazon EMR 6.15.0 ou supérieure et la
spark-defaultsclassification, comme le montre l'exemple suivant. Remplacez les valeurs danspar les valeurs appropriées pour votre scénario d’utilisation.red textaws emr-serverless start-job-run \ --application-idapplication-id\ --execution-role-arnjob-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, reportez-vous aux considérations relatives aux subventions d'accès S3 avec Amazon EMR dans le guide de gestion Amazon EMR.