기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
여러 AWS 계정에 암호화된 Amazon S3 위치 등록
AWS Lake FormationAWS Key Management Service(AWS KMS) 와 통합되어 다른 통합 서비스를 설정하여 Amazon Simple Storage Service (Amazon S3) 위치의 데이터를 암호화 및 해독하도록 보다 쉽게 설정할 수 있습니다.
고객 관리형 키와 둘 다 지원됩니다. AWS 관리형 키 클라이언트 측 암호화/복호화는 지원되지 않습니다.
중요
요청자 지불이 활성화된 Amazon S3 버킷을 등록하지 마십시오. Lake Formation에 등록된 버킷의 경우 버킷을 등록하는 데 사용되는 역할은 항상 요청자로 간주됩니다. 다른 AWS 계정으로 버킷에 액세스하는 경우, 역할이 버킷 소유자와 동일한 계정에 속하면 버킷 소유자에게 데이터 액세스 요금이 부과됩니다.
이 단원에서는 다음과 같은 상황에서 Amazon S3 위치를 등록하는 방법을 설명합니다.
-
Amazon S3 위치의 데이터는 에서 AWS KMS 생성된 KMS 키로 암호화됩니다.
-
Amazon S3 위치는 과 동일한 AWS 계정에 있지 않습니다AWS Glue Data Catalog.
-
KMS 키는 데이터 카탈로그와 동일한 AWS 계정에 있거나 그렇지 않습니다.
계정 A의 AWS Identity and Access Management (IAM) 역할을 사용하여 AWS 계정 B에 AWS KMS 암호화된 Amazon S3 버킷을 등록하려면 다음 권한이 필요합니다. AWS
-
계정 A의 역할은 계정 B의 버킷에 대한 권한을 부여해야 합니다.
-
계정 B의 버킷 정책은 계정 A의 역할에 대한 액세스 권한을 부여해야 합니다.
-
KMS 키가 계정 B에 있는 경우 키 정책은 계정 A의 역할에 대한 액세스 권한을 부여하고, 계정 A의 역할은 KMS 키에 대한 권한을 부여해야 합니다.
다음 절차에서는 데이터 카탈로그가 포함된 AWS 계정에 역할을 생성합니다 (이전 설명에서는 계정 A). 그런 다음 이 역할을 사용하여 위치를 등록합니다. Lake Formation은 Amazon S3의 기본 데이터에 액세스할 때 이 역할을 맡습니다. 위임된 역할에는 KMS 키에 대한 필수 권한이 있습니다. 따라서 ETL 작업이나 다음과 같은 통합 서비스를 통해 기본 데이터에 액세스하는 보안 주체에게 KMS 키에 대한 권한을 부여하지 않아도 됩니다. Amazon Athena
중요
Lake Formation 서비스 연결 역할을 사용하여 다른 계정에 위치를 등록할 수 없습니다. 대신 사용자 정의 역할을 사용해야 합니다. 역할은 의 위치 등록에 사용되는 역할 요구 사항 요구 사항을 충족해야 합니다. 서비스 연결 역할에 대한 자세한 내용은 Lake Formation에 대한 서비스 연결 역할 권한 섹션을 참조하세요.
시작하기 전
위치를 등록하는 데 사용되는 역할의 요구 사항을 검토하십시오.
여러 AWS 계정에서 암호화된 Amazon S3 위치를 등록하려면
-
데이터 카탈로그와 동일한 AWS 계정에서 AWS Management Console 로그인하고 에서 https://console.aws.amazon.com/iam/
IAM 콘솔을 엽니다. -
의 요구 사항을 충족하는 새 역할을 생성하거나 기존 역할을 확인하십시오. 위치 등록에 사용되는 역할 요구 사항 역할에 Amazon S3 위치에 대한 권한을 부여하는 정책이 포함되어 있는지 확인하십시오.
-
KMS 키가 데이터 카탈로그와 동일한 계정에 있지 않은 경우 KMS 키에 필요한 권한을 부여하는 인라인 정책을 역할에 추가하십시오. 다음은 예제 정책입니다.
<cmk-region>및
< cmk-account-id >를 KMS
키의 지역 및 계정 번호로 바꾸십시오. <key-id>키ID로 바꾸십시오.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "arn:aws:kms:
<cmk-region>
:<cmk-account-id>
:key/<key-id>
" } ] } -
Amazon S3 콘솔에서 역할에 필요한 Amazon S3 권한을 부여하는 버킷 정책을 추가합니다. 다음은 버킷 정책의 예입니다.
< catalog-account-id >를
데이터 카탈로그의 AWS 계정 번호,<role-name>역할 이름, <bucket-name>버킷 이름으로 바꾸십시오.
{ "Version": "2012-10-17", "Statement": [ { "Effect":"Allow", "Principal": { "AWS":"arn:aws:iam::
<catalog-account-id>
:role/<role-name>
" }, "Action":"s3:ListBucket", "Resource":"arn:aws:s3:::<bucket-name>
" }, { "Effect":"Allow", "Principal": { "AWS":"arn:aws:iam::<catalog-account-id>
:role/<role-name>
" }, "Action": [ "s3:DeleteObject", "s3:GetObject", "s3:PutObject" ], "Resource":"arn:aws:s3:::<bucket-name>
/*" } ] } -
에서 AWS KMS KMS 키의 사용자로서 역할을 추가합니다.
-
AWS KMS 콘솔(https://console.aws.amazon.com/kms
)을 엽니다. 그런 다음 관리자 사용자 또는 위치를 암호화하는 데 사용된 KMS 키의 키 정책을 수정할 수 있는 사용자로 로그인합니다. -
탐색 창에서 고객 관리 키를 선택한 다음 KMS 키의 이름을 선택합니다.
-
KMS 키 세부 정보 페이지의 키 정책 탭에서 키 정책의 JSON 보기가 표시되지 않는 경우 정책 보기로 전환을 선택합니다.
-
키 정책 섹션에서 [Edit] 를 선택하고 다음 예와 같이 역할의 Amazon 리소스 이름 (ARN) 을
Allow use of the key
객체에 추가합니다.참고
해당 객체가 누락된 경우 예제에 표시된 권한으로 객체를 추가하십시오.
... { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::
<catalog-account-id>
:role/<role-name>
" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, ...자세한 내용은 AWS Key Management Service개발자 안내서의 다른 계정의 사용자에게 KMS 키 사용 허용을
참조하십시오.
-
-
https://console.aws.amazon.com/lakeformation/
에서 AWS Lake Formation 콘솔을 엽니다. 데이터 카탈로그 AWS 계정에 데이터 레이크 관리자로 로그인합니다. -
탐색 패널의 등록 및 수집에서 데이터 레이크 위치를 선택합니다.
-
등록 위치를 선택합니다.
-
위치 등록 페이지에서 Amazon S3 경로에 위치 경로를 로 입력합니다
s3://
. <bucket>버킷 이름으로 바꾸고 <prefix>위치의 나머지<bucket>
/<prefix>
경로로 바꾸십시오.참고
찾아보기를 선택하면 교차 계정 버킷이 목록에 나타나지 않으므로 경로를 입력해야 합니다.
-
IAM 역할의 경우 2단계에서 역할을 선택합니다.
-
등록 위치를 선택합니다.