AWS Lake Formation-관리형 데이터 공유
Amazon Redshift를 사용하면 AWS Lake Formation 관리형 데이터 공유를 통해 AWS 계정 및 Amazon Redshift 클러스터 전반에서 실시간 데이터에 액세스하고 공유할 수 있습니다. AWS Lake Formation 데이터 공유에서는 데이터 공급자가 다른 AWS 계정 및 Amazon Redshift 클러스터를 포함한 모든 소비자와 Amazon S3 데이터 레이크의 실시간 데이터를 안전하게 공유하도록 지원합니다.
AWS Lake Formation을 사용하면 Amazon Redshift 데이터 공유의 데이터베이스, 테이블, 열 및 행 수준 액세스 권한을 중앙에서 정의 및 적용하고 데이터 공유 내의 객체에 대한 사용자 액세스를 제한할 수 있습니다. Lake Formation을 통해 데이터를 공유하면 Lake Formation에서 권한을 정의하고 해당 권한을 모든 데이터 공유 및 해당 객체에 적용할 수 있습니다. 예를 들어 직원 정보가 포함된 테이블이 있는 경우 Lake Formation의 열 수준 필터를 사용하여 HR 부서에서 일하지 않는 직원이 주민등록번호와 같은 개인 식별 정보(PII)를 보지 못하도록 할 수 있습니다. 데이터 필터에 대한 자세한 내용은 AWS Lake Formation 개발자 안내서의 Lake Formation에서 데이터 필터링 및 셀 수준 보안을 참조하세요.
Lake Formation의 태그를 사용하여 Lake Formation 리소스에 대한 권한을 구성할 수도 있습니다. 자세한 내용은 Lake Formation 태그 기반 액세스 제어를 참조하세요.
Amazon Redshift는 현재 동일한 계정 내에서 또는 계정 간에 공유할 때 Lake Formation을 통한 데이터 공유를 지원합니다. 현재 교차 리전 공유는 지원되지 않습니다.
다음은 Lake Formation을 사용하여 데이터 공유 권한을 제어하는 방법에 대한 높은 수준의 개요입니다.
Amazon Redshift에서 생산자 클러스터 또는 작업 그룹 관리자는 생산자 클러스터 또는 작업 그룹에 데이터 공유를 생성하고 Lake Formation 계정에 사용 권한을 부여합니다.
생산자 클러스터 또는 작업 그룹 관리자는 데이터 공유에 액세스할 수 있도록 Lake Formation 계정에 권한을 부여합니다.
Lake Formation 관리자는 데이터 공유를 검색하고 등록합니다. 또한 액세스 권한이 있는 AWS Glue ARN을 검색하고 데이터 공유를 AWS Glue Data Catalog ARN과 연결해야 합니다. AWS CLI를 사용하는 경우 Redshift CLI 작업
describe-data-shares
및associate-data-share-consumer
를 통해 데이터 공유를 검색 및 수락할 수 있습니다. 데이터 공유를 등록하려면 Lake Formation CLI 작업register-resource
를 사용하세요.Lake Formation 관리자는 AWS Glue Data Catalog에 페더레이션 데이터베이스를 생성하고 데이터 공유 내의 객체에 대한 사용자 액세스를 제어하도록 Lake Formation 권한을 구성합니다. AWS Glue의 페더레이션 데이터베이스에 대한 자세한 내용은 Amazon Redshift 데이터 공유의 데이터에 대한 권한 관리를 참조하세요.
Lake Formation 관리자는 액세스 권한이 있는 AWS Glue 데이터베이스를 검색하고 데이터 공유를 AWS Glue Data Catalog ARN과 연결합니다.
Redshift 관리자는 액세스 권한이 있는 AWS Glue 데이터베이스 ARN을 검색하고, AWS Glue 데이터베이스 ARN을 사용하여 Amazon Redshift 소비자 클러스터에 외부 데이터베이스를 생성하며, IAM 보안 인증 정보로 인증된 데이터베이스 사용자에게 Amazon Redshift 데이터베이스 쿼리를 시작할 수 있는 사용 권한을 부여합니다.
데이터베이스 사용자는 SVV_EXTERNAL_TABLES 및 SVV_EXTERNAL_COLUMNS 뷰를 사용하여 액세스 권한이 있는 AWS Glue 데이터베이스 내의 모든 테이블 또는 열을 찾은 다음 AWS Glue 데이터베이스의 테이블을 쿼리할 수 있습니다.
생산자 클러스터 또는 작업 그룹 관리자가 더 이상 소비자 클러스터와 데이터를 공유하지 않기로 결정하면 생산자 클러스터 관리자는 Redshift로부터 데이터 공유의 사용 권한을 취소하거나, 데이터 공유를 인증 해제 또는 삭제할 수 있습니다. Lake Formation의 연결된 권한 및 객체는 자동으로 삭제되지 않습니다.
생산자 클러스터 또는 작업 그룹 관리자로서 AWS Lake Formation과 데이터 공유를 공유하는 방법에 대한 자세한 내용은 생산자로서 Lake Formation에서 관리하는 데이터 공유 사용 섹션을 참조하세요. 생산자 클러스터 또는 작업 그룹의 공유 데이터를 사용하려면 소비자로서 Lake Formation에서 관리하는 데이터 공유 사용 섹션을 참조하세요.
Amazon Redshift와 함께 AWS Lake Formation을 사용할 때의 고려 사항 및 제한 사항
다음은 Lake Formation을 통해 Amazon Redshift 데이터를 공유할 때 고려해야 할 사항과 제한 사항입니다. 데이터 공유 고려 사항 및 제한 사항에 대한 자세한 내용은 Amazon Redshift에서 데이터 공유를 사용할 때의 고려 사항을 참조하세요. Lake Formation 제한에 대한 자세한 내용은 Lake Formation에서의 Amazon Redshift 데이터 공유 작업에 대한 참고 사항을 참조하세요.
-
리전 간 Lake Formation에 데이터 공유를 공유하는 것은 현재 지원되지 않습니다.
-
공유 관계에서 사용자에 대해 열 수준 필터가 정의된 경우
SELECT *
작업을 수행하면 사용자가 액세스할 수 있는 열만 반환됩니다. -
Lake Formation의 셀 수준 필터는 지원되지 않습니다.
-
뷰 및 해당 테이블을 생성하고 Lake Formation에 공유한 경우 테이블 액세스를 관리하도록 필터를 구성할 수 있으며, 소비자 클러스터 사용자가 공유 객체에 액세스하는 경우 Amazon Redshift가 Lake Formation에 정의된 정책을 적용합니다. 사용자가 Lake Formation과 공유된 뷰에 액세스하면 Redshift는 뷰에 정의된 Lake Formation 정책만 적용하고 뷰에 포함된 테이블에 정의된 정책은 적용하지 않습니다. 그러나 사용자가 테이블에 직접 액세스하면 Redshift는 정의된 Lake Formation 정책을 테이블에 적용합니다.
-
공유 테이블에 Lake Formation 필터가 구성된 경우 공유 테이블을 기반으로 소비자에 구체화된 뷰를 생성할 수 없습니다.
-
Lake Formation 관리자에게는 데이터 레이크 관리자 권한과 데이터 공유를 수락하는 데 필요한 권한이 있어야 합니다.
-
생산자 소비자 클러스터가 Lake Formation을 통해 데이터 공유를 공유하려면 최신 Amazon Redshift 클러스터 버전 또는 서버리스 작업 그룹이 포함된 RA3 클러스터여야 합니다.
-
생산자 클러스터와 소비자 클러스터를 모두 암호화해야 합니다.
-
생산자 클러스터 또는 작업 그룹에 구현된 Redshift 행 수준 및 열 수준 액세스 제어 정책은 데이터 공유가 Lake Formation에 공유될 때 무시됩니다. Lake Formation 관리자는 Lake Formation에서 이러한 정책을 구성해야 합니다. 생산자 클러스터 또는 작업 그룹 관리자는 ALTER TABLE 명령을 사용하여 테이블에 대한 RLS를 끌 수 있습니다.
-
Lake Formation을 통한 데이터 공유는 Redshift와 Lake Formation에 모두 액세스할 수 있는 사용자만 사용할 수 있습니다.