기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
타사 쿼리 엔진이 애플리케이션 통합 API 작업을 호출할 수 있는 권한을 활성화합니다.
타사 쿼리 엔진이 AWS Lake Formation 콘솔, AWS CLI 또는 API/SDK를 통해 애플리케이션 통합 API 작업을 호출할 수 있도록 하려면 다음 단계를 따르세요.
- Console
-
외부 데이터 필터링을 위해 계정을 등록하려면:
에 AWS Management Console 로그인하고 https://console.aws.amazon.com/lakeformation/
에서 Lake Formation 콘솔을 엽니다. -
왼쪽 탐색 창에서 권한을 확장한 다음 애플리케이션 통합 설정을 선택합니다.
-
애플리케이션 통합 설정 페이지에서 외부 엔진이 등록된 Amazon S3 위치의 데이터를 필터링하도록 허용 옵션을 선택합니다Lake Formation.
-
타사 엔진용으로 생성한 세션 태그를 입력합니다. 세션 태그에 대한 자세한 내용은 AWS Identity and Access Management사용 설명서의 AWSSTS에서의 세션 태그 전달을 참조하십시오.
-
타사 엔진을 사용하여 필터링되지 않은 메타데이터 정보와 현재 계정 내 리소스의 데이터 액세스 자격 증명에 액세스할 수 있는 사용자의 계정 ID를 입력합니다.
AWS계정 ID 필드를 사용하여 계정 간 액세스를 구성할 수도 있습니다.
- CLI
-
put-data-lake-settings
CLI 명령을 사용하여 다음 파라미터를 설정합니다.이 AWS CLI 명령을 사용할 때 구성할 필드는 세 가지입니다.
-
allow-external-data-filtering
— (boolean) 타사 엔진이 현재 계정에 있는 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 액세스할 수 있음을 나타냅니다. -
external-data-filtering-allow-list
— (배열) 타사 엔진을 사용할 때 현재 계정에 있는 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 액세스할 수 있는 계정 ID 목록입니다. -
authorized-sessions-tag-value-list
— (배열) 승인된 세션 태그 값 (문자열) 목록. IAM 역할 자격 증명이 승인된 키-값 쌍과 연결된 경우, 세션 태그가 목록에 포함되면 세션은 구성된 계정의 리소스에 대한 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 대한 액세스 권한을 부여받습니다. 승인된 세션 태그 키는 다음과 같이 정의됩니다.*LakeFormationAuthorizedCaller*
-
AllowFullTableExternalDataAccess
- (boolean) 호출자에게 전체 데이터 액세스 권한이 있는 경우 타사 쿼리 엔진이 세션 태그 없이 데이터 액세스 자격 증명을 가져올 수 있도록 허용할지 여부.
예:
aws lakeformation put-data-lake-settings --cli-input-json file://datalakesettings.json { "DataLakeSettings": { "DataLakeAdmins": [ { "DataLakePrincipalIdentifier": "arn:aws:iam::111111111111:user/lakeAdmin" } ], "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [], "TrustedResourceOwners": [], "AllowExternalDataFiltering": true, "ExternalDataFilteringAllowList": [ {"DataLakePrincipalIdentifier": "111111111111"} ], "AuthorizedSessionTagValueList": ["engine1"] } "AllowFullTableExternalDataAccess": false }
-
- API/SDK
-
PutDataLakeSetting
API 작업을 사용하여 다음 파라미터를 설정합니다.이 API 작업을 사용할 때 구성할 필드는 세 가지입니다.
-
AllowExternalDataFiltering
— (Boolean) 타사 엔진이 현재 계정 내 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 액세스할 수 있는지 여부를 나타냅니다. -
ExternalDataFilteringAllowList
— (배열) 타사 엔진을 사용하여 현재 계정에 있는 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 액세스할 수 있는 계정 ID 목록입니다. -
AuthorizedSectionsTagValueList
— (배열) 승인된 태그 값 (문자열) 목록. IAM 역할 자격 증명에 승인된 태그가 첨부된 경우 세션에는 필터링되지 않은 메타데이터 정보와 구성된 계정의 리소스에 대한 데이터 액세스 자격 증명에 대한 액세스 권한이 부여됩니다. 승인된 세션 태그 키는 로 정의됩니다.*LakeFormationAuthorizedCaller*
-
AllowFullTableExternalDataAccess
- (boolean) 호출자에게 전체 데이터 액세스 권한이 있는 경우 타사 쿼리 엔진이 세션 태그 없이 데이터 액세스 자격 증명을 가져올 수 있도록 허용할지 여부.
예:
//Enable session tag on existing data lake settings public void sessionTagSetUpForExternalFiltering(AWSLakeFormationClient lakeformation) { GetDataLakeSettingsResult getDataLakeSettingsResult = lfClient.getDataLakeSettings(new GetDataLakeSettingsRequest()); DataLakeSettings dataLakeSettings = getDataLakeSettingsResult.getDataLakeSettings(); //set account level flag to allow external filtering dataLakeSettings.setAllowExternalDataFiltering(true); //set account that are allowed to call credential vending or Glue GetFilteredMetadata API List<DataLakePrincipal> allowlist = new ArrayList<>(); allowlist.add(new DataLakePrincipal().withDataLakePrincipalIdentifier("111111111111")); dataLakeSettings.setWhitelistedForExternalDataFiltering(allowlist); //set registered session tag values List<String> registeredTagValues = new ArrayList<>(); registeredTagValues.add("engine1"); dataLakeSettings.setAuthorizedSessionTagValueList(registeredTagValues); lakeformation.putDataLakeSettings(new PutDataLakeSettingsRequest().withDataLakeSettings(dataLakeSettings)); }
-