

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 다른 AWS 계정에 Amazon S3 테이블 버킷 등록
<a name="register-cross-account-s3-table-bucket"></a>

한 AWS 계정의 개별 Amazon S3 테이블 버킷(ARN 형식:`arn:aws:s3tables:us-east-1:account-id:bucket/bucket-name`)을 다른 계정의 Lake Formation에 등록할 수 있습니다. 예를 들어, 계정 A의 테이블 버킷을 계정 B의 Lake Formation에 등록할 수 있습니다.

## 사전 조건
<a name="w2aac13c27c27b5"></a>

교차 계정 버킷 등록을 시작하기 전에 다음을 수행합니다.
+ 계정 A에서 테이블 버킷을 생성합니다.
+ 계정 B에서 버킷 등록에 대한 적절한 권한을 가진 IAM 역할을 생성합니다.

  Lake Formation에 테이블 버킷을 등록하는 데 필요한 권한에 대한 자세한 내용은 [Amazon S3 Tables 카탈로그를 Data Catalog 및 Lake Formation과 통합하기 위한 사전 조건](s3tables-catalog-prerequisites.md) 섹션을 참조하세요.
+ S3 Table 카탈로그를 생성할 계정에 테이블 버킷을 등록합니다.
+  교차 계정 액세스의 경우 테이블 버킷을 등록할 때 지정된 역할은 교차 계정 버킷에 액세스할 수 있는 적절한 권한이 있는 계정 내 역할이어야 합니다. 역할은 버킷 리소스에 액세스하는 데 필요한 S3 Tables IAM 작업이 필요합니다.

## 교차 계정 테이블 버킷 등록
<a name="w2aac13c27c27b7"></a>

다음 절차에서 계정 A는 리소스 소유 계정이고 계정 B는 테이블 버킷이 액세스 권한 관리를 위해 등록되는 곳입니다.

1. 계정 A의 AWS Management Console 에 로그인합니다.

   [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)에서 S3 콘솔을 엽니다.

1.  테이블 버킷을 생성합니다. 자세한 내용은 Amazon S3 사용 설명서의 [테이블 버킷 생성](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-buckets-create.html)을 참조하세요.

1. 계정 B에 테이블 버킷을 등록합니다.

    AWS CLI 를 사용하여 계정 A의 테이블 버킷을 계정 B의 Lake Formation에 등록합니다.

   ```
   aws lakeformation register-resource \
   --resource-arn 'arn:aws:s3tables:us-east-1:account-A-id:bucket/single-bucket-name' \
   --role-arn arn:aws:iam::account-B-id:role/role-name \
   --region us-east-1
   ```

   account-A-id, single-bucket-name, account-B-id 및 role-name을 특정 값으로 바꿉니다.

1. 그런 다음 계정 B의 테이블 버킷에 대한 카탈로그를 생성합니다.

    AWS CLI를 사용하여 카탈로그를 생성합니다.

   ```
   aws glue create-catalog --region us-east-1 \
   --cli-input-json \
   '{
      "Name": "catalog-name",
      "CatalogInput" : {
         "FederatedCatalog": {
            "Identifier": "arn:aws:s3tables:us-east-1:account A:bucket/single-bucket-name",
            "ConnectionName": "aws:s3tables"
         },
         "CreateDatabaseDefaultPermissions": [],
         "CreateTableDefaultPermissions": []      
      }
   }'
   ```

   catalog-name, account-A-id 및 bucket-name을 특정 값으로 바꿉니다.

    다음 CLI 예제에서는 카탈로그의 세부 정보를 확인하는 방법을 보여줍니다.

   ```
    aws glue get-catalog \
     --catalog-id account-id:catalog-name \
     --region us-east-1
   ```

1. 그런 다음 계정 B에서 새로 생성된 카탈로그에 데이터베이스와 테이블을 생성합니다.

   데이터베이스를 생성합니다.

   ```
   aws glue create-database \
     --region us-east-1 \
     --catalog-id "account-B-id:catalog-name" \
     --database-input \
   '{
     "Name": "database-name"
   }'
   ```

    테이블을 생성합니다.

   ```
   aws glue create-table \
     --database-name database-name \
     --catalog-id account-B-id:catalog-name\
     --region us-east-1 \
     --table-input \
     '{
           "Name": "table-name",
           "Parameters": {
               "format": "ICEBERG"
           },
           "StorageDescriptor": {
              "Columns": [
           {"Name": "x", "Type": "int", "Parameters": {"required": "true"}}
             ]
           }
   }'
   ```

   database-name, account-B-id, catalog-name 및 table-name을 특정 값으로 바꿉니다.

1. 다음 예제에서는 카탈로그에서 객체를 확인하는 방법을 보여줍니다.

   데이터베이스 세부 정보를 봅니다.

   ```
   aws glue get-database \
     --name database-name \
     --catalog-id account-B-id:catalog-name \
     --region us-east-1
   ```

   테이블 세부 정보를 봅니다.

   ```
   aws glue get-table \
     --name table-name \
     --database-name database-name \
     --catalog-id account-B-id:catalog-name \
     --region us-east-1
   ```

   database-name, account-B-id, catalog-name 및 table-name을 특정 값으로 바꿉니다.