LF-TBAC メソッドを使用したデータレイクアクセス許可の付与 - AWS Lake Formation

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

LF-TBAC メソッドを使用したデータレイクアクセス許可の付与

LF タグに対する DESCRIBEASSOCIATE の Lake Formation 許可をプリンシパルに付与して、プリンシパルが LF タグを表示し、データカタログリソース (データベース、テーブル、ビュー、列) に割り当てるようにできます。LF タグが Data Catalog リソースに割り当てられている場合は、Lake Formation タグベースのアクセスコントロール (LF-TBAC) メソッドを使用して、それらのリソースを保護できます。詳細については、「Lake Formation のタグベースのアクセス制御」を参照してください。

最初は、データレイク管理者のみがこれらの許可を付与できます。データレイク管理者が grant オプションと共にこれらの許可を付与すると、他のプリンシパルがそれらを付与できるようになります。DESCRIBE 許可と ASSOCIATE 許可は、「Lake Formation のタグベースのアクセスコントロールのベストプラクティスと考慮事項」で説明されています。

外部 AWS アカウントに LF タグに対する DESCRIBEおよび アクセスASSOCIATE許可を付与できます。そうすると、そのアカウントのデータレイク管理者が、アカウント内の他のプリンシパルにこれらの許可を付与できるようになります。外部アカウントのデータレイク管理者が ASSOCIATE アクセス許可を付与したプリンシパルは、アカウントを共有するデータカタログリソースに LF タグを割り当てることができます。

外部アカウントに付与するときは、grant オプションを含める必要があります。

AWS Lake Formation コンソール、、または AWS Command Line Interface () を使用してAPI、LF タグに対するアクセス許可を付与できますAWS CLI。

データカタログ許可の付与

Lake Formation コンソールまたは AWS CLI を使用して、Lake Formation タグベースのアクセスコントロール (LF-TBAC) メソッドを使用して、Data Catalog データベース、テーブル、ビュー、列に対する Lake Formation アクセス許可を付与します。

Console

次の手順では、Lake Formation タグベースのアクセスコントロール (LF-TBAC) メソッドと Lake Formation コンソールの Grant data lake permissions ページを使用してアクセス許可を付与する方法について説明します。このページは、以下のセクションに分かれています。

  • プリンシパル - アクセス許可を付与 AWS アカウント するユーザー、ロール、および。

  • [LF-Tags or catalog resources] (LF タグまたはカタログリソース) – 付与する許可の対象となるデータベース、テーブル、またはリソースリンク。

  • [Permissions] (許可) – 付与される Lake Formation 許可。

  1. [データレイクのアクセス許可を付与] ページを開きます。

    で AWS Lake Formation コンソールを開きhttps://console.aws.amazon.com/lakeformation/、データレイク管理者として、または 許可オプションを使用して LF TBACを介して Data Catalog リソースに対する Lake Formation アクセス許可を付与されたユーザーとしてサインインします。

    ナビゲーションペインの [Permissions] (許可) で [Data lake permissions] (データレイクの許可) を選択します。次に、[Grant] (付与) を選択します。

  2. プリンシパルを指定します。

    [Principals] (プリンシパル) セクションでプリンシパルタイプを選択してから、許可の付与先となるプリンシパルを指定します。

    [プリンシパル] セクションには、次のテキストを使用した名前が付いている 4 つのタイルが含まれています。各タイルには、オプションボタンとテキストがあります。IAM Identity Center タイルが選択され、ユーザーとグループのドロップダウンリストがタイルの下にあります。
    IAM ユーザーとロール

    ユーザーとロールリストから 1 つ以上のIAMユーザーまたはロールを選択します。

    IAM アイデンティティセンター

    [ユーザーとグループ] リストから、1 人、または複数のユーザーを選択します。

    SAML ユーザーとグループ

    SAML および Amazon QuickSight ユーザーおよびグループ には、 を介してフェデレーションされたユーザーまたはグループ、または Amazon QuickSight ユーザーまたはグループに対して SAML1 つ以上の ARNs Amazon リソースネーム (ARNs) を入力します。各 の後に Enter を押しますARN。

    の構築方法についてはARNs、「」を参照してくださいLake Formation の許可と取り消し AWS CLI コマンド

    注記

    Lake Formation と Amazon の統合 QuickSight は、Amazon QuickSight Enterprise Edition でのみサポートされています。

    外部アカウント

    AWS アカウント、 AWS 組織 、またはIAMプリンシパルには、IAMユーザーまたはロールARNに 1 つ以上の有効な AWS アカウント IDs、組織 IDs、組織単位 IDs、または を入力します。各 ID の後で [Enter] キーを押します。

    組織 ID は、最初の「o-」と、その後に続く 10~32 個の小文字または数字で構成されています。

    組織単位 ID は「ou-」で始まり、その後に 4~32 個の小文字または数字 (OU が含まれるルートの ID) が続きます。この文字列の後には、2 番目の「-」ダッシュと 8~32 個の追加の小文字または数字が続きます。

  3. LF タグを指定します。

    [LF タグに一致するリソース] オプションが選択されていることを確認します。[Add LF-Tag] (LF タグを追加) を選択します。

    1. LF タグのキーと値を選択します。

      複数の値を選択する場合は、OR 演算子で LF タグ式を作成することになります。これは、LF タグの値のいずれかが Data Catalog リソースに割り当てられた LF タグと一致する場合、そのリソースに対する許可が付与されることを意味します。

      [LF-Tag or catalog resources] (LF タグまたはカタログリソース) セクションには、水平に配置された 2 つのタイルがあり、各タイルにはオプションボタンと説明テキストが含まれています。オプションは、[Resources matched by LF-Tags] (LF タグに一致するリソース) (推奨) と [Named data catalog resources] (名前付きの Data Catalog リソース) です。LF タグに一致するリソースが選択されています。タイルの下には、水平に配置されている [Key] (キー) フィールドと [Value] (値) フィールドがあります。[Key] (キー) フィールドには「module」(モジュール) が表示されており、[Value] (値) フィールドは [Orders] (注文)、[Sales] (売上)、および [Customers] (顧客) の 3 つのエントリが含まれるドロップダウンリストになっています。各エントリには、チェックボックスが関連付けられています。[Customers] (顧客) のチェックボックスがオンになっています。これら 2 つのフィールドの右側には、[Remove] (削除) ボタンがあります。最下部に [Add LF-Tag] (LF タグを追加) ボタンがあり、[Key] (キー) フィールドと [Value] (値) フィールド、および [Remove] (削除) ボタンが含まれる別の行を追加できることを示しています。
    2. (オプション) [LF タグを追加] を再度選択して、別の LF タグを指定します。

      複数の LF タグを指定する場合は、AND 演算子で LF タグ式を作成することになります。プリンシパルには、LF タグ式内の各 LF タグに一致する LF タグが Data Catalog リソースに割り当てられている場合にのみ、その Data Catalog リソースに対する許可が付与されます。

  4. 許可を指定します。

    一致するデータカタログリソースに対してプリンシパルに付与する許可を指定します。一致するリソースとは、プリンシパルに付与された LF タグ式の 1 つに一致する LF タグが割り当てられたリソースです。

    一致するデータベース、一致するテーブル、および一致するビューについて付与する許可を指定できます。

    ページの 2 つのセクションが表示されています。[Database permissions] (データベースの許可) セクションには、[Database permissions] (データベースの許可) と [Grantable permissions] (付与可能な許可) のチェックボックスがあります。[Database] (データベース) セクションの下にある [Table permissions] (テーブルの許可) セクションには、[Table permissions] (テーブルの許可) と [Grantable permissions] (付与可能な許可) のチェックボックスが表示されています。

    [Database permissions] (データベースの許可) で、プリンシパルに付与される、一致するデータベースに対するデータベース許可を選択します。

    [テーブルの許可] で、プリンシパルに付与される、一致するテーブルとビューに対するテーブルまたはビューのアクセス許可を選択します。

    [テーブルの許可] から SelectDescribeDrop 許可を選択してビューに適用することもできます。

  5. [Grant] (付与) を選択します。

AWS CLI

AWS Command Line Interface (AWS CLI) および Lake Formation タグベースのアクセスコントロール (LF-TBAC) メソッドを使用して、Data Catalog データベース、テーブル、列に対する Lake Formation のアクセス許可を付与できます。

AWS CLI および LF-TBAC メソッドを使用したデータレイクアクセス許可の付与
  • grant-permissions コマンドを実行します。

    以下の例は、LF タグ式「module=*」(LF タグのキー module のすべての値) をユーザー datalake_user1 に付与します。このユーザーは、一致するすべてのデータベース、つまり、module キーと任意の値を持つ LF タグが割り当てられているデータベースに対する CREATE_TABLE 許可を持つようになります。

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "CREATE_TABLE" --resource '{ "LFTagPolicy": {"CatalogId":"111122223333","ResourceType":"DATABASE","Expression":[{"TagKey":"module","TagValues":["*"]}]}}'

    以下の例では、LF タグ式「(level=director) AND (region=west OR region=south)」をユーザー datalake_user1 に付与します。このユーザーは、一致するテーブル、つまり level=director と (region=west または region=south) の両方が割り当てられているテーブルに対する grant オプション付きの SELECTALTER、および DROP 許可を持つようになります。

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" "ALTER" "DROP" --permissions-with-grant-option "SELECT" "ALTER" "DROP" --resource '{ "LFTagPolicy": {"CatalogId":"111122223333","ResourceType":"TABLE","Expression": [{"TagKey": "level","TagValues": ["director"]},{"TagKey": "region","TagValues": ["west", "south"]}]}}'

    次の例では、LF タグ式module=orders「」を AWS アカウント 1234-5678-9012 に付与します。付与後、このアカウント内のデータレイク管理者は、そのアカウント内のプリンシパルに「module=orders」式を付与できるようになります。その後、これらのプリンシパルは、名前付きリソースメソッドまたは LF-TBAC メソッドを使用して、アカウント 1111-2222-3333 が所有するデータベースとアカウント 1234-5678-9012 と共有されているデータベースを照合するCREATE_TABLEアクセス許可を持ちます。

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=123456789012 --permissions "CREATE_TABLE" --permissions-with-grant-option "CREATE_TABLE" --resource '{ "LFTagPolicy": {"CatalogId":"111122223333","ResourceType":"DATABASE","Expression":[{"TagKey":"module","TagValues":["orders"]}]}}'