기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
3단계: 태그 기반 액세스 제어 방법을 사용하여 계정 간 공유 구현
이 섹션에서는 다음과 같은 고급 단계를 안내합니다.
-
LF-태그를 정의하십시오.
-
대상 리소스에 LF-태그를 할당합니다.
-
소비자 계정에 LF-Tag 권한을 부여합니다.
-
소비자 계정에 데이터 권한을 부여합니다.
데이터베이스, 테이블 및 열에
IAMAllowedPrincipals
대한 권한을 취소할 수도 있습니다.공유 테이블에 대한 리소스 링크를 생성합니다.
LF-태그를 생성하여 대상 데이터베이스에 할당합니다.
소비자 계정에 LF-tag 데이터 권한을 부여하십시오.
LF-태그 정의
참고
프로듀서 계정에 로그인한 경우 다음 단계를 완료하기 전에 로그아웃하세요.
https://console.aws.amazon.com/lakeformation/
에서 데이터 레이크 관리자로 프로듀서 계정에 로그인합니다. AWS CloudFormation스택 생성 시 지정한 프로듀서 계정 번호, IAM 사용자 이름 (기본값 DatalakeAdminProducer
), 비밀번호를 사용하세요.Lake Formation 콘솔 (https://console.aws.amazon.com/lakeformation/
) 의 탐색 창의 권한 아래, 관리자 역할 및 작업에서 LF-Tags를 선택합니다. LF-태그 추가를 선택합니다.
대상 리소스에 LF-태그를 할당합니다.
대상 리소스에 LF-태그를 할당하고 다른 계정에 데이터 권한을 부여합니다.
데이터 레이크 관리자는 리소스에 태그를 첨부할 수 있습니다. 별도의 역할을 사용하려는 경우 별도의 역할에 설명 및 연결 권한을 부여해야 할 수 있습니다.
탐색 창의 데이터 카탈로그에서 데이터베이스를 선택합니다.
대상 데이터베이스를
(lakeformation_tutorial_cross_account_database_tbac)
선택하고 작업 메뉴에서 LF-Tag 편집을 선택합니다.이 자습서에서는 데이터베이스에 LF-태그를 할당하지만 테이블과 열에 LF-태그를 할당할 수도 있습니다.
새 LF-태그 할당을 선택합니다.
Confidentiality
키와 값을 추가합니다.public
저장을 선택합니다.
소비자 계정에 LF-Tag 권한을 부여하십시오.
아직 생산자 계정에서 소비자 계정에 LF-태그에 액세스할 수 있는 권한을 부여하십시오.
탐색 창의 권한, 관리자 역할 및 작업, LF-태그 권한에서 허용을 선택합니다.
주도자의 경우 외부 계정을 선택합니다.
대상 AWS 계정 ID를 입력합니다.
AWS 계정동일한 조직 내에서는 자동으로 표시됩니다. 그렇지 않으면 AWS 계정 ID를 수동으로 입력해야 합니다. 이 글을 쓰는 시점에서 Lake Formation 태그 기반 액세스 제어는 조직 또는 조직 단위에 대한 권한 부여를 지원하지 않습니다.
LF 태그의 경우, 소비자 계정과 공유되는 LF 태그의 키와 값 (키 및 값) 을 선택합니다.
Confidentiality
public
권한에서 LF-태그 권한에 대한 설명을 선택합니다.
LF-태그 권한은 소비자 계정에 부여된 권한입니다. 부여 가능한 권한은 소비자 계정이 다른 주체에게 부여할 수 있는 권한입니다.
권한 부여(Grant)를 선택합니다.
이제 소비자 데이터 레이크 관리자는 사용 권한, 관리 역할 및 작업, LF-tag에서 소비자 계정 Lake Formation 콘솔을 통해 공유되는 정책 태그를 찾을 수 있어야 합니다.
소비자 계정에 데이터 권한을 부여하십시오.
이제 LF 태그 식을 지정하고 표현식과 일치하는 모든 테이블 또는 데이터베이스에 대한 액세스 권한을 소비자 계정에 부여하여 소비자 계정에 데이터 액세스를 제공할 예정입니다.
탐색 창의 [권한], [데이터 레이크 권한] 에서 [Grant] 를 선택합니다.
보안 주체의 경우 외부 계정을 선택하고 대상 AWS 계정 ID를 입력합니다.
LF 태그 또는 카탈로그 리소스의 경우 소비자 계정과 공유되는 LF-태그의 키와 값 (키 및 값) 을 선택합니다.
Confidentiality
public
권한의 경우 LF-태그와 일치하는 리소스 (권장) 에서 LF-Tag 추가를 선택합니다.
소비자 계정과 공유되는 태그의 키와 값 (키
Confidentiality
및 값) 을 선택합니다.public
데이터베이스 권한의 경우 데이터베이스 권한에서 설명을 선택하여 데이터베이스 수준에서 액세스 권한을 부여합니다.
소비자 데이터 레이크 관리자는 Lake Formation 콘솔 https://console.aws.amazon.com/lakeformation/
의 권한, 관리자 역할 및 작업, LF-Tag에서 소비자 계정을 통해 공유되는 정책 태그를 찾을 수 있어야 합니다. 소비자 계정이 사용자에게 데이터베이스 수준의 권한을 부여할 수 있도록 허용 가능한 권한에서 설명을 선택합니다.
테이블 및 열 권한의 경우 테이블 권한에서 선택 및 설명을 선택합니다.
부여 가능한 권한에서 선택 및 설명을 선택합니다.
권한 부여(Grant)를 선택합니다.
데이터베이스, 테이블 및 열에 IAMAllowedPrincipals
대한 권한 취소 (선택 사항).
이 자습서의 맨 처음에 Lake Formation 데이터 카탈로그 설정을 변경했습니다. 해당 부분을 건너뛰었다면 이 단계는 필수입니다. Lake Formation 데이터 카탈로그 설정을 변경한 경우 이 단계를 건너뛰어도 됩니다.
이 단계에서는 데이터베이스 또는 테이블의 기본 슈퍼 권한을 취소해야 합니다. IAMAllowedPrincipals
세부 정보는 4단계: 데이터 저장소를 Lake Formation 권한 모델로 전환을 참조하십시오.
권한을 취소하기 전에 Lake IAMAllowedPrincipals
Formation을 통해 기존 IAM 보안 주체에게 필요한 권한을 부여했는지 확인하십시오. 여기에는 세 단계가 포함됩니다.
Lake Formation
GetDataAccess
작업 (IAM 정책 사용) 을 사용하여 대상 IAM 사용자 또는 역할에 IAM 권한을 추가합니다.대상 IAM 사용자 또는 역할에 Lake Formation 데이터 권한 (변경, 선택 등) 을 부여합니다.
그런 다음 에 대한 권한을 취소하십시오.
IAMAllowedPrincipals
그렇지 않으면 에 대한IAMAllowedPrincipals
권한을 취소한 후 기존 IAM 보안 주체가 더 이상 대상 데이터베이스 또는 데이터 카탈로그에 액세스하지 못할 수 있습니다.Lake Formation 권한 모델을 사용하여 단일 계정 내에서 또는 여러 계정 간의 사용자 액세스를 관리하기 위해 IAM 정책 모델 대신 Lake Formation 권한 모델을 적용하려는 경우 슈퍼 권한을 취소해야 합니다.
IAMAllowedPrincipals
기존 IAM 정책 모델을 유지하려는 다른 테이블에IAMAllowedPrincipals
대한 권한을 취소할 필요는 없습니다.이제 소비자 계정 데이터 레이크 관리자는 Lake Formation 콘솔의 https://console.aws.amazon.com/lakeformation/
데이터 카탈로그 데이터베이스에서 소비자 계정을 통해 공유되는 데이터베이스와 테이블을 찾을 수 있어야 합니다. 그렇지 않은 경우 다음이 제대로 구성되었는지 확인하십시오. 대상 데이터베이스 및 테이블에 올바른 정책 태그와 값이 할당됩니다.
올바른 태그 권한 및 데이터 권한이 소비자 계정에 할당됩니다.
데이터베이스 또는 테이블에서 기본 수퍼 권한을 취소합니다.
IAMAllowedPrincipals
공유 테이블에 대한 리소스 링크 생성
계정 간에 리소스가 공유되고 공유 리소스가 소비자 계정의 데이터 카탈로그에 포함되지 않는 경우 Athena와 같은 서비스를 사용하여 공유 테이블의 기본 데이터를 제공하고 쿼리하려면 공유 테이블에 대한 리소스 링크를 만들어야 합니다. 리소스 링크는 로컬 또는 공유 데이터베이스 또는 테이블에 대한 링크인 데이터 카탈로그 개체입니다. 자세한 내용은 리소스 링크 생성을 참조하세요. 리소스 링크를 만들면 다음과 같은 작업을 수행할 수 있습니다.
Data Catalog 리소스 이름 지정 정책에 따라 데이터베이스 또는 테이블에 다른 이름을 할당합니다.
Athena 및 Redshift Spectrum과 같은 서비스를 사용하여 공유 데이터베이스 또는 테이블을 쿼리할 수 있습니다.
리소스 링크를 생성하려면 다음 단계를 완료하세요.
소비자 계정에 로그인한 경우 로그아웃하십시오.
소비자 계정 데이터 레이크 관리자로 로그인합니다. AWS CloudFormation스택 생성 시 지정한 소비자 계정 ID, IAM 사용자 이름 (기본값 DatalakeAdminConsumer) 및 암호를 사용하십시오.
Lake Formation 콘솔 (https://console.aws.amazon.com/lakeformation/
) 의 탐색 창의 데이터 카탈로그, 데이터베이스에서 공유 데이터베이스를 선택합니다 lakeformation_tutorial_cross_account_database_tbac
.데이터베이스가 보이지 않는 경우 이전 단계를 다시 검토하여 모든 항목이 제대로 구성되었는지 확인하세요.
[테이블 보기] 를 선택합니다.
공유 테이블을 선택합니다
amazon_reviews_table_tbac
.작업 메뉴에서 리소스 링크 만들기를 선택합니다.
리소스 링크 이름에 이름을 입력합니다 (이 자습서에서는
amazon_reviews_table_tbac_resource_link
).데이터베이스에서 리소스 링크를 생성할 데이터베이스를 선택합니다 (이 게시물의 경우 AWS CloudFormation n 스택이 데이터베이스를
lakeformation_tutorial_cross_account_database_consumer
생성함).Create(생성)를 선택합니다.
리소스 링크는 데이터 카탈로그, 테이블 아래에 표시됩니다.
LF-태그를 생성하여 대상 데이터베이스에 할당합니다.
Lake Formation 태그는 리소스와 동일한 데이터 카탈로그에 있습니다. 즉, 소비자 계정의 리소스 링크에 대한 액세스 권한을 부여할 때는 생산자 계정에서 생성된 태그를 사용할 수 없습니다. 소비자 계정에서 리소스 링크를 공유할 때 LF 태그 기반 액세스 제어를 사용하려면 소비자 계정에서 별도의 LF-태그 세트를 생성해야 합니다.
소비자 계정에서 LF-태그를 정의하십시오. 이 자습서에서는 키와 값
sales
marketing
,Division
및 를 사용합니다.analyst
리소스 링크가 생성되는 데이터베이스에
lakeformation_tutorial_cross_account_database_consumer
LF-TagDivision
키와 값을analyst
할당합니다.
소비자에게 LF-Tag 데이터 권한을 부여하십시오.
마지막 단계로 소비자에게 LF-태그 데이터 권한을 부여하십시오.
탐색 창의 [권한], [데이터 레이크 권한] 에서 [Grant] 를 선택합니다.
보안 주체의 경우 IAM 사용자 및 역할을 선택하고 사용자를 선택합니다.
DataAnalyst
LF-태그 또는 카탈로그 리소스의 경우 LF-태그와 일치하는 리소스 (권장) 를 선택합니다.
주요 사업부 및 가치 분석가를 선택하세요.
데이터베이스 권한의 경우 데이터베이스 권한에서 설명을 선택합니다.
테이블 및 열 권한의 경우 테이블 권한에서 선택 및 설명을 선택합니다.
권한 부여(Grant)를 선택합니다.
사용자에
DataAnalyst
대해 이 단계를 반복합니다. 여기서 LF-Tag 키는Confidentiality
이고 값은 입니다.public
이제 소비자 계정의 데이터 분석가 사용자는 데이터베이스 및 리소스 링크를 찾고 Athena 콘솔 (https://console.aws.amazon.com/athena/) 을 통해 공유 테이블을 쿼리할 수 있어야 합니다.
그렇지 않은 경우 다음이 제대로 구성되었는지 확인하십시오. 공유 테이블에 대한 리소스 링크가 생성됩니다.
프로듀서 계정에서 공유하는 LF-태그에 대한 액세스 권한을 사용자에게 부여했습니다.
리소스 링크가 생성되는 리소스 링크 및 데이터베이스에 연결된 LF-태그에 대한 액세스 권한을 사용자에게 부여했습니다.
리소스 링크와 리소스 링크가 생성된 데이터베이스에 올바른 LF-태그를 할당했는지 확인하십시오.