

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 註冊加密的 Amazon S3 位置
<a name="register-encrypted"></a>

Lake Formation 與 [AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)(AWS KMS) 整合，可讓您更輕鬆地設定其他整合服務，以加密和解密 Amazon Simple Storage Service (Amazon S3) 位置中的資料。

 AWS 受管金鑰 支援客戶受管 AWS KMS keys 和 。目前，只有 Athena 才支援用戶端加密/解密。

註冊 Amazon S3 位置時，您必須指定 AWS Identity and Access Management (IAM) 角色。對於加密的 Amazon S3 位置，角色必須具有使用 加密和解密資料的許可 AWS KMS key，或者 KMS 金鑰政策必須將金鑰的許可授予角色。

**重要**  
避免註冊已啟用**申請者付款**的 Amazon S3 儲存貯體。對於向 Lake Formation 註冊的儲存貯體，用於註冊儲存貯體的角色一律會被視為申請者。如果儲存貯體是由另一個 AWS 帳戶存取，則如果角色屬於與儲存貯體擁有者相同的帳戶，則會向儲存貯體擁有者收取資料存取費用。

Lake Formation 使用服務連結角色來註冊您的資料位置。不過，此角色有數個[限制](service-linked-role-limitations.md)。由於這些限制，我們建議您建立和使用自訂 IAM 角色，以增加靈活性和控制能力。您為註冊位置而建立的自訂角色必須符合 中指定的要求[用於註冊位置的角色需求](registration-role.md)。

**重要**  
如果您使用 AWS 受管金鑰 來加密 Amazon S3 位置，則無法使用 Lake Formation 服務連結角色。您必須使用自訂角色，並將金鑰的 IAM 許可新增至角色。本節稍後將提供詳細資訊。

下列程序說明如何註冊使用客戶受管金鑰或 加密的 Amazon S3 位置 AWS 受管金鑰。
+ [註冊使用客戶受管金鑰加密的位置](#proc-register-cust-cmk)
+ [使用 註冊加密的位置 AWS 受管金鑰](#proc-register-aws-cmk)

**開始之前**  
檢閱[用於註冊位置的角色需求](registration-role.md)。<a name="proc-register-cust-cmk"></a>

**註冊使用客戶受管金鑰加密的 Amazon S3 位置**
**注意**  
如果 KMS 金鑰或 Amazon S3 位置不在與 Data Catalog 相同的 AWS 帳戶中，請[跨 AWS 帳戶註冊加密的 Amazon S3 位置](register-cross-encrypted.md)改為遵循 中的指示。

1. 在 [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms)：// 開啟 AWS KMS 主控台，並以 AWS Identity and Access Management (IAM) 管理使用者或可修改用於加密位置之 KMS 金鑰的金鑰政策的使用者身分登入。

1. 在導覽窗格中，選擇**客戶受管金鑰**，然後選擇所需 KMS 金鑰的名稱。

1. 在 KMS 金鑰詳細資訊頁面上，選擇**金鑰政策**索引標籤，然後執行下列其中一項操作，將自訂角色或 Lake Formation 服務連結角色新增為 KMS 金鑰使用者：
   + **如果顯示預設檢視 **（使用**金鑰管理員**、**金鑰刪除**、**金鑰使用者****和其他 AWS 帳戶**區段） – 在**金鑰使用者**區段下，新增您的自訂角色或 Lake Formation 服務連結角色 `AWSServiceRoleForLakeFormationDataAccess`。
   + **如果顯示金鑰政策 (JSON)** – 編輯政策，將自訂角色或 Lake Formation 服務連結角色新增至`AWSServiceRoleForLakeFormationDataAccess`物件「允許使用金鑰」，如下列範例所示。
**注意**  
如果該物件遺失，請使用範例所示的許可新增物件。此範例使用 服務連結角色。

     ```
             ...
             {
                 "Sid": "Allow use of the key",
                 "Effect": "Allow",
                 "Principal": {
                     "AWS": [
                         "arn:aws:iam::111122223333:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess",
                         "arn:aws:iam::111122223333:user/keyuser"
                     ]
                 },
                 "Action": [
                     "kms:Encrypt",
                     "kms:Decrypt",
                     "kms:ReEncrypt*",
                     "kms:GenerateDataKey*",
                     "kms:DescribeKey"
                 ],
                 "Resource": "*"
             },
             ...
     ```

1. 在 https：//[https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/) 開啟 AWS Lake Formation 主控台。使用 IAM `lakeformation:RegisterResource` 許可以資料湖管理員或使用者身分登入。

1. 在導覽窗格的**管理**下，選擇**資料湖位置**。

1. 選擇**註冊位置**，然後選擇**瀏覽**以選取 Amazon Simple Storage Service (Amazon S3) 路徑。

1. （選用，但強烈建議） 選擇**檢閱位置許可**，以檢視所選 Amazon S3 位置中的所有現有資源清單及其許可。

   註冊選取的位置可能會導致 Lake Formation 使用者存取該位置已有的資料。檢視此清單可協助您確保現有資料保持安全。

1. 針對 **IAM 角色**，選擇符合 `AWSServiceRoleForLakeFormationDataAccess`的服務連結角色 （預設） 或您的自訂角色[用於註冊位置的角色需求](registration-role.md)。

1. 選擇**註冊位置**。

如需服務連結角色的詳細資訊，請參閱[Lake Formation 的服務連結角色許可](service-linked-roles.md#service-linked-role-permissions)。<a name="proc-register-aws-cmk"></a>

**註冊使用 加密的 Amazon S3 位置 AWS 受管金鑰**
**重要**  
如果 Amazon S3 位置不在與 Data Catalog 相同的 AWS 帳戶中，[跨 AWS 帳戶註冊加密的 Amazon S3 位置](register-cross-encrypted.md)請改為遵循 中的指示。

1. 建立用於註冊位置的 IAM 角色。確保其符合 中列出的要求[用於註冊位置的角色需求](registration-role.md)。

1. 將下列內嵌政策新增至角色。它會將金鑰的許可授予角色。`Resource` 規格必須指定 的 Amazon Resource Name (ARN) AWS 受管金鑰。您可以從 AWS KMS 主控台取得 ARN。若要取得正確的 ARN，請確定您使用 AWS 受管金鑰 與用來加密位置的 相同的 AWS 帳戶和區域登入 AWS KMS 主控台。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "kms:Encrypt",
           "kms:Decrypt",
           "kms:ReEncrypt*",
           "kms:GenerateDataKey*",
           "kms:DescribeKey"
         ],
         "Resource": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
       }
     ]
   }
   ```

------

   您可以使用 KMS 金鑰別名，而不是金鑰 ID - `arn:aws:kms:region:account-id:key/alias/your-key-alias`

   如需詳細資訊，請參閱《 AWS Key Management Service 開發人員指南[》中的 中的別名 AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html)一節。

1. 在 https：//[https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/) 開啟 AWS Lake Formation 主控台。使用 IAM `lakeformation:RegisterResource` 許可以資料湖管理員或使用者身分登入。

1. 在導覽窗格的**管理**下，選擇**資料湖位置**。

1. 選擇**註冊位置**，然後選擇**瀏覽**以選取 Amazon S3 路徑。

1. （選用，但強烈建議） 選擇**檢閱位置許可**，以檢視所選 Amazon S3 位置中的所有現有資源清單及其許可。

   註冊選取的位置可能會導致 Lake Formation 使用者存取該位置已有的資料。檢視此清單可協助您確保現有資料保持安全。

1. 針對 **IAM 角色**，選擇您在步驟 1 中建立的角色。

1. 選擇**註冊位置**。