기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
타사 쿼리 엔진이 애플리케이션 통합 API 작업을 호출할 수 있는 권한을 활성화합니다.
타사 쿼리 엔진이 AWS Lake Formation 콘솔, AWS CLI 또는 API /를 통해 애플리케이션 통합 API 작업을 호출할 수 있도록 하려면 다음 단계를 따르세요SDK.
- Console
-
외부 데이터 필터링을 위해 계정을 등록하려면:
에 AWS Management Console로그인하고 에서 Lake Formation 콘솔을 엽니다 https://console.aws.amazon.com/lakeformation/
. -
왼쪽 탐색 창에서 관리를 확장한 다음 애플리케이션 통합 설정을 선택합니다.
-
애플리케이션 통합 설정 페이지에서 외부 엔진이 Lake Formation에 등록된 Amazon S3 위치의 데이터를 필터링하도록 허용 옵션을 선택합니다.
-
서드 파티 엔진용으로 생성한 세션 태그를 입력합니다. 세션 태그에 대한 자세한 내용은 AWS Identity and Access Management 사용 설명서의 세션 태그 전달을 참조하십시오. AWS STS
-
타사 엔진을 사용하여 필터링되지 않은 메타데이터 정보와 현재 계정 IDs 내 리소스의 데이터 액세스 자격 증명에 액세스할 수 있는 사용자의 계정을 입력합니다.
AWS 계정 ID 필드를 사용하여 계정 간 액세스를 구성할 수도 있습니다.
- CLI
-
put-data-lake-settings
CLI명령을 사용하여 다음 매개 변수를 설정합니다.이 AWS CLI 명령을 사용할 때 구성할 필드는 세 가지입니다.
-
allow-external-data-filtering
- (부울) 서드 파티 엔진이 현재 계정에 있는 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 보안 인증 정보에 액세스할 수 있음을 나타냅니다. -
external-data-filtering-allow-list
— (배열) 타사 엔진을 사용할 때 현재 계정에 IDs 있는 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 액세스할 수 있는 계정 목록입니다. -
authorized-sessions-tag-value-list
- (배열) 승인된 세션 태그 값(문자열) 목록입니다. 인증된 키-값 쌍으로 IAM 역할 자격 증명을 연결한 경우 세션 태그가 목록에 포함되면 세션은 구성된 계정의 리소스에 대한 필터링되지 않은 메타데이터 정보 및 데이터 액세스 자격 증명에 대한 액세스 권한을 부여받습니다. 승인된 세션 태그 키는*LakeFormationAuthorizedCaller*
로 정의됩니다. -
AllowFullTableExternalDataAccess
- (부울) 호출자에게 전체 데이터 액세스 권한이 있는 경우 서드 파티 쿼리 엔진이 세션 태그 없이 데이터 액세스 보안 인증 정보를 가져올 수 있도록 허용할지 여부입니다.
예:
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
- (부울) 서드 파티 엔진이 현재 계정에 있는 리소스의 필터링되지 않은 메타데이터 정보 및 데이터 액세스 보안 인증 정보에 액세스할 수 있는지를 나타냅니다. -
ExternalDataFilteringAllowList
— (배열) 타사 엔진을 사용하여 현재 계정에 IDs 있는 리소스의 데이터 액세스 자격 증명과 필터링되지 않은 메타데이터 정보에 액세스할 수 있는 계정 목록입니다. -
AuthorizedSectionsTagValueList
- (배열) 승인된 태그 값(문자열) 목록입니다. 권한 있는 태그와 함께 IAM 역할 자격 증명이 첨부된 경우 세션에는 필터링되지 않은 메타데이터 정보와 구성된 계정의 리소스에 대한 데이터 액세스 자격 증명에 대한 액세스 권한이 부여됩니다. 승인된 세션 태그 키는*LakeFormationAuthorizedCaller*
로 정의됩니다. -
AllowFullTableExternalDataAccess
- (부울) 호출자에게 전체 데이터 액세스 권한이 있는 경우 서드 파티 쿼리 엔진이 세션 태그 없이 데이터 액세스 보안 인증 정보를 가져올 수 있도록 허용할지 여부입니다.
예:
//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)); }
-