データフィルターが提供するデータの許可の付与 - AWS Lake Formation

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

データフィルターが提供するデータの許可の付与

データフィルターは、テーブル内のデータのサブセットを表します。プリンシパルにデータアクセスを提供するには、これらのプリンシパルに SELECT 許可を付与する必要があります。この許可により、プリンシパルは以下を実行できます。

  • プリンシパルのアカウントと共有されているテーブルのリストで実際のテーブル名を表示する。

  • 共有テーブルでデータフィルターを作成し、これらのデータフィルターに対する許可をユーザーに付与します。

Console
SELECT 許可を付与する
  1. Lake Formation コンソールで [Permissions] (許可) ページに移動し、[Grant] (付与) を選択します。

    この画像は、コンソールにある [Permissions] (許可) ページのトップページのスクリーンショットです。[Data Permissions] (データの許可) セクションで、[Grant] (付与) ボタンがハイライト表示されています。
  2. アクセス権を付与する先のプリンシパルを選択し、[Named data catalog resources] (名前付きの Data Catalog リソース) を選択します。

    この画像は、コンソールの [Permissions] (許可) ページのスクリーンショットです。[LF-Tags or catalog resources] (LF タグまたはカタログリソース) セクションが表示され、[Named data catalog resources] (名前付きの Data Catalog リソース) オプションが選択されています。[Databases] (データベース) の下には、cloudtrail という値が 1 つ提供されています。テーブルには、 cloudtrail-logs-aws_logs という値が 1 つ指定されています。データフィルターには、cloudtrail_lakeformation_filter という値が 1 つあります。
  3. フィルターが表すデータへのアクセス権を提供するには、[Data filter permissions] (データフィルターの許可) で [Select] (選択) を選択します。

    この画像は、コンソールにある [Permissions] (許可) ページのトップページのスクリーンショットです。「Data filter permissions」(データフィルターの許可) セクションで、SELECT オプションが選択されています。DESCRIBE と DROP オプションは選択されていません。「Grantable permissions」(付与可能な許可) セクションでは、どの許可 ([Select] (選択)、[Describe] (記述)、[Drop] (ドロップ)) も選択されていません。スクリーンショットの最下部に、「Select permissions on data filters will grant access to the table 'cloudtrail_logs_awslogs」(データフィルターに対する許可を選択すると、テーブル「cloudtrail_logs_awslogs」へのアクセス権が付与されます。) という情報メッセージが表示されています。
CLI

grant-permissions のコマンドを入力します。Resource 引数に DataCellsFilter を指定し、Permissions 引数に SELECT を指定します。

次の例では、 SELECTsalesデータベースの ordersテーブルに属するデータフィルター datalake_user1のユーザーに restrict-pharmagrant オプションを使用して を付与します AWS アカウント 1111-2222-3333

aws lakeformation grant-permissions --cli-input-json file://grant-params.json

以下は、ファイル grant-params.json の内容です。

{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1" }, "Resource": { "DataCellsFilter": { "TableCatalogId": "111122223333", "DatabaseName": "sales", "TableName": "orders", "Name": "restrict-pharma" } }, "Permissions": ["SELECT"] }