

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

# 將 AWS Glue 資源轉換為混合資源
<a name="hybrid-access-mode-new"></a>

請依照下列步驟，在混合存取模式中註冊 Amazon S3 位置，並在不中斷現有 Data Catalog 使用者的資料存取的情況下加入新的 Lake Formation 使用者。

案例描述 - 資料位置未向 Lake Formation 註冊，使用者對 Data Catalog 資料庫和資料表的存取取決於 Amazon S3 和 AWS Glue 動作的 IAM 許可政策。  根據預設， `IAMAllowedPrincipals`群組具有資料庫中所有資料表的`Super`許可。

**為未向 Lake Formation 註冊的資料位置啟用混合存取模式**

1. 

**註冊啟用混合存取模式的 Amazon S3 位置。**

------
#### [ Console ]

   1. 以資料湖管理員身分登入 [Lake Formation 主控台](https://console.aws.amazon.com/lakeformation/)。

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

   1. 選擇**註冊位置**。  
![\[Register location form for Amazon S3 data lake with path input, IAM role selection, and permission mode options.\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/hybrid-access-register-s3.png)

   1. 在**註冊位置**視窗中，選擇您要向 Lake Formation 註冊的 **Amazon S3** 路徑。

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

   1. 選擇**混合存取模式**，將精細的 Lake Formation 存取控制政策套用至指向註冊位置的選擇加入主體和 Data Catalog 資料庫和資料表。 

      選擇 Lake Formation 以允許 Lake Formation 授權對註冊位置的存取請求。 

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

------
#### [ AWS CLI ]

   以下是使用 HybridAccessEnabled：true/false 向 Lake Formation 註冊資料位置的範例。`HybridAccessEnabled` 參數的預設值為 false。以有效值取代 Amazon S3 路徑、角色名稱和 AWS 帳戶 ID。

   ```
   aws lakeformation register-resource --cli-input-json file:file path
   json:
       {
           "ResourceArn": "arn:aws:s3:::s3-path",
           "UseServiceLinkedRole": false,
           "RoleArn": "arn:aws:iam::<123456789012>:role/<role-name>",
           "HybridAccessEnabled": true
       }
   ```

------

1. 

**授予許可並選擇加入主體，以對混合存取模式中的資源使用 Lake Formation 許可**

   在混合存取模式中選擇加入主體和資源之前，請確認 `Super`或 `IAMAllowedPrincipals`群組的`All`許可存在於已在混合存取模式中向 Lake Formation 註冊位置的資料庫和資料表上。
**注意**  
您無法在資料庫中授予 `All tables`的 `IAMAllowedPrincipals` 群組許可。您需要從下拉式選單中分別選取每個資料表，並授予許可。此外，當您在資料庫中建立新資料表時，您可以在**資料目錄設定**`Use only IAM access control for new tables in new databases`中選擇使用 。當您在資料庫中建立新資料表時，此選項會自動將`Super`許可授予 `IAMAllowedPrincipals`群組。

------
#### [ Console ]

   1. 在 Lake Formation 主控台**的資料目錄**下，選擇**目錄**、**資料庫**或**資料表**。

   1. 從清單中選擇目錄、資料庫或資料表，然後從**動作**功能表中選擇**授予**。

   1. 選擇主體，以使用具名資源方法或 LF 標籤授予資料庫、資料表和資料欄的許可。

      或者，選擇**資料許可**，從清單中選擇要授予許可的委託人，然後選擇**授予**。

      如需授予資料許可的詳細資訊，請參閱 [授予 Data Catalog 資源的許可](granting-catalog-permissions.md)。
**注意**  
如果您要授予委託人建立資料表許可，您也需要將資料位置許可 (`DATA_LOCATION_ACCESS`) 授予委託人。更新資料表不需要此許可。  
如需詳細資訊，請參閱[授予資料位置許可](granting-location-permissions.md)。

   1. 當您使用**具名資源方法來**授予許可時，在**授予資料許可**頁面的下一節提供選擇加入委託人和資源的選項。

      選擇**讓 Lake Formation 許可立即生效**，以啟用委託人和資源的 Lake Formation 許可。  
![\[選擇 Data Catalog 資源混合存取模式的選項。\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/hybrid-access-grant-option.png)

   1. 選擇 **Grant** (授予)。

       當您在指向資料位置的資料表 A 上選擇加入委託人 A 時，如果資料位置註冊為混合模式，則允許委託人 A 使用 Lake Formation 許可來存取此資料表的位置。

------
#### [ AWS CLI ]

   以下是在混合存取模式下選擇主體和資料表的範例。將角色名稱、 AWS 帳戶 ID、資料庫名稱和資料表名稱取代為有效值。

   ```
   aws lakeformation create-lake-formation-opt-in --cli-input-json file://file path
   json:
     {
           "Principal": {
               "DataLakePrincipalIdentifier": "arn:aws:iam::<123456789012>:role/<hybrid-access-role>"
           },
           "Resource": {
               "Table": {
                   "CatalogId": "<123456789012>",
                   "DatabaseName": "<hybrid_test>",
                   "Name": "<hybrid_test_table>"
               }
           }
       }
   ```

------

   1. 如果您選擇 LF-Tags 授予許可，您可以選擇讓主體在不同的步驟中使用 Lake Formation 許可。您可以在左側導覽列**的許可**下選擇**混合存取模式**來執行此操作。

   1.  在**混合存取模式**頁面的下區段中，選擇**新增**以將資源和主體新增至混合存取模式。

   1.  在**新增資源和主體**頁面上，選擇在混合存取模式中註冊的目錄、資料庫和資料表。

      您可以在資料庫`All tables`下選擇 以授予存取權。  
![\[在混合存取模式中新增目錄、資料庫和資料表的界面。\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/hybrid-access-opt-in.png)

   1. 選擇主體選擇在混合存取模式中使用 Lake Formation 許可。
      +  **委託人** – 您可以在相同帳戶或其他帳戶中選擇 IAM 使用者和角色。您也可以選擇 SAML 使用者和群組。
      + **屬性** – 根據屬性選取要授予許可的屬性。  
![\[使用屬性表達式新增主體和資源的界面。\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/abac-hybrid-access.png)
      + 輸入鍵/值對，以根據屬性建立授予。在主控台上檢閱 Cedar 政策表達式。如需 Cedar 的詳細資訊，請參閱[什麼是 Cedar？ \$1 Cedar 政策語言參考GuideLink](https://docs.cedarpolicy.com/)。
      + 選擇**新增**。

        具有相符屬性的所有 IAM 角色/使用者都會獲得存取權。

   1. 選擇**新增**。