OceanBaseデータベースは、Oracleモードでのユーザーロール管理機能をサポートしています。
Oracleモードでは、ロールはシステム権限とオブジェクト権限の組み合わせです。ロールを使用することで、ユーザー権限を簡単に管理できます。
OceanBaseデータベースにおけるロールの機能は以下の通りです:
ロールにはシステム権限またはオブジェクト権限を付与できます。
ロールには他のロールを含めることができます。つまり、ロールには他のロールを含めることが可能です。
1人のユーザーに複数のロールを付与でき、1つのロールを複数のユーザーに付与することもできます。
現在、OceanBaseデータベースには、デフォルトで以下のシステムロールが存在します:
CONNECTロールこのロールは
CREATE SESSIONシステム権限を提供します。特定のユーザーにCREATE SESSIONシステム権限を付与する必要がある場合、その権限を直接付与するか、ユーザーにCONNECTロールを付与することで実現できます。RESOURCEロールこのロールは以下のシステム権限を提供します:
CREATE CLUSTER、CREATE INDEXTYPE、CREATE OPERATOR、CREATE PROCEDURE、CREATE SEQUENCE、CREATE TABLE、CREATE TRIGGERおよびCREATE TYPE。このロールに含まれる権限は、
DBA_SYS_PRIVSディクショナリビューで確認できます。DBAロールこのロールは非常に強力な権限を持ち、
DELETE ANY TABLEやGRANT ANY PRIVILEGEなど、多数のシステム権限を提供します。このロールに含まれる権限は、
DBA_SYS_PRIVSディクショナリビューで確認できます。注意
データベースのセキュリティ上の理由から、OceanBaseデータベースでは業務ニーズに応じて適切に権限を付与することを推奨します。このロールを無闇にユーザーに付与しないでください。
PUBLICロールこのロールは、テナント内のすべてのユーザーに適用されます。デフォルトでは権限は付与されません。
PUBLICロールに権限を付与すると、システムはその権限をテナント内の各ユーザーの権限ドメインに追加します。すべてのユーザーは、その権限が許可する操作を即座に実行できるようになります。注意
データベースのセキュリティを確保するため、`PUBLIC` ロールに無闇に権限を付与することは推奨されません。
STANDBY_REPLICATIONロールこのロールは、ネットワークベースの物理スタンバイデータベースシナリオで主に使用されます。プライマリテナントのアクセスビュー専用ユーザーにこのロールを付与することで、スタンバイテナントが同期プロセス中にプライマリテナントの関連情報にアクセスできるようにします。
このロールにはデフォルトで
CREATE SESSIONシステム権限と、以下のビューに対するクエリ権限が含まれます:- GV$OB_LOG_STAT
- GV$OB_UNITS
- GV$OB_PARAMETERS
- DBA_OB_ACCESS_POINT
- DBA_OB_TENANTS
- DBA_OB_LS
- DBA_OB_LS_HISTORY このロールに含まれる権限は、
DBA_SYS_PRIVSディクショナリビューで確認できます。
関連ドキュメント
ロール管理に関するその他の操作については、次の記事を参照してください: