

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

# 更新跨帳戶資料共用版本設定
<a name="optimize-ram"></a>

 會不時 AWS Lake Formation 更新跨帳戶資料共用設定，以區分對 AWS RAM 用量所做的變更，並支援對跨帳戶資料共用功能所做的更新。當 Lake Formation 執行此操作時，它會建立新的**跨帳戶版本設定**版本。

## 跨帳戶版本設定的主要差異
<a name="cross-account-version-diff"></a>

如需跨帳戶資料共用在不同**跨帳戶版本設定**下運作方式的詳細資訊，請參閱下列各節。

**注意**  
若要與其他帳戶共用資料，授予者必須具有`AWSLakeFormationCrossAccountManager`受管 IAM 政策許可。這是所有版本的先決條件。  
更新**跨帳戶版本設定**不會影響收件人對共用資源所擁有的許可。這適用於從第 1 版更新到第 2 版、將第 2 版更新到第 3 版，以及將第 1 版更新到第 3 版。更新版本時，請參閱下列考量事項。

**第 1 版**  
*具名資源方法：*將每個跨帳戶 Lake Formation 許可授予映射至一個 AWS RAM 資源共享。使用者 （授權方角色或委託人） 不需要額外的許可。  
*LF-TBAC 方法：*跨帳戶 Lake Formation 許可授予不會用來 AWS RAM 共用資料。使用者必須擁有 `glue:PutResourcePolicy` 許可。  
*更新版本的好處：*初始版本 - 不適用。  
*更新版本時的考量事項：*初始版本 - 不適用

**2 版**  
*具名資源方法：*透過映射具有一個 AWS RAM 資源共享的多個跨帳戶許可授予來最佳化 AWS RAM 資源共享的數量。使用者不需要額外的許可。  
*LF-TBAC 方法：*跨帳戶 Lake Formation 許可授予不會用來 AWS RAM 共用資料。使用者必須擁有 `glue:PutResourcePolicy` 許可。  
*更新版本的優勢：*透過 AWS RAM 容量的最佳使用率進行可擴展的跨帳戶設定。  
*更新版本時的考量：*想要授予跨帳戶 Lake Formation 許可的使用者，必須在 `AWSLakeFormationCrossAccountManager` AWS 受管政策中擁有 許可。否則，您需要有 `ram:AssociateResourceShare`和 `ram:DisassociateResourceShare`許可，才能成功與其他 帳戶共用資源。

**第 3 版**  
*具名資源方法：*透過映射具有一個 AWS RAM 資源共享的多個跨帳戶許可授予來最佳化 AWS RAM 資源共享的數量。使用者不需要額外的許可。  
*LF-TBAC 方法：*Lake Formation 使用 AWS RAM 進行跨帳戶授予。使用者必須將 glue：ShareResource 陳述式新增至`glue:PutResourcePolicy`許可。收件人必須接受來自 的資源共用邀請 AWS RAM。  
*更新版本的優勢： *支援下列功能：  
+ 允許與外部帳戶中的 IAM 主體明確共用資源。

  如需詳細資訊，請參閱[授予 Data Catalog 資源的許可](granting-catalog-permissions.md)。
+ 使用 LF-TBAC 方法對 Organizations 或組織單位 (OUs) 啟用跨帳戶共用。
+ 移除維護跨帳戶授與額外 AWS Glue 政策的額外負荷。
*更新版本時的考量：*當您使用 LF-TBAC 方法共用資源時，如果授予者使用低於第 3 版的版本，且收件人使用第 3 版或更新版本，則授予者會收到下列錯誤訊息：「無效的跨帳戶授予請求。消費者帳戶可選擇加入跨帳戶版本：v3。請將 `CrossAccountVersion` 中的 更新`DataLakeSetting`為最低版本 v3 （服務：AmazonDataCatalog；狀態碼：400；錯誤碼： InvalidInputException)"。不過，如果授予者使用第 3 版，且收件人使用第 1 版或第 2 版，則使用 LF 標籤的跨帳戶授予會順利通過。  
使用具名資源方法進行的跨帳戶授予在不同版本之間相容。即使授予者帳戶使用較舊版本 （第 1 版或第 2 版） 且收件人帳戶使用較新版本 （第 3 版或更高版本），跨帳戶存取功能也能順暢運作，而不會發生任何相容性問題或錯誤。  
若要直接與另一個帳戶中的 IAM 主體共用資源，只有授予者需要使用第 3 版。  
使用 LF-TBAC 方法進行的跨帳戶授予需要使用者在帳戶中擁有 AWS Glue Data Catalog 資源政策。當您更新到第 3 版時，LF-TBAC 授予會使用 AWS RAM。若要允許以 AWS RAM 為基礎的跨帳戶授予成功，您必須將 `glue:ShareResource`陳述式新增至現有的 Data Catalog 資源政策，如 [使用 AWS Glue和 Lake Formation 管理跨帳戶許可](hybrid-cross-account.md)一節所示。

**第 4 版**  
授予者需要第 4 版或更新版本，才能在混合存取模式中共用 Data Catalog 資源，或在聯合目錄中共用物件。

**第 5 版**  
跨帳戶第 5 版增強了跨帳戶資源共用功能，可讓您與另一個帳戶共用不限數量的資料表，消除每個資源類型的先前資源關聯限制。若要開始使用，請透過 Lake Formation 主控台或 API 升級至跨帳戶版本 5。任何新的跨帳戶許可授予都會自動在資源共用中使用萬用字元模式，而不是個別的資源關聯。所有現有的跨帳戶共用都會繼續運作，而且所有現有的 Lake Formation APIs仍然相容。  
*更新版本的優勢：*跨帳戶 v5 可增強跨帳戶共用，讓您可以跨帳戶共用數十萬個資料表。  
*更新版本時的考量：*第 5 版升級之後的新授予會將萬用字元資源模式新增至現有的 AWS Resource Manager 資源共用，或使用萬用字元模式建立新的共用。一旦升級至第 5 版，就不支援降級。

## 最佳化 AWS RAM 資源共用
<a name="optimize-version"></a>

跨帳戶授與的新版本 （第 2 版及更高版本） 會最佳化利用 AWS RAM 容量來最大化跨帳戶用量。當您與外部 AWS 帳戶 或 IAM 主體共用資源時，Lake Formation 可能會建立新的資源共用，或將資源與現有共用建立關聯。透過與現有共享建立關聯，Lake Formation 可減少消費者需要接受的資源共享邀請數量。第 5 版使用萬用字元型資源模式，而不是個別資源關聯，進一步最佳化 RAM 用量，進而大幅減少每個資源共享的資源關聯。

## 透過 TBAC 啟用 AWS RAM 共用或直接與委託人共用資源
<a name="ram-tbac-direct-iam-version"></a>

若要直接與另一個帳戶中的 IAM 主體共用資源，或啟用與 Organizations 或組織單位的 TBAC 跨帳戶共用，您需要將**跨帳戶版本設定**更新為第 3 版。如需 AWS RAM 資源限制的詳細資訊，請參閱 [跨帳戶資料共用最佳實務和考量事項](cross-account-notes.md)。

### 更新跨帳戶版本設定所需的許可
<a name="req-permissions-version-update"></a>

 如果跨帳戶許可授予者具有`AWSLakeFormationCrossAccountManager`受管 IAM 政策許可，則跨帳戶許可授予者角色或委託人不需要額外的許可設定。不過，如果跨帳戶授予者未使用 受管政策，則授予者角色或委託人應具有下列 IAM 許可，才能讓跨帳戶授予的新版本成功。

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

****  

```
  
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "VisualEditor1",
      "Effect": "Allow",
      "Action": [
         "ram:AssociateResourceShare",
         "ram:DisassociateResourceShare",
         "ram:GetResourceShares"
       ],
     "Resource": "*",
     "Condition": {
       "StringLike": {
         "ram:ResourceShareName": "LakeFormation*"
        }
      }
    }
  ]
}
```

------

## 啟用新版本
<a name="version-update-steps"></a>

請依照下列步驟，透過 AWS Lake Formation 主控台或 更新**跨帳戶版本設定** AWS CLI。

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

1. 在**資料目錄**設定頁面的**跨帳戶版本設定**下，選擇**第 2** 版、**第 3** 版、**第 4** 版或**第 5** 版。如果您選取第 **1 版**，Lake Formation 將使用預設資源共用模式。  
![\[畫面顯示帳戶中所有 LF 標籤的許可。\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/cross-account-version-setting.png)

1. 選擇**儲存**。

------
#### [ AWS Command Line Interface (AWS CLI) ]

使用 `put-data-lake-settings` AWS CLI 命令來設定 `CROSS_ACCOUNT_VERSION` 參數。接受的值為 1、2、3、4 和 5。

```
aws lakeformation put-data-lake-settings --region us-east-1 --data-lake-settings file://settings
{
    "DataLakeAdmins": [
        {
            "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/test"
        }
    ],
    "CreateDatabaseDefaultPermissions": [],
    "CreateTableDefaultPermissions": [],
    "Parameters": {
        "CROSS_ACCOUNT_VERSION": "3"
    }
}
```

------

**重要**  
選擇**第 2** 版或第 **3 版**後，所有新的**具名資源**授權都會經過新的跨帳戶授權模式。若要以最佳方式使用現有跨帳戶共用的 AWS RAM 容量，建議您撤銷使用較舊版本進行的授予，並在新模式中重新授予。