열 통계를 생성하거나 업데이트하기 위해 통계 생성 작업은 사용자를 대신하여 AWS Identity and Access Management(IAM) 역할을 수임합니다. 역할에 부여된 권한에 따라 열 통계 생성 작업은 Amazon S3 데이터 스토어에서 데이터를 읽을 수 있습니다.
열 통계 생성 작업을 구성하면 AWS Glue에서 AWSGlueServiceRole
AWS 관리형 정책과 지정된 데이터 소스에 대한 필수 인라인 정책을 포함하는 역할 생성을 허용합니다.
열 통계 생성에 대한 기존 역할을 지정하는 경우 AWSGlueServiceRole
정책 또는 이에 상응하는 것(또는 이 정책의 범위가 축소된 버전)과 필수 인라인 정책이 포함되어 있는지 확인합니다. 새 IAM 역할을 생성하려면 다음 단계를 수행합니다.
참고
Lake Formation에서 관리하는 테이블에 대한 통계를 생성하려면 통계 생성에 사용되는 IAM 역할에 전체 테이블 액세스 권한이 필요합니다.
열 통계 생성 작업을 구성하면 AWS Glue에서 AWSGlueServiceRole
AWS 관리형 정책과 지정된 데이터 소스에 대한 필수 인라인 정책을 포함하는 역할 생성을 허용합니다. 역할을 생성하고 아래 정책에 나열된 권한에 연결한 후 열 통계 생성 작업에 추가할 수도 있습니다.
열 통계 생성을 위한 IAM 역할을 생성하는 방법
-
IAM 역할을 생성하려면 AWS Glue의 IAM 역할 생성을 참조하십시오.
-
기존 역할을 업데이트하려면 IAM 콘솔에서 열 통계 생성 프로세스에 사용되는 IAM 역할로 이동합니다.
-
권한 추가 탭에서 정책 연결을 선택합니다. 새로 열린 브라우저 창에서
AWSGlueServiceRole
AWS 관리형 정책을 선택합니다. -
Amazon S3 데이터 위치에서 데이터를 읽을 수 있는 권한도 포함해야 합니다.
권한 추가 섹션에서 정책 생성을 선택합니다. 새로 열린 브라우저 창에서 역할에 사용할 새 정책을 생성합니다.
-
정책 생성 페이지에서 JSON 탭을 선택합니다. 다음
JSON
코드를 정책 편집기 필드에 복사합니다.참고
다음 정책에서는 계정 ID를 유효한 AWS 계정로 바꾸고,
region
을 테이블의 리전으로,bucket-name
을 Amazon S3 버킷 이름으로 바꿉니다.{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3BucketAccess", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
<bucket-name>
/*", "arn:aws:s3:::<bucket-name>
" ] } ] } (선택 사항) Lake Formation 권한을 사용하여 데이터에 대한 액세스를 제공하는 경우 IAM 역할에
lakeformation:GetDataAccess
권한이 필요합니다.{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccess", "Effect": "Allow", "Action": "lakeformation:GetDataAccess", "Resource": [ "*" ] } ] }
Amazon S3 데이터 위치가 Lake Formation에 등록되어 있고 열 통계 생성 작업이 맡는 IAM 역할에 테이블에 대한
IAM_ALLOWED_PRINCIPALS
그룹 권한이 부여되지 않은 경우, 이 역할에는 Lake FormationALTER
와 테이블에 대한DESCRIBE
권한이 필요합니다. Amazon S3 버킷을 등록하는 데 사용되는 역할에는 테이블에 대한 Lake FormationINSERT
및DELETE
권한이 필요합니다.Amazon S3 데이터 위치가 Lake Formation에 등록되지 않았고 IAM 역할에 테이블에 대한
IAM_ALLOWED_PRINCIPALS
그룹 권한이 부여되지 않은 경우, 해당 역할에는 테이블에 대한 Lake FormationALTER
,DESCRIBE
,INSERT
,DELETE
권한이 필요합니다.-
카탈로그 수준
Automatic statistics generation
옵션을 활성화한 경우 IAM 역할에는 기본 Data Catalog에 대한glue:UpdateCatalog
권한 또는 Lake FormationALTER CATALOG
권한이 있어야 합니다.GetCatalog
작업을 사용하여 카탈로그 속성을 확인할 수 있습니다. -
(선택 사항) 암호화된 Amazon CloudWatch Logs을 기록하는 열 통계 생성 작업에는 키 정책 내 다음 권한이 있어야 합니다.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "CWLogsKmsPermissions", "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:AssociateKmsKey" ], "Resource": [ "arn:aws:logs:
<region>
:111122223333
:log-group:/aws-glue:*" ] }, { "Sid": "KmsPermissions", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt", "kms:Encrypt" ], "Resource": [ "arn:aws:kms:<region>
:111122223333
:key/"arn of key used for ETL cloudwatch encryption
" ], "Condition": { "StringEquals": { "kms:ViaService": ["glue.<region>
.amazonaws.com"] } } } ] } -
열 통계를 실행하는 데 사용하는 역할에는 해당 역할에 대한
iam:PassRole
권한이 있어야 합니다.{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::
111122223333
:role/<columnstats-role-name>
" ] }] } -
열 통계 생성을 위한 IAM 역할을 생성할 때 해당 역할에는 서비스가 역할을 수임할 수 있도록 하는 다음과 같은 신뢰 정책도 포함되어야 합니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "TrustPolicy", "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole", } ] }