타사 쿼리 엔진 등록 - AWS Lake Formation

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

타사 쿼리 엔진 등록

타사 쿼리 엔진이 애플리케이션 통합 API 작업을 사용할 수 있으려면 쿼리 엔진이 사용자를 대신하여 API 작업을 호출할 수 있는 권한을 명시적으로 활성화해야 합니다. 이는 몇 단계만 거치면 됩니다.

  1. AWSLake Formation콘솔, AWS CLI 또는 API/SDK를 통해 애플리케이션 통합 API 작업을 호출할 권한이 필요한 AWS 계정 및 IAM 세션 태그를 지정해야 합니다.

  2. 타사 쿼리 엔진이 계정에서 실행 역할을 맡으면 쿼리 엔진은 타사 엔진을 나타내는 Lake Formation에 등록된 세션 태그를 첨부해야 합니다. Lake Formation이 태그를 사용하여 승인된 엔진에서 요청이 오는지 여부를 검증합니다. 세션 태그에 대한 자세한 내용은 IAM 사용 설명서의 세션 태그를 참조하십시오.

  3. 타사 쿼리 엔진 실행 역할을 설정할 때는 IAM 정책에 다음과 같은 최소 권한 세트가 있어야 합니다.

    { "Version": "2012-10-17", "Statement": {"Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:GetDatabase", "glue:GetDatabases", "glue:CreateDatabase", "glue:GetUserDefinedFunction", "glue:GetUserDefinedFunctions", "glue:GetPartition", "glue:GetPartitions" ], "Resource": "*" } }
  4. 쿼리 엔진 실행 역할에 역할 신뢰 정책을 설정하여 이 역할에 연결할 수 있는 세션 태그 키 값 쌍에 대한 액세스를 세밀하게 제어할 수 있도록 하십시오. 다음 예제에서 이 역할에는 세션 태그 키와 "LakeFormationAuthorizedCaller" 세션 태그 값만 "engine1" 연결할 수 있으며 다른 세션 태그 키 값 쌍은 허용되지 않습니다.

    { "Sid": "AllowPassSessionTags", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/query-execution-role" }, "Action": "sts:TagSession", "Condition": { "StringLike": { "aws:RequestTag/LakeFormationAuthorizedCaller": "engine1" } } }

쿼리 엔진이 사용할 자격 증명을 가져오기 위해 STS: AssumeRole API 작업을 LakeFormationAuthorizedCaller 호출하는 경우 세션 태그가 AssumeRole 요청에 포함되어야 합니다. 반환된 임시 자격 증명을 사용하여 Lake Formation 애플리케이션 통합 API 요청을 할 수 있습니다.

Lake Formation애플리케이션 통합 API 작업을 수행하려면 호출 주체가 IAM 역할이어야 합니다. IAM 역할에는 미리 정해진 값이 등록된 세션 태그가 포함되어야 합니다. Lake Formation 이 태그를 사용하면 Lake Formation 애플리케이션 통합 API 작업을 호출하는 데 사용되는 역할이 그렇게 할 수 있는지 확인할 수 있습니다.