Ruoli Job Runtime per Amazon EMR Serverless - Amazon EMR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Ruoli Job Runtime per Amazon EMR Serverless

È possibile specificare le autorizzazioni di IAM ruolo che l'esecuzione di un job EMR Serverless può assumere quando si chiamano altri servizi per conto dell'utente. Ciò include l'accesso ad Amazon S3 per qualsiasi fonte di dati, destinazione e altre AWS risorse come i cluster Amazon Redshift e le tabelle DynamoDB. Per ulteriori informazioni su come creare un ruolo, consulta. Creare un ruolo di job runtime

Esempi di politiche di runtime

È possibile allegare una policy di runtime, come la seguente, a un ruolo di job runtime. La seguente politica di esecuzione dei processi consente di:

  • Accesso in lettura ai bucket Amazon S3 con esempi. EMR

  • Accesso completo ai bucket S3.

  • Crea e leggi l'accesso a AWS Glue Data Catalog.

Per aggiungere l'accesso ad altre AWS risorse come DynamoDB, dovrai includere le relative autorizzazioni nella policy al momento della creazione del ruolo di runtime.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadAccessForEMRSamples", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::*.elasticmapreduce", "arn:aws:s3:::*.elasticmapreduce/*" ] }, { "Sid": "FullAccessToS3Bucket", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "GlueCreateAndReadDataCatalog", "Effect": "Allow", "Action": [ "glue:GetDatabase", "glue:CreateDatabase", "glue:GetDataBases", "glue:CreateTable", "glue:GetTable", "glue:UpdateTable", "glue:DeleteTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:CreatePartition", "glue:BatchCreatePartition", "glue:GetUserDefinedFunctions" ], "Resource": ["*"] } ] }

Passa i privilegi di ruolo

Puoi allegare politiche di IAM autorizzazione al ruolo di un utente per consentire all'utente di assegnare solo ruoli approvati. Ciò consente agli amministratori di controllare quali utenti possono trasferire ruoli di job runtime specifici ai job EMR Serverless. Per ulteriori informazioni sull'impostazione delle autorizzazioni, vedere Concessione a un utente delle autorizzazioni per passare un ruolo a un servizio. AWS

Di seguito è riportato un esempio di policy che consente di passare un ruolo di job runtime al responsabile del servizio EMR Serverless.

{ "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::1234567890:role/JobRuntimeRoleForEMRServerless", "Condition": { "StringLike": { "iam:PassedToService": "emr-serverless.amazonaws.com" } } }

Politiche di autorizzazione gestite associate ai ruoli di runtime

Quando si inviano le esecuzioni di job a EMR serverless tramite la console EMR Studio, in un passaggio si sceglie un ruolo di Runtime da associare all'applicazione. A ciascuna selezione nella console sono associate politiche gestite sottostanti di cui è importante essere consapevoli. Le tre selezioni sono le seguenti:

  1. Tutti i bucket: quando scegli questa opzione, specifica la politica FullAccess AWS gestita di AmazonS3, che fornisce l'accesso completo a tutti i bucket.

  2. Bucket specifici: specifica l'identificatore Amazon resource name (ARN) di ogni bucket scelto. Non è inclusa una politica gestita sottostante.

  3. Nessuna: non sono incluse le autorizzazioni relative alle policy gestite.

Ti consigliamo di aggiungere bucket specifici. Se scegli tutti i bucket, tieni presente che imposta l'accesso completo per tutti i bucket.