

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# クロスアカウントデータ共有のバージョン設定の更新
<a name="optimize-ram"></a>

 は、クロスアカウントデータ共有設定を随時 AWS Lake Formation 更新して、 AWS RAM 使用状況に加えられた変更を区別し、クロスアカウントデータ共有機能に加えられた更新をサポートします。Lake Formation がこれを行うと、**[Cross account version settings]** (クロスアカウントバージョン設定) の新しいバージョンが作成されます。

## クロスアカウントバージョン設定の主な違い
<a name="cross-account-version-diff"></a>

さまざまな **[Cross account version settings]** (クロスアカウントバージョン設定) でのクロスアカウントデータ共有の仕組みの詳細については、以下のセクションを参照してください。

**注記**  
別のアカウントとデータを共有するには、付与者が `AWSLakeFormationCrossAccountManager` マネージド IAM ポリシーのアクセス許可を持っている必要があります。これがすべてのバージョン必須の前提条件です。  
**[Cross account version settings]** (クロスアカウントバージョン設定) を更新しても、共有リソースに対する受信者のアクセス許可には影響しません。これは、バージョン 1 からバージョン 2、バージョン 2 からバージョン 3、バージョン 1 からバージョン 3 への更新の場合に適用されます。バージョンを更新する際は、以下の考慮事項を参照してください。

**バージョン 1**  
*名前付きリソースメソッド: *各クロスアカウント Lake Formation アクセス許可付与を 1 つの AWS RAM リソース共有にマッピングします。ユーザー (付与者ロールまたはプリンシパル) には追加のアクセス許可は必要ありません。  
*LF-TBAC メソッド: *クロスアカウント Lake Formation アクセス許可の付与は、データの共有 AWS RAM に を使用しません。ユーザーには `glue:PutResourcePolicy` アクセス許可が必要です。  
*バージョン更新のメリット: *初期バージョン - 該当しません  
*バージョンを更新する際の考慮事項: *初期バージョン - 該当しません

**バージョン 2**  
*名前付きリソースメソッド: * 複数のクロスアカウントアクセス許可の付与を 1 つの AWS RAM リソース共有にマッピングすることで、 AWS RAM リソース共有の数を最適化します。ユーザーには、追加のアクセス許可は必要ありません。  
*LF-TBAC メソッド: *クロスアカウント Lake Formation アクセス許可の付与は、データの共有 AWS RAM に を使用しません。ユーザーには `glue:PutResourcePolicy` アクセス許可が必要です。  
*バージョンを更新するメリット: * AWS RAM 容量の最適な使用率によるスケーラブルなクロスアカウント設定。  
*バージョンを更新する際の考慮事項: *クロスアカウント Lake Formation アクセス許可を付与するユーザーには、 `AWSLakeFormationCrossAccountManager` AWS マネージドポリシーの アクセス許可が必要です。それ以外の場合は、別のアカウントとリソースを正常に共有するための `ram:AssociateResourceShare` および `ram:DisassociateResourceShare` アクセス許可が必要です。

**バージョン 3**  
*名前付きリソースメソッド: * 複数のクロスアカウントアクセス許可の付与を 1 つの AWS RAM リソース共有にマッピングすることで、 AWS RAM リソース共有の数を最適化します。ユーザーには、追加のアクセス許可は必要ありません。  
*LF-TBAC メソッド: * Lake Formation はクロスアカウント付与 AWS RAM に を使用します。ユーザーは `glue:PutResourcePolicy` アクセス許可に glue: ShareResource ステートメントを追加する必要があります。受信者は、 からのリソース共有の招待を受け入れる必要があります AWS RAM。  
*バージョン更新のメリット: *次の機能をサポートします。  
+ 外部アカウントの IAM プリンシパルとリソースを明示的に共有できます。

  詳細については、「[データカタログリソースに対するアクセス許可の付与](granting-catalog-permissions.md)」を参照してください。
+ Organizations または組織単位 (OU) に対して、LF-TBAC 方式を使用したクロスアカウント共有を可能にします。
+ クロスアカウント付与の追加 AWS Glue ポリシーを維持するオーバーヘッドを排除します。
*バージョンを更新する際の考慮事項:* LF-TBAC 方式を使用してリソースを共有する場合、付与者がバージョン 3 より前のバージョンを使用していて、受信者がバージョン 3 以降を使用していると、付与者に「Invalid cross account grant request. Consumer account has opt-in to cross account version: v3. Please update `CrossAccountVersion` in `DataLakeSetting` to minimal version v3 (Service: AmazonDataCatalog; Status Code: 400; Error Code: InvalidInputException)」というエラーメッセージが表示されます。ただし、付与者がバージョン 3 を使用していて、受信者がバージョン 1 またはバージョン 2 を使用している場合、LF タグを使用したクロスアカウント付与は正常に行われます。  
名前付きリソース方式を使用したクロスアカウント付与は、異なるバージョン間で互換性があります。付与者アカウントが以前のバージョン (バージョン 1 または 2) を使用していて、受信者アカウントが新しいバージョン (バージョン 3 以降) を使用している場合でも、クロスアカウントアクセス機能は互換性の問題やエラーなしでシームレスに動作します。  
リソースを別のアカウントの IAM プリンシパルと直接共有するには、付与者だけがバージョン 3 を使用する必要があります。  
LF-TBAC 方式を使用してクロスアカウント付与を行うには、ユーザーがアカウントに AWS Glue Data Catalog リソースポリシーを持っている必要があります。バージョン 3 に更新すると、LF-TBAC は AWS RAMを使用して付与します。 AWS RAM ベースのクロスアカウント許可を成功させるには、 [AWS Glue と Lake Formation の両方を使用したクロスアカウント許可の管理](hybrid-cross-account.md)セクションに示すように、 `glue:ShareResource`ステートメントを既存の Data Catalog リソースポリシーに追加する必要があります。

**バージョン 4**  
ハイブリッドアクセスモードでデータカタログリソースを共有したり、フェデレーティッドカタログ内のオブジェクトを共有したりするには、付与者にバージョン 4 以降が必要です。

**バージョン 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 クロスアカウント共有を有効にするには、**[Cross account version settings]** (クロスアカウントバージョン設定) を [Version 3] (バージョン 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 **を選択します。**[Version 1]** (バージョン 1) を選択すると、Lake Formation はデフォルトのリソース共有モードを使用します。  
![\[画面には、アカウント内のすべての LF タグのアクセス許可が表示されます。\]](http://docs.aws.amazon.com/ja_jp/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"
    }
}
```

------

**重要**  
**[Version 2]** (バージョン 2) または **[Version 3]** (バージョン 3) を選択すると、新しい**名前付きリソース**の付与はすべて新しいクロスアカウント付与モードになります。既存のクロスアカウント共有の AWS RAM 容量を最適に使用するには、古いバージョンで行われた許可を取り消し、新しいモードで再付与することをお勧めします。