

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

# 使用混合存取模式共用 Lake Formation 資源
<a name="hybrid-access-mode-cross-account-IAM"></a>

允許外部帳戶中的新 Data Catalog 使用者使用 IAM 型政策存取 Data Catalog 資料庫和資料表，而不會中斷現有的 Lake Formation 跨帳戶共用許可。

案例描述 - 生產者帳戶具有 Lake Formation 受管資料庫和資料表，這些資料庫和資料表會在帳戶層級或 IAM 委託人層級與外部 （消費者） 帳戶共用。資料庫的資料位置已向 Lake Formation 註冊。`IAMAllowedPrincipals` 群組沒有資料庫及其資料表的`Super`許可。

**透過以 IAM 為基礎的政策授予新 Data Catalog 使用者的跨帳戶存取權，而不會中斷現有的 Lake Formation 許可**

1. 

**生產者帳戶設定**

   1. 使用 的角色登入 Lake Formation 主控台`lakeformation:PutDataLakeSettings`。

   1. 在**資料目錄設定**下，`Version 4`選擇**跨帳戶版本設定**。

      如果您目前正在使用版本 1 或 2，請參閱更新至版本 3 [更新跨帳戶資料共用版本設定](optimize-ram.md)的說明。

      從第 3 版升級至第 4 版不需要任何許可政策變更。

   1. 列出您已授予資料庫和資料表主體的許可。如需詳細資訊，請參閱[在 Lake Formation 中檢視資料庫和資料表許可](viewing-permissions.md)。

   1.  選擇加入主體和資源，以授予現有的 Lake Formation 跨帳戶許可。
**注意**  
在將資料位置註冊更新為混合存取模式以授予跨帳戶許可之前，您需要為每個帳戶授予至少一個跨帳戶資料共用。此步驟是更新附加至 AWS RAM 資源共享的 AWS RAM 受管許可的必要步驟。  
2023 年 7 月，Lake Formation 已更新用於共用資料庫和資料表的 AWS RAM 受管許可：  
`arn:aws:ram::aws:permission/AWSRAMLFEnabledGlueAllTablesReadWriteForDatabase` （資料庫層級共享政策）
`arn:aws:ram::aws:permission/AWSRAMLFEnabledGlueTableReadWrite` （資料表層級共享政策） 
在 2023 年 7 月之前進行的跨帳戶許可授予沒有這些更新的 AWS RAM 許可。  
如果您已將跨帳戶許可直接授予委託人，則需要個別將這些許可授予委託人。如果您略過此步驟，存取共用資源的主體可能會收到非法的組合錯誤。

   1. 前往 https：//[https://console.aws.amazon.com/ram/home](https://console.aws.amazon.com/ram/home)。

   1.  AWS RAM 主控台中的**由我共用**索引標籤會顯示您與外部帳戶或委託人共用的資料庫和資料表名稱。

       確定連接至共用資源的許可具有正確的 ARN。

   1. 確認 AWS RAM 共用中的資源處於 `Associated` 狀態。如果狀態顯示為 `Associating`，請等待其進入 `Associated` 狀態。如果狀態變成 `Failed`，請停止並聯絡 Lake Formation 服務團隊。

   1. 在左側導覽列的**許可**下選擇**混合存取模式**，然後選擇**新增**。

   1.  **新增主體和資源**頁面會顯示資料庫和/或資料表，以及有權存取的主體。您可以新增或移除委託人和資源，以進行必要的更新。

   1.  針對要變更為混合存取模式的資料庫和資料表，選擇具有 Lake Formation 許可的主體。選擇資料庫和資料表。

   1.  選擇**新增**以選擇加入主體，以在混合存取模式中強制執行 Lake Formation 許可。

   1.  將`Super`許可授予資料庫和所選資料表`IAMAllowedPrincipals`上的虛擬群組。

   1. 將 Amazon S3 位置 Lake Formation 註冊編輯為混合存取模式。

   1. 使用 Amazon S3 AWS Glue actions 的 IAM 許可政策，授予外部 （消費者） 帳戶中 AWS Glue 使用者的許可。

1. 

**消費者帳戶設定**

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

   1. 前往 https：//[https://console.aws.amazon.com/ram/home](https://console.aws.amazon.com/ram/home)。 AWS RAM 頁面中**與我共用的資源**索引標籤會顯示與您的帳戶共用的資料庫和資料表名稱。

       針對 AWS RAM 共用，請確定連接的許可具有共用 AWS RAM 邀請的正確 ARN。檢查 AWS RAM 共用中的資源是否處於 `Associated` 狀態。如果狀態顯示為 `Associating`，請等待其進入 `Associated` 狀態。如果狀態變成 `Failed`，請停止並聯絡 Lake Formation 服務團隊。

   1.  在 Lake Formation 中建立共用資料庫和/或資料表的資源連結。

   1.  將資源連結和`Grant on target`許可 （在原始共用資源上） 的`Describe`許可授予您 （消費者） 帳戶中的 IAM 主體。

   1. 接下來，在共用資料庫或資料表上為帳戶中的主體設定 Lake Formation 許可。

      在左側導覽列的**許可**下，選擇**混合存取模式**。

   1.  選擇**混合存取模式**頁面下一節中的**新增**，以選擇從生產者帳戶與您共用的主體和資料庫或資料表。

   1.  使用 Amazon S3 AWS Glue actions 的 IAM 許可政策，為您帳戶中 AWS Glue 的使用者授予許可。

   1.  使用 Athena 在資料表上執行個別的範例查詢，以測試使用者的 Lake Formation AWS Glue 許可

      （選用） 針對處於混合存取模式的主體，清除 Amazon S3 的 IAM 許可政策。