翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Lake Formation のタグベースのアクセスコントロールのベストプラクティスと考慮事項
データカタログデータベース、テーブル、および列へのアクセスを制御するための LF タグは、作成、維持、および割り当てを行うことができます。
Lake Formation のタグベースのアクセスコントロールを使用するときは、以下のベストプラクティスを検討してください。
-
すべての LF タグは、データカタログリソースに割り当てられたり、プリンシパルに付与される前に、あらかじめ定義しておく必要があります。
データレイク管理者は、必要な IAM アクセス許可で LF タグ作成者を作成することによって、タグ管理タスクを委任できます。データエンジニアとアナリストは、LF タグの特性と関係を決定します。その後、LF タグ作成者は、Lake Formation で LF タグを作成して管理します。
-
複数の LF タグをデータカタログリソースに割り当てることができます。特定のキーに対する 1 つの値だけを、特定のリソースに割り当てることができます。
例えば、データベース、テーブル、および列には、
module=Orders
、region=West
、およびdivision=Consumer
などを割り当てることができます。module=Orders,Customers
を割り当てることはできません。 -
リソースの作成時に LF タグをリソースに割り当てることはできません。LF タグを追加できるのは、既存のリソースのみです。
-
単一の LF タグだけではなく、LF タグ式をプリンシパルに付与できます。
LF タグ式は、以下のようになります (擬似コードを使用)。
module=sales AND division=(consumer OR commercial)
この LF タグ式を付与されたプリンシパルは、
module=sales
と、division=consumer
またはdivision=commercial
のいずれかが割り当てられたデータカタログリソース (データベース、テーブル、および列) 二のみアクセスできます。プリンシパルがmodule=sales
またはdivision=commercial
を持つリソースにアクセスできるようにする場合は、同じ付与に両方を含めないでください。module=sales
とdivision=commercial
それぞれに 1 回ずつ、合計で 2 回付与を行います。最もシンプルな LF タグ式は、
module=sales
など、1 つの LF タグだけで構成されます。 -
複数の値を持つ LF タグに対する許可を付与されたプリンシパルは、それらの値のいずれかを持つデータカタログリソースにアクセスできます。例えば、キーが
module
で値がorders,customers
の LF タグがユーザーに付与される場合、そのユーザーは、module=orders
またはmodule=customers
が割り当てられたリソースにアクセスできます。 -
LF-TBAC 方法を使用してデータカタログリソースに対するデータアクセス許可を付与するには、
Grant with LF-Tag expressions
アクセス許可が必要です。データレイク管理者と LF タグ作成者は、このアクセス許可を暗黙的に受け取ります。Grant with LFTag expressions
アクセス許可を持つプリンシパルは、次の方法でリソースに対するデータアクセス許可を付与できます。-
名前付きリソースメソッド
-
LF-TBAC 方法。ただし、同じ LF タグ式のみを使用して。
例えば、データレイク管理者が以下の付与を行うとします (擬似コードを使用)。
GRANT (SELECT ON TABLES) ON TAGS module=customers, region=west,south TO user1 WITH GRANT OPTION
この場合、
user1
は LF-TBAC 方法を使用して、ただし完全な LF タグ式module=customers, region=west,south
を使用して、テーブルに対するSELECT
を他のプリンシパルに付与できます。
-
-
LF-TBAC 方式と名前付きリソース方式の両方を使用してリソースに対する許可がプリンシパルに付与される場合、そのプリンシパルがリソースに対して持っている許可は、両方の方式によって付与された許可を結合したものになります。
-
Lake Formation は、LF-TBAC 方法を使用した複数のアカウントでの LF タグに対する
DESCRIBE
およびASSOCIATE
の付与と、複数のアカウントでのデータカタログに対するアクセス許可の付与をサポートしています。どちらの場合も、プリンシパルは AWS アカウント ID です。注記
Lake Formation は、LF-TBAC 方式を使用した組織および組織単位へのクロスアカウント付与はサポートします。この機能を使用するには、[Cross account version settings] (クロスアカウントのバージョン設定) を [Version 3] (バージョン 3) に更新する必要があります。
詳細については、「Lake Formation でのクロスアカウントデータ共有」を参照してください。
-
1 つのアカウントで作成されたデータカタログリソースは、同じアカウントで作成された LF タグを使用してのみタグ付けできます。あるアカウントで作成された LF タグを別のアカウントの共有リソースに関連付けることはできません。
-
Lake Formation のタグベースのアクセスコントロール (LF-TBAC) を使用して Data Catalog リソースへのクロスアカウントアクセスを許可するには、 AWS アカウントの Data Catalog リソースポリシーに追加する必要があります。詳細については、「前提条件」を参照してください。
-
LF タグのキーと LF タグの値の長さは 50 文字以下にする必要があります。
-
データカタログリソースに割り当てることができる LF タグの最大数は 50 個です。
-
次の制限はソフト制限です。
-
作成できる LF タグの最大数は 1,000 個です。
-
LF タグに定義できる値の最大数は 1,000 個です。
-
-
タグのキーと値はすべて、保存されるときに小文字に変換されます。
-
LF タグの 1 つの値だけを、特定のリソースに割り当てることができます。
-
単一の付与で複数の LF タグがプリンシパルに付与される場合、このプリンシパルはすべての LF タグを持つデータカタログリソースのみにアクセスできます。
-
LF タグ式の評価結果はテーブル列のサブセットのみへのアクセスであったが、一致があるときに付与される Lake Formation アクセス許可が、列全体へのアクセスを必要とするアクセス許可 (つまり、
Alter
、Drop
、Insert
またはDelete
) の 1 つである場合、これらのアクセス許可のいずれも付与されません。その代わり、Describe
のみが付与されます。付与された許可がAll
(Super
) である場合は、Select
とDescribe
のみが付与されます。 -
ワイルドカードは LF タグには使用できません。LF タグをテーブルのすべての列に割り当てるには、テーブルに LF タグを割り当てます。これにより、テーブルのすべての列が LF タグを継承します。LF タグをデータベースのすべてのテーブルに割り当てるには、データベースに LF タグを割り当てます。これにより、データベース内のすべてのテーブルがその LF タグを継承します。
-
1 つのアカウントで最大 1000 個の LF タグ式を作成できます。
最大 50 個の LF タグ式を使用して、Data Catalog リソースのプリンシパルにアクセス許可を付与できます。