ロールの作成¶
注釈
Agora から Design Studio にアクセスすると、ロールの作成、変更、削除は無効化されます。これは、ロール管理が Agora から行われるためです。
ロールは、ユーザーに付与できる一連のアクセス権限です。
新しいロールを作成するには、[Administration] メニューで [Role management] をクリックします。このダイアログで [New role] をクリックします。このダイアログで以下を指定する必要があります。
新しいロールの名前
説明
[OK] をクリックします。ロールを作成したら、それらのロールに権限を割り当てる必要があります。これを行うには、ロールを選択して [Assign privileges] をクリックします。
このダイアログで、このロールに割り当てるアクセス権限を選択できます。ロールに割り当て可能なアクセス権限とユーザーに割り当て可能なアクセス権限は同じであり、同じように動作します。これらの権限の割り当て方法については、「 ユーザーの権限の変更 」を参照してください。
注釈
「 ロール 」のセクションで説明しているように、ユーザーに 2 つのロールを割り当てている場合、このユーザーの「有効なアクセス許可」は、両ロールの権限を組み合わせたものになります。
ロールへの権限の割り当て¶
「 ロール 」のセクションで説明しているように、[Assign roles] をクリックすることによって、ロールを別のロールに割り当てることもできます (ロールの継承)。割り当てるロールごとに、リストでロールを選択して
をクリックします。
次の図では、「denodo_developer」ロールが「data_catalog_developer」ロールと「vdp_developer」ロールを持っていることがわかります。「denodo_developer」ロールを持つユーザーは、「data_catalog_developer」、「vdp_developer」、および「denodo_developer」の各ロールに割り当てられている権限を持ちます。
別のロールへのロールの割り当て (ロールの継承)¶
手動でロールを作成する代わりに、LDAP サーバーからロールをインポートできます。ロールをインポートする前に、以下のタスクのどちらかを実行する必要があります。
LDAP 認証を使用するデータベースを作成します。このデータベースでは、ユーザーを認証するために、ロールのリストの取得元である LDAP サーバーを使用します。
または 、ロールのリストの取得元である LDAP サーバーを参照する LDAP データソースを作成します。このデータソースは、LDAP 認証を使用しないデータベースで作成します。LDAP データソースの作成方法については、「 LDAP ソース 」を参照してください。
これを実行した後で、[Import roles from LDAP] をクリックして [Import Roles from LDAP] ウィザードを表示します。
[Import Roles from LDAP] ウィザード¶
[Import Roles from LDAP] ウィザードを使用して、LDAP データソース (通常は Active Directory) からロールの名前と説明をインポートします。その後で、インポートしたロールを適切な権限に付与する必要があります。
[Import Roles from LDAP] ウィザード (1)¶
以下を指定する必要があります。
Database: LDAP 認証を使用するように構成されたデータベース、または LDAP データソースを含むデータベースを選択します。
LDAP 認証を使用するデータベースを選択した場合、そのデータベースの LDAP 構成が下の各ボックスにコピーされます。選択したデータベースの LDAP データソースが使用されるため、[LDAP data source] ボックスは無効になります。
または、ロールのリストの取得元である LDAP サーバーを参照する LDAP データソースが含まれるデータベースを選択し、下にある [LDAP data source] ボックスでそのデータソースを選択します。
Role base: ロールを表すノードを検索するためのスコープとして使用する LDAP サーバーのノード。
[Role base] ボックスの横にある
ボタンをクリックすることによって、複数の「ロールベース」を入力できます。Attribute with role name: ロールを表すノードにおける、ロールの名前が含まれる属性の名前。
Attribute with role description: ロールを表すノードにおける、ロールの説明が含まれる属性の名前。
Role search pattern: Virtual DataPort にインポートするロールを表すノードを取得する場合、LDAP クエリが実行されます。これは、そのクエリを生成するために使用されるパターンです。
[OK] をクリックします。LDAP サーバーで見つかったロールが表示されます。このリストで、インポートするロールを選択して [OK] をクリックします。
[Import Roles from LDAP] ウィザード (2)¶
一番上のテキストフィールドを使用して、ロールを名前で検索できます。
serveradmin ロールまたは monitor_admin ロールは、LDAP クエリで返されてもこのダイアログには表示されません。これらのロールは Virtual DataPort のインストール中に自動的に定義されるので、すでに存在しているからです。これらのロールの詳細については、「 ロール 」を参照してください。
デフォルトのロール¶
Virtual DataPort には、以下のデフォルトのロールが定義されています。これらは、変更も削除もできません。
allusers: 新しいローカルユーザーにデフォルトで付与されます。さらに、Kerberos 認証または SAML 2.0 を使用して Virtual DataPort に接続するすべてのユーザー、または LDAP 認証を使用するデータベースに接続するすべてのユーザーに自動的に付与することができます。assign_all_privileges: 自身を除くすべてのユーザーとロールに、全メタデータエレメントに対するすべての権限を割り当てる権限を付与します。assign_all_roles: すべてのユーザーやロールにロールを割り当てる権限を付与します。assign_all_roles ロールを持つユーザーにロールを割り当てることはできません。assign_tags: ビューにタグを割り当てる権限を付与します。ユーザーには、影響を受けるビューに対する METADATA 権限が必要です。assign_vdb_admin_privileges: データベースとそのエレメントに対する権限のうち、 'admin' 権限を除くすべての権限をすべてのユーザーとロールに割り当てる権限を付与します。configure_database: データベースの構成を管理する権限を付与します。configure_resource_manager: Resource Manager のルールを管理する権限を付与します。configure_server: Resource Manager のルールとリソース (jar とライブラリ) を除く、すべてのサーバー構成を管理する権限を付与します。create_database: データベースを作成または変更する権限を付与します。create_resource: サーバーのリソースを作成または変更する権限を付与します。create_temporary_table: 一時テーブルを作成する権限を付与します。これは、ユーザーアカウントに一時テーブルの作成は許可しても、ユーザーが他のタイプのエレメントを作成することのできるCREATE権限またはCREATE VIEW権限は付与しないようにしたい場合に便利です。design_studio_allow_login: 構成プロパティ「com.denodo.vdb.security.designStudio.enableRoleAllowLogin」が「true」の場合、このロールを持つユーザーのみが Design Studio にログインできます。このプロパティはデフォルトで「false」に設定されているため、正しい権限を持つすべてのユーザーは、他のクライアントアプリケーションを使用してログインできる場合、Design Studio にログインできます。これは、特定のユーザーがサードパーティのアプリケーションから JDBC または ODBC 経由でログインできるようにする一方で、Design Studio にはログインできないようにするセキュリティ制限を適用する場合に便利です。
このプロパティの値を確認するには、以下を実行します。
SELECT property_value FROM GET_PARAMETER() WHERE input_property_name = 'com.denodo.vdb.security.designStudio.enableRoleAllowLogin';
この値を変更するには、以下を実行します。
SET 'com.denodo.vdb.security.designStudio.enableRoleAllowLogin' = 'true';
drop_database: データベースを削除する権限を付与します。drop_resource: サーバーのリソース (jar とライブラリ) を削除する権限を付与します。diagnostic_monitoring_tool_adminおよびdiagnostic_monitoring_tool_create_diagnostic: これらのロールはそれぞれ、Diagnostic & Monitoring Tool に対する異なる権限を付与します。これらのロールが付与する権限については、『Diagnostic & Monitoring Tool ガイド』の「 認可 」を参照してください。data_catalog_admin、data_catalog_assisted_query、data_catalog_classifier、data_catalog_content_admin、data_catalog_data_preparation、data_catalog_editor、data_catalog_exporter、およびdata_catalog_manager: これらのロールはそれぞれ、Data Catalog に対する異なる権限を付与します。これらの各ロールが付与する権限については、『Data Catalog ガイド』の「 認可 」のセクションを参照してください。selfserviceadminロールとselfserviceexporterロールは非推奨となっているため、今後はユーザーに付与しないでください。これらのロールは Denodo 6.0 との下位互換性を維持するために存在しています。代わりに、data_catalog_adminロールおよびdata_catalog_exporterロールを付与してください。これらはそれぞれ、selfserviceadminロールおよびselfserviceexporterロールと同等です。非推奨のすべての機能のリストについては、「 Denodo Platform で廃止された機能 」のセクションを参照してください。
disable_cache_query: ユーザーが WRITE 権限を付与されていない場合、ビューのキャッシュを無効にするクエリを実行する権限を付与します。このキャッシュは、CONTEXT 句 'cache'='off’ を使用して無効にすることができます。impersonator: このロールを持つユーザーが REST Web サービスを公開する場合、それらのサービスで他のユーザーを偽装できます (「Web サービスの認証」の「 ユーザーの偽装 」を参照)。import_tags: タグをインポートする権限を付与します。metadata_export: エレメントに対するMETADATA権限を持つユーザーが、環境に固有のプロパティを使用せずにエレメントの VQL を取得できます (「 プロパティファイルへのエクスポート 」セクションの「metadata_export ロールによるエクスポート」を参照してください)。manage_policies: グローバルセキュリティポリシーを作成、編集、削除、有効化、無効化する権限を付与します。manage_tags: Virtual DataPort でタグを作成、編集、削除する権限を付与します。manage_summaries: サマリを管理する権限を付与します。manage_listeners: JMS および Kafka リスナーを管理する権限を付与します。manage_metadata_tables: メタデータテーブルを管理する権限を付与します。read_all_privileges: すべてのユーザーとロールに付与される権限を表示する権限を付与します。use_large_language_model: 大規模言語モデルを呼び出す Denodo Assistant の機能を使用する権限を付与します。monitor_admin: Virtual DataPort の監視インターフェイスに接続する権限を付与します。このインターフェイスは、JMX (Java Management Extensions) プロトコルを使用します。この権限は、Diagnostic & Monitoring Tool、Denodo Monitor、Oracle VisualVM、Oracle Java Mission Control、Nagios などで Virtual DataPort を監視するために必要です。
旧バージョンの Denodo では、このロールの名前は
jmxadminです。この名前は下位互換性を確保するために維持されています。scheduler_admin: Scheduler Administration Tool で使用されます。このロールを割り当てられているユーザーは、Scheduler Administration Tool で任意のタスクを実行できます。詳細については、『Scheduler 管理ガイド』の「 アクセス許可 」を参照してください。
serveradmin: JMX 経由で Virtual DataPort に接続する権限が付与されない点を除いて、Virtual DataPort の管理者ユーザーと同等です。つまり、このロールを持つユーザーは、データベースの管理やサーバーの設定の変更などを行うことができます。このロールを持つユーザーがユーザーとロールの権限を管理するには、「assignprivileges」ロール (下記参照) も必要です。assignprivileges: 他のユーザーへの権限の付与/取り消しを行う権限を付与します。注釈
このロールでは以下の操作ができます。
標準ユーザーは、ユーザーやロールに対する自身の権限を付与でき、また取り消すことができます。
ローカル管理者は、管理対象データベース (またはそのデータベースのあらゆるエレメント) に対するあらゆる権限をあらゆるユーザーやロールに付与でき、また取り消すことができます。
グローバル管理者は、あらゆるユーザーやロールにあらゆる権限を付与でき、また取り消すことができます。
以下の点を考慮してください。
新しい管理者ユーザーはデフォルトでこのロールを持っていますが、それを取り消すことはできます。
このロールに権限やロールを付与することはできません。このロールが [Role Management] パネルに表示されず、[Assign roles] ダイアログに表示されるのは、そのためです。
create_userおよびcreate_role: ユーザーとロールを作成する権限を付与します。以下の点を考慮してください。
create_userロールを持つユーザーのみが標準ユーザーを作成できます (管理者はこのロールでは作成できません)。
drop_userおよびdrop_role: ユーザーとロールを削除する権限を付与します。
