

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

# LF-TBAC 方式を使用したデータレイク許可の付与
<a name="granting-catalog-perms-TBAC"></a>

LF タグに対する `DESCRIBE` と `ASSOCIATE` の Lake Formation 許可をプリンシパルに付与して、プリンシパルが LF タグを表示し、データカタログリソース (データベース、テーブル、ビュー、列) に割り当てるようにできます。LF タグがデータカタログリソースに割り当てられているときには、Lake Formation のタグベースのアクセスコントロール (LF-TBAC) 方法を使用して、これらのリソースをセキュリティで保護できます。詳細については、「[Lake Formation のタグベースのアクセス制御](tag-based-access-control.md)」を参照してください。

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

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

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

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

**注記**  
S3 Tables カタログでは、次の手順は必要ありません。LF タグを使用すると、既存の S3 Tables カタログを削除して再作成することなく、既存の S3 Tables カタログに対するアクセス許可を付与できます。

**Lake Formation アクセス許可を使用する既存のフェデレーティッドカタログに対する LF タグのサポートを有効にする**

Amazon Redshift や LF タグのサポートがフェデレーティッドカタログで利用可能になる前に作成された Amazon DynamoDB カタログなど、Lake Formation アクセス許可を使用している既存のフェデレーティッドカタログがある場合は、次の手順に従います。

1. 既存のカタログを削除する – `deleteCatalog` API オペレーションを呼び出して、Lake Formation アクセス許可を使用する既存のフェデレーティッドカタログを削除します。

1.  新しいフェデレーティッドカタログを作成する – 新しいカタログを作成し、新しいカタログを既存の名前空間/データ共有にポイントします。

   カタログに新しい名前を使用する – このプロセスでは、LF タグ機能をサポートするように既存のフェデレーティッドカタログを更新します。同じカタログ名を使用する場合は、 AWS サポートチームにお問い合わせください。

**Topics**
+ [データカタログ許可の付与](#granting-cat-perms-TBAC-console)

**関連情報**  
[LF タグ値のアクセス許可の管理](TBAC-granting-tags.md)
[メタデータアクセスコントロールのための LF タグの管理](managing-tags.md)
[Lake Formation のタグベースのアクセス制御](tag-based-access-control.md)

## データカタログ許可の付与
<a name="granting-cat-perms-TBAC-console"></a>

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

------
#### [ Console ]

以下は、Lake Formation のタグベースのアクセスコントロール (LF-TBAC) 方式と Lake Formation コンソールの **[データレイクのアクセス許可を付与]** ページを使用して、許可を付与する方法を説明する手順です。このページは、以下のセクションに分かれています。
+  **プリンシパル** – アクセス許可を付与 AWS アカウント するユーザー、ロール、および 。
+  **[LF-Tags or catalog resources]** (LF タグまたはカタログリソース) – 付与する許可の対象となるデータベース、テーブル、またはリソースリンク。
+  **[Permissions]** (許可) – 付与される Lake Formation 許可。

1. 

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

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

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

1. 

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

    **[Principals]** (プリンシパル) セクションでプリンシパルタイプを選択してから、許可の付与先となるプリンシパルを指定します。  
![[プリンシパル] セクションには、次のテキストを使用した名前が付いている 4 つのタイルが含まれています。各タイルには、オプションボタンとテキストがあります。[IAM アイデンティティセンター] タイルが選択されており、タイルの下に [ユーザーとグループ] ドロップダウンリストがあります。](http://docs.aws.amazon.com/ja_jp/lake-formation/latest/dg/images/identity-center-grant-perm.png)  
**IAM ユーザーとロール**  
**[IAM users and roles]** (IAM ユーザーおよびロール) リストから、1 人、または複数のユーザーまたはロールを選択します。  
**IAM アイデンティティセンター **  
**[ユーザーとグループ]** リストから、1 人、または複数のユーザーを選択します。  
**SAML ユーザーとグループ**  
**SAML およびクイックユーザーおよびグループ**の場合は、SAML を介してフェデレーションされたユーザーまたはグループの 1 つ以上の Amazon リソースネーム (ARNs)、またはクイックユーザーまたはグループの ARNs を入力します。各 ARN の後で Enter キーを押します。  
ARN の構築方法については、「[Lake Formation の許可と取り消し AWS CLI コマンド](lf-permissions-reference.md#perm-command-format)」を参照してください。  
Lake Formation と Quick の統合は、Quick Enterprise Edition でのみサポートされています。  
**外部アカウント**  
**AWS アカウント、 AWS 組織**、または **IAM プリンシパル**には、IAM ユーザーまたはロールの 1 つ以上の有効な AWS アカウント IDs、組織 IDs、組織単位 IDs、または ARN を入力します。各 ID の後で **[Enter]** キーを押します。  
組織 ID は、最初の「o-」と、その後に続く 10～32 個の小文字または数字で構成されています。  
組織単位 ID は「ou-」で始まり、その後に 4～32 個の小文字または数字 (OU が含まれるルートの ID) が続きます。この文字列の後には、2 番目の「-」ダッシュと 8～32 個の追加の小文字または数字が続きます。

1. 

**LF タグを指定します。**

   **[LF タグに一致するリソース]** オプションが選択されていることを確認します。**[LF タグのキーと値のペア]** または **[保存された 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] (削除) ボタンが含まれる別の行を追加できることを示しています。](http://docs.aws.amazon.com/ja_jp/lake-formation/latest/dg/images/grant-data-permissions-tags-2.png)

   1. (オプション) **[LF タグのキーと値のペアを追加]** を再度選択して、別の LF タグを指定します。

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

   1. 式を再利用するには、**[新しい式として保存]** オプションを選択します。

      式を保存するには `Create LF-Tag expression` が必要です。

      LF タグ式に関する詳細については、「[メタデータアクセスコントロールのための LF タグ式の管理](managing-tag-expressions.md)」を参照してください。

1. 

**許可を指定します。**

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

   一致するデータベース、一致するテーブル、および一致するビューについて付与する許可を指定できます。  
![ページの 2 つのセクションが表示されています。[Database permissions] (データベースの許可) セクションには、[Database permissions] (データベースの許可) と [Grantable permissions] (付与可能な許可) のチェックボックスがあります。[Database] (データベース) セクションの下にある [Table permissions] (テーブルの許可) セクションには、[Table permissions] (テーブルの許可) と [Grantable permissions] (付与可能な許可) のチェックボックスが表示されています。](http://docs.aws.amazon.com/ja_jp/lake-formation/latest/dg/images/grant-TBAC-DB-table-permissions.png)

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

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

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

1. **[付与]** を選択します。

------
#### [ AWS CLI ]

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

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

  以下の例は、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":["*"]}]}}' 
  ```  
**Example**  

  以下の例では、LF タグ式「`(level=director) AND (region=west OR region=south)`」をユーザー `datalake_user1` に付与します。このユーザーは、一致するテーブル、つまり `level=director` と (`region=west` または `region=south`) の両方が割り当てられているテーブルに対する grant オプション付きの `SELECT`、`ALTER`、および `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"]}]}}'
  ```  
**Example**  

  次の例では、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"]}]}}'
  ```

------