Data Lake Formation(DLF)では、データレイク内のデータベース、テーブル、列、および関数に対する権限を設定できます。このトピックでは、さまざまな操作を実行するために必要な権限について説明します。また、所有者と所有者権限の概念を紹介し、権限検証メカニズムについて説明します。
権限管理
権限設定
データカタログに対する権限制御を有効または無効にすることができます。詳細については、「権限の設定」をご参照ください。
背景情報
次の表に、権限を設定する際に指定する必要がある 3 つの要素を示します。
要素 | 説明 |
プリンシパル | 権限が付与されるユーザーまたはロール。ユーザーは、Alibaba Cloud アカウント、RAM ユーザー、または RAM ロールである必要があります。ロールは、DLF コンソールで作成する必要があります。DLF コンソールでロールを作成する方法の詳細については、「ロール管理」をご参照ください。 プリンシパルは、次のいずれかの形式で指定できます。
|
リソース | データレイクで管理されるリソース。
|
アクセス | リソースへのアクセスに使用されるメソッド。アクセス方法は、リソースの種類によって異なります。たとえば、データベースは Create Table メソッドと List メソッドをサポートし、テーブルは Select メソッドと Update メソッドをサポートし、列は Select メソッドのみをサポートします。 |
権限の概要
次の表に、データレイクでサポートされている権限を示します。
リソース | アクセス | 説明 |
カタログ | 変更 | カタログを変更するための権限。たとえば、これらの権限が付与されたユーザーは、 |
削除 | カタログを削除するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
付与 | カタログに対して承認操作を実行するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
データベースの作成 | カタログにデータベースを作成するための権限。たとえば、これらの権限が付与されたユーザーは カタログにデータベースを作成します。たとえば、 | |
データベース | 記述 | データベースのメタデータをクエリしたり、データベースを選択したりするための権限。たとえば、これらの権限が付与されたユーザーは、 |
変更 | データベースを変更するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
削除 | データベースを削除するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
テーブルの作成 | データベースにテーブルを作成するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
一覧表示 | データベースに属するリソースを照会するための権限。たとえば、これらの権限が付与されているユーザーは、 重要
| |
テーブル | 記述 | テーブルのメタデータをクエリするための権限。たとえば、これらの権限が付与されたユーザーは、 |
変更 | テーブルを変更するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
削除 | テーブルを削除するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
選択 | テーブルのデータをクエリするための権限。たとえば、これらの権限が付与されたユーザーは、 | |
更新 | テーブルのデータを更新するための権限。たとえば、これらの権限が付与されたユーザーは、 | |
列 | 選択 | 列のデータをクエリするための権限。たとえば、これらの権限が付与されたユーザーは、 |
関数 | 記述 | 関数のメタデータをクエリするための権限。 |
変更 | 関数に関する情報を変更するための権限。 | |
削除 | 関数を削除するための権限。 | |
実行 | 関数を使用または実行するための権限。 |
所有者権限
所有者の定義
リソースを作成したユーザーは、そのリソースの所有者と呼ばれます。データベースまたはテーブルの所有者情報は、対応する [基本情報] セクションで確認できます。


Alibaba Cloud RAM ユーザーが Data Lake Formation でデータベースまたはテーブルを作成した場合、RAM ユーザーがデータベースまたはテーブルリソースの所有者になります。所有者は、ユーザーに対応する形式で表されます。
Linux ユーザーまたは Lightweight Directory Access Protocol(LDAP)ユーザーを使用して EMR エンジンで SQL ステートメントを実行してリソースを作成した場合、Linux ユーザーまたは LDAP ユーザーがリソースの所有者になります。
Databricks エンジンは、リソース所有者をサポートしていません。
DLF では、RAM ユーザーと Linux ユーザーまたは LDAP ユーザーのユーザー名が同じ場合、リソース所有者として同等です。たとえば、Owner=acs:ram::<Alibaba Cloud アカウントのユーザー ID>:user/user_a と Owner=user_a の設定は同じ効果があります。これにより、付与された権限に基づいて、RAM ユーザーを使用してオープンソースのビッグデータシステムに対する操作を実行できます。
Alibaba Cloud アカウントをリソースの所有者として使用する場合、同等の Linux ユーザーまたは LDAP ユーザーは存在しません。Owner=acs:ram::<Alibaba Cloud アカウントのユーザー ID>:root の設定は、Owner=root の設定と同等ではないことに注意してください。
RAM ユーザーのユーザー名を表示するには、次の手順を実行します。DLF コンソールにログオンし、左側のナビゲーションペインで [データ権限] > [ユーザー] を選択します。表示されるページで、RAM ユーザーを見つけ、ログオン名をクリックします。EMR エンジンを使用する場合は、RAM ユーザーと同じユーザー名を持つ Linux ユーザーまたは LDAP ユーザーを追加することをお勧めします。ユーザーを追加する方法の詳細については、「ユーザーアカウントの管理」をご参照ください。
所有者権限の定義
リソースの所有者には、そのリソースに対するすべての権限が付与されます。リソースの所有者に付与される権限は、所有者権限と呼ばれます。たとえば、データベースの所有者が user_a の場合、user_a はデータベースの変更やデータベースの削除などの操作を実行できます。
リソースの所有者には、リソースに属するサブリソースに対する権限は付与されません。たとえば、データベースの所有者には、データベースに対する権限のみが付与され、データベース内のすべてのテーブルに対する権限は付与されません。
所有者権限の検証
RAM ユーザーとして DLF コンソールにログオンすると、RAM ユーザーとして識別されます。RAM ユーザーまたは RAM ユーザーと同等のユーザーによって作成されたリソースに対する所有者権限が自動的に付与されます。
EMR エンジンを使用してデータレイク内のメタデータにアクセスすると、Linux ユーザーまたは LDAP ユーザーとして識別されます。Linux ユーザーまたは LDAP ユーザー、あるいはそれと同等のユーザーによって作成されたリソースに対する所有者権限が自動的に付与されます。
Databricks エンジンは、所有者権限の検証をサポートしていません。
サポートされているコンピューティングエンジン
次の表に、さまざまな EMR バージョンで DLF によってサポートされているコンピューティングエンジンを示します。
サポートされているコンピューティングエンジン
次の表に、さまざまな EMR バージョンで DLF によってサポートされているコンピューティングエンジンを示します。
EMR バージョン | Hive | Spark | Presto | Impala | |
EMR V3.X | EMR V3.39.0 以前 | サポートされていません | サポートされていません | サポートされていません | サポートされていません |
EMR-3.40.0 | サポートされています | サポートされています | サポートされています | サポートされていません | |
EMR V3.41.0 ~ EMR V3.43.1 | サポートされています | サポートされています | サポートされていません | サポートされていません | |
EMR V3.44.0 以降 (計画中) | サポートされています | サポートされています | サポートされています | サポートされています | |
EMR V5.X | EMR V5.5.0 以前 | サポートされていません | サポートされていません | サポートされていません | サポートされていません |
EMR-5.6.0 | サポートされています | サポートされています | サポートされています | サポートされていません | |
EMR V5.7.0 ~ EMR V5.9.1 | サポートされています | サポートされています | サポートされていません | サポートされていません | |
EMR V5.10.0 以降 (計画中) | サポートされています | サポートされています | サポートされています | サポートされています | |