はじめに

ロールは権限をまとめたものであり、ユーザに付与します。複数の同じ権限を多数のユーザに付与するような場合、ロールを使用すると権限管理が容易になります。管理者が明示的に作成することもできますが、Verticaには事前に定義されたロールが5つありそれらを使用することも可能です。

Verticaの事前定義ロール

以下に各ロールの概要をご紹介します。

DBADMIN

このロールを付与されたユーザは、以下を実行する権限を持ちます。

・ユーザとロールの作成、ならびにユーザへのロールと権限付与
・スキーマの作成と削除
・すべてのシステムテーブルの確認
・ユーザセッションの参照、停止
・任意のユーザが作成したすべてのデータへのアクセス

[実行例]


PSEUDOSUPERUSER

このロールを付与されたユーザは、完全な管理者権限を取得できます。
以下を実行する権限が含まれます。

・ユーザとロールの作成、ならびにユーザへのロールと権限付与
・スキーマとテーブルの作成
・ユーザアカウントの変更
例)ユーザアカウントのパスワード設定、アカウントのロック/ロック解除
・UDFライブラリと関数、ならびに外部プロシージャの作成や削除
・任意のユーザが作成したすべてのデータへのアクセス

[実行例]


DBDUSER

このロールを付与されたユーザは、コマンドラインから Database Designer 関数を呼び出すことができます。
Database Designer 関数を利用することで、Management ConsoleやAdministration Toolsと同様にプロジェクションの最適化やクエリスペシフィックプロジェクションを作成することができます。

詳細については以下のマニュアルを必要に応じて参照してください。
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/SQLReferenceManual/Functions/VerticaFunctions/DatabaseDesigner/DatabaseDesignerFunctions.htm

※非dbadminユーザ(DB)は、DBDUSERロールが付与されていても、Administration ToolsやManagement Consoleから、Database Designerは実行できません。
Administration ToolsやManagement Consoleから、Database Designerを実行できるのは、dbadminユーザ(DB)のみです。

[実行例]


SYSMONITOR

このロールを付与されたユーザは、監視可能としてマークされているすべてのシステムテーブルを表示することができます。監視可能なすべてのテーブルのリストを表示するには、以下 SQL を実行します。


[実行例]

PUBLIC

新規ユーザを作成した際に自動的に割り当てられるロールです。
常に有効であり、削除または取り消すことはできません。このロールを使用して、すべてのデータベースユーザに同じ最小特権セットを付与します。

参考情報

権限・ロールのまとめ記事
http://vertica-tech.ashisuto.co.jp/privilege-role-summary/

権限管理を容易にする方法(ロールについて)
http://vertica-tech.ashisuto.co.jp/create_role/

データ参照をアクセス制御する方法(行アクセス)
http://vertica-tech.ashisuto.co.jp/access-ctrl-row/

Predefined Database Roles
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/AdministratorsGuide/DBUsersAndPrivileges/Roles/PredefinedRoles.htm

DBADMIN
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/AdministratorsGuide/DBUsersAndPrivileges/Roles/DBADMINRole.htm

PSEUDOSUPERUSER
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/AdministratorsGuide/DBUsersAndPrivileges/Roles/PSEUDOSUPERUSERRole.htm

DBDUSER
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/AdministratorsGuide/DBUsersAndPrivileges/Roles/DBDUSERRole.htm

SYSMONITOR
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/AdministratorsGuide/DBUsersAndPrivileges/Roles/SYSMONITORROLE.htm

SYSTEM_TABLES
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/SQLReferenceManual/SystemTables/CATALOG/SYSTEM_TABLES.htm

PUBLIC
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/AdministratorsGuide/DBUsersAndPrivileges/Roles/PUBLICRole.htm



検証バージョンについて

この記事の内容はVertica 10.1で確認しています。

更新履歴

2021/05/25 本記事を公開