

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

# 使用 AWS Glue和 Lake Formation 管理跨帳戶許可
<a name="hybrid-cross-account"></a>

您可以使用 AWS Glue或 授予 Data Catalog 資源和基礎資料的跨帳戶存取權 AWS Lake Formation。

在 中AWS Glue，您可以透過建立或更新 Data Catalog 資源政策來授予跨帳戶許可。在 Lake Formation 中，您可以使用 Lake Formation 許可模型和 `Grant Permissions` API 操作來授予跨帳戶`GRANT/REVOKE`許可。

**提示**  
我們建議僅依賴 Lake Formation 許可來保護您的資料湖。

您可以使用 Lake Formation 主控台或 AWS Resource Access Manager (AWS RAM) 主控台來檢視 Lake Formation 跨帳戶授予。不過，這些主控台頁面不會顯示 AWS Glue Data Catalog 資源政策授予的跨帳戶許可。同樣地，您可以使用AWS Glue主控台**的設定**頁面檢視 Data Catalog 資源政策中的跨帳戶授予，但該頁面不會顯示使用 Lake Formation 授予的跨帳戶許可。

為了確保您在檢視和管理跨帳戶許可時不會錯過任何授予，Lake Formation 和 AWS Glue會要求您執行下列動作，以指出您知道並允許 Lake Formation 和 進行跨帳戶授予AWS Glue。

**使用 AWS Glue Data Catalog 資源政策授予跨帳戶許可時**  
如果您的帳戶 （授與者帳戶或生產者帳戶） 未授予使用 AWS RAM 來共用資源的跨帳戶授權，您可以像往常一樣在 中儲存 Data Catalog 資源政策AWS Glue。不過，如果已進行涉及 AWS RAM 資源共用的授予，您必須執行下列其中一項動作，以確保成功儲存資源政策：
+ 當您在AWS Glue主控台**的設定**頁面上儲存資源政策時，主控台會發出提醒，指出政策中的許可除了使用 Lake Formation 主控台授予的任何許可之外。您必須選擇**繼續**以儲存政策。
+ 使用 `glue:PutResourcePolicy` API 操作儲存資源政策時，您必須將 `EnableHybrid` 欄位設定為 '`TRUE`' （類型 = 字串）。

  若要更新現有的資源政策，請先使用 `glue:GetResourcePolicy` API 操作擷取您目前的政策，然後視需要修改，再呼叫 `glue:PutResourcePolicy`。
**注意**  
建立跨帳戶存取 AWS Glue 的資源政策時，請僅授予特定使用案例所需的最低許可。

  如需詳細資訊，請參閱《 *AWS Glue 開發人員指南*》中的 [PutResourcePolicy 動作 (Python： put\$1resource\$1policy)](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-security.html#aws-glue-api-jobs-security-PutResourcePolicy)。

**使用 Lake Formation 命名的資源方法授予跨帳戶許可時**  
如果您的帳戶 （生產者帳戶） 中沒有 Data Catalog 資源政策，則 Lake Formation 會如往常一樣進行跨帳戶授予。不過，如果 Data Catalog 資源政策存在，您必須將下列陳述式新增至其中，以允許跨帳戶授予在使用具名資源方法進行時成功。將 *<region>* 取代為有效的區域名稱，並將 *<account-id>* 取代為 AWS 您的帳戶 ID （生產者帳戶 ID)。

```
    {
      "Effect": "Allow",
      "Action": [
        "glue:ShareResource"
      ],
      "Principal": {"Service": [
        "ram.amazonaws.com"
      ]},
      "Resource": [
        "arn:aws:glue:<region>:<account-id>:table/*/*",
        "arn:aws:glue:<region>:<account-id>:database/*",
        "arn:aws:glue:<region>:<account-id>:catalog"
      ]
    }
```

如果沒有此額外陳述式，Lake Formation 授予會成功，但會遭到封鎖 AWS RAM，而且收件人帳戶無法存取授予的資源。

**重要**  
使用 Lake Formation 標籤型存取控制 (LF-TBAC) 方法進行跨帳戶授予時，您必須擁有至少具有 中指定許可的 Data Catalog 資源政策[先決條件](cross-account-prereqs.md)。

**另請參閱:**  
[中繼資料存取控制](access-control-metadata.md) （討論具名資源方法與 Lake Formation 標籤型存取控制 (LF-TBAC) 方法）。
[檢視共用的 Data Catalog 資料表和資料庫](viewing-available-shared-resources.md)
《 *AWS Glue 開發人員指南*》中的[在AWS Glue主控台上使用資料目錄設定](https://docs.aws.amazon.com/glue/latest/dg/console-data-catalog-settings.html) 
《 *AWS Glue 開發人員指南*》中的[授予跨帳戶存取權](https://docs.aws.amazon.com/glue/latest/dg/cross-account-access.html) （適用於範例 Data Catalog 資源政策）