Amazon EMR Serverless의 작업 런타임 역할 - Amazon EMR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon EMR Serverless의 작업 런타임 역할

사용자를 대신하여 다른 서비스를 호출할 때 EMR 서버리스 작업 실행이 수임할 수 있는 IAM 역할 권한을 지정할 수 있습니다. 여기에는 모든 데이터 소스, 대상 및 Amazon Redshift 클러스터 및 DynamoDB 테이블과 같은 기타 AWS 리소스에 대한 Amazon S3에 대한 액세스가 포함됩니다. 역할을 생성하는 방법에 대해 자세히 알아보려면 작업 런타임 역할 생성 섹션을 참조하세요.

샘플 런타임 정책

다음과 같은 런타임 정책을 작업 런타임 역할에 연결할 수 있습니다. 다음 작업 런타임 정책은 다음을 허용합니다.

  • EMR 샘플이 있는 Amazon S3 버킷에 대한 읽기 액세스.

  • S3 버킷에 대한 전체 액세스.

  • AWS Glue 데이터 카탈로그에 대한 액세스 권한을 생성하고 읽습니다.

DynamoDB와 같은 다른 AWS 리소스에 대한 액세스를 추가하려면 런타임 역할을 생성할 때 정책에 해당 리소스에 대한 권한을 포함해야 합니다.

{ "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": ["*"] } ] }

역할 권한 전달

IAM 권한 정책을 사용자의 역할에 연결하여 사용자가 승인된 역할만 전달할 수 있도록 허용할 수 있습니다. 이를 통해 관리자는 특정 작업 런타임 역할을 EMR Serverless 작업에 전달할 수 있는 사용자를 제어할 수 있습니다. 권한 설정에 대한 자세한 내용은 AWS 사용자에게 서비스에 역할을 전달할 수 있는 권한 부여를 참조하세요.

다음은 EMR Serverless 서비스 보안 주체에게 작업 런타임 역할을 전달하도록 허용하는 정책 예제입니다.

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