翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
クロスアカウントデータ共有のベストプラクティスと考慮事項
Lake Formation のクロスアカウント機能を使用すると、ユーザーは分散データレイクを複数の AWS 、組織間で安全に共有したり AWS アカウント、別のアカウントのIAMプリンシパルと直接共有して、データカタログのメタデータと基盤となるデータにきめ細かなアクセスを提供したりできます。
Lake Formation のクロスアカウントデータ共有を使用するときは、以下のベストプラクティスを検討してください。
-
Lake Formation のアクセス許可付与の数に制限はありません。この許可は、自分の AWS アカウントのプリンシパルに付与できます。ただし、Lake Formation は、アカウントが名前付きリソースメソッドで実行できるクロスアカウント許可に AWS Resource Access Manager (AWS RAM) 容量を使用します。 AWS RAM キャパシティを最大化するには、名前付きリソースメソッドの以下のベストプラクティスに従います。
-
新しいクロスアカウント許可モード (クロスアカウントバージョン設定 の バージョン 3 以降) を使用して、リソースを外部 と共有します AWS アカウント。詳細については、「クロスアカウントデータ共有のバージョン設定の更新」を参照してください。
-
AWS アカウントを組織に整理し、組織または組織単位にアクセス許可を付与します。組織または組織単位への付与は、1 つの付与として計上されます。
組織または組織単位に付与すると、付与の AWS Resource Access Manager (AWS RAM) リソース共有招待を受け入れる必要もなくなります。詳細については、「共有 Data Catalog テーブルとデータベースへのアクセスと表示」を参照してください。
-
データベース内にある多数のテーブルそれぞれに対する許可を付与する代わりに、特別な [All tables] (すべてのテーブル) ワイルドカードを使用して、データベース内のすべてのテーブルに対する許可を付与します。[All tables] (すべてのテーブル) に対する付与は、単一の付与として計上されます。詳細については、「Data Catalog リソースに対するアクセス許可の付与」を参照してください。
注記
のリソース共有数の上限をリクエストする方法については AWS RAM、「」のAWS 「サービスクォータ」を参照してくださいAWS 全般のリファレンス。
-
-
Amazon Athena および Amazon Redshift Spectrum クエリエディタに表示するには、共有データベースへのリソースリンクを作成する必要があります。同様に、Athena と Redshift Spectrum を使用して共有テーブルをクエリできるようにするには、そのテーブルへのリソースリンクを作成する必要があります。そうすることで、リソースリンクがクエリエディタのテーブルリストに表示されます。
クエリのために多数のテーブルそれぞれに対するリソースリンクを作成する代わりに、[All tables] (すべてのテーブル) ワイルドカードを使用して、データベース内のすべてのテーブルに対する許可を付与することができます。そうすることで、そのデータベースのリソースリンクを作成し、クエリエディタでそのデータベースリソースリンクを選択するときに、クエリのために、そのデータベース内のすべてのテーブルにアクセスできるようになります。詳細については、「リソースリンクの作成」を参照してください。
-
リソースを別のアカウントのプリンシパルと直接共有する場合、受信者アカウントのIAMプリンシパルには、Athena と Amazon Redshift Spectrum を使用して共有テーブルをクエリできるようにリソースリンクを作成するアクセス許可がない場合があります。データレイク管理者は、共有されているテーブルごとにリソースリンクを作成する代わりに、プレースホルダーデータベースを作成して
ALLIAMPrincipal
グループにCREATE_TABLE
アクセス許可を付与できます。次に、受信者アカウントのすべてのIAMプリンシパルがプレースホルダーデータベースにリソースリンクを作成し、共有テーブルのクエリを開始できます。ALLIAMPrincipals
の にアクセス許可を付与するには、 CLI コマンドの例を参照してください名前付きリソース方式を使用したデータベースのアクセス権限の付与。 -
Athena と Redshift Spectrum は列レベルのアクセスコントロールをサポートしますが、これは包含のみで、除外にはサポート適用されません。列レベルのアクセスコントロールは ではサポートされていません AWS Glue ETL ジョブ。
-
リソースが AWS アカウントと共有されると、アカウントのユーザーにのみリソースに対するアクセス許可を付与できます。リソースに対するアクセス許可を、他の AWS アカウント、組織 (自分の組織でもない)、または
IAMAllowedPrincipals
グループに付与することはできません。 -
データベースに対する
DROP
またはSuper
を外部アカウントに付与することはできません。 -
データベースまたはテーブルを削除する前に、クロスアカウント許可を取り消します。それ以外の場合は、 で孤立したリソース共有を削除する必要があります AWS Resource Access Manager。
以下も参照してください。
-
クロスアカウントアクセスに関する追加のルールと制限については、「Lake Formation 許可のリファレンス」の「CREATE_TABLE」を参照してください。