Virtual DataPort 7.0 の権限システムの変更点¶
Denodo 7.0 では、よりきめ細かな権限をユーザーおよびロールに付与できるように、権限システムに大幅な変更が導入されました。管理者は次のエレメントに対する権限を付与できるようになりました。
データソース
Web サービス
ウィジェット
以前のバージョンでは、データベースに対する書き込み権限を持っているユーザーだけが、これらのエレメントを作成できました。
Create 権限がよりきめ細かくなりました。Create 権限を付与する代わりに、管理者は次の権限をユーザーに付与することができます。
Create folder
Create data source
Create view
Create data service (Web サービス、ウィジェットおよび JMS リスナー)
Create 権限を付与すると、自動的にこれらのすべての権限が付与されます。
ここでは、付与できるすべての権限、および各権限の変更点について簡単に説明します。
詳しい説明¶
Denodo 8.0 では、「Read」権限が、この権限の動作を明確に表すために「Execute」という名前に変更されました。既存の VQL スクリプトとの下位互換性を維持するために、VQL ステートメントでは引き続き READ
トークンを使用できます。
エレメントのタイプごとに付与できる権限について以下に記載します。
データベースに対する権限¶
ユーザー/ロールに付与できる、データベースに対する権限は次のとおりです。
Connect
Create (以下のすべての Create 権限を含む)
Create data source
Create data service (Web サービス、ウィジェットおよび JMS リスナー)
Create folder
Create view
Metadata
Execute
Write
データソースに対する権限¶
ユーザー/ロールに付与できる、データソースに対する権限は次のとおりです。
Metadata
Execute: この権限に加えて、データベースに対する「Create view」権限を持っているユーザーが、このデータソースを基にして基本ビューを作成することができます。
Write: 次の操作を実行するために必要です。
このデータソースの基本ビューの「ソース更新」を実行する。このためには基本ビューに対する書き込み権限も必要です。
データソースの VQL を取得する
データソースをコピーする
データソースを作成したユーザーには、自動的にそのデータソースに対する書き込み権限が与えられます。
ビューに対する権限¶
ユーザー/ロールに付与できる、ビューに対する権限は次のとおりです。
Metadata
Execute
Write: 次の操作を実行するために必要です。
ビューの VQL を取得する。このためには、そのビューで直接参照されている各ビューに対する Execute 権限も必要です。
ビューをコピーする。
ビューを作成したユーザーには、自動的にそのビューに対する書き込み権限が与えられます。
Insert
Delete
Update
データサービス (Web サービス、ウィジェットおよび JMS リスナー) 対する権限¶
ユーザー/ロールに付与できる、データサービス (Web サービス、ウィジェットおよび JMS リスナー) に対する権限は次のとおりです。
Metadata
Write: Web サービス、ウィジェットのデプロイおよび JMS リスナーの有効化に必要です。Web サービスを作成したユーザーには、自動的にその Web サービスに対する書き込み権限が与えられます。
ストアドプロシージャに対する権限¶
ユーザー/ロールに付与できる、ストアドプロシージャに対する権限は次のとおりです。
Metadata
Execute
Write: 次の操作を実行するために必要です。
プロシージャの VQL を取得する
プロシージャをコピーする
CATALOG_PERMISSIONS プロシージャ¶
Denodo 7.0 では、このバージョンで追加された新しい権限に合わせて、 CATALOG_PERMISSIONS ストアドプロシージャの出力フィールドが変更されました。
次の出力フィールドの名前が変更されました。
dbread
:dbexecute
に変更されました。viewread
:elementexecute
に変更されました。viewwrite
:elementwrite
に変更されました。viewinsert
:elementinsert
に変更されました。viewdelete
:elementdelete
に変更されました。viewupdate
:elementupdate
に変更されました。
次の出力フィールドが追加されました。
elementsubtype
dbcreatedatasource
dbcreatedataservice
dbcreateview
dbcreatefolder
elementmetadata
一部の出力フィールドの名前が変更されたので、このプロシージャを呼び出しているクエリの変更が必要になる可能性があります。
ロケールマップの作成および jar 拡張機能のインポート¶
Denodo 7.0 以降では、次の操作を行えるのは、Virtual DataPort サーバーの管理者だけです。
ロケールマップ (i18n マップ) を作成する
jar 拡張機能をインポートする
以前のバージョンの動作の復元¶
Denodo 7.0 では、ユーザーが操作を実行できるかどうかを検査するときにエレメントの所有者は考慮されません。ユーザーに付与されている権限だけが考慮されます。以前のバージョンでは、データソースまたはデータサービスの所有者であることは、それらに対して「Write」権限を持っていることと同じでした。
以前のバージョンの動作に戻すには、VQL Shell から次を実行してください。
SET 'com.denodo.vdb.security.requirePrivilegesToOwners' = 'false';
このプロパティの変更を適用するには、Virtual DataPort サーバーを再起動します。
データソース、ビューまたはデータサービスを作成したユーザーには、自動的にそれらに対する書き込み権限が与えられることに注意してください。ただし、この権限を後から取り消すこともできます。
以前のバージョンでは、次の権限があれば、データベースに対する Connect 権限がなくても、そのデータベースのエレメントを使用することができました。
他のデータベースに接続する権限
そのデータベースのエレメントに対する適切な権限
Denodo 7.0 では、データベースのエレメントを使用するには、そのデータベースに対する Connect 権限が必要です。
以前のバージョンの動作に戻すには、VQL Shell から次を実行してください。
SET 'com.denodo.vdb.security.requireConnectOnCrossDatabaseAccess' = 'false';