Oracle Globally Distributed Databaseユーザーおよびロール

ここでは、Oracle Globally Distributed Database固有のデータベース・ユーザーおよびロールの管理について説明します。

ユーザーおよびロールの概要

Oracle Globally Distributed Databaseでは、一部のタイプのユーザーが特定のロールおよび権限を必要とします。

シャード・データベースには、次の3種類のユーザーがあります。

  • シャード・データベース/GSM管理者 - このユーザーにGSMADMIN_ROLEロールを付与します。このロールは、管理タスクを実行するために昇格された権限を必要とする、1つまたはいくつかのアカウントにのみ付与する必要があります。このロールには、ALTER SYSTEMなどの多数の強力な権限があります。

  • シャード・データベース・スキーマ所有者 - このユーザーにSHARDED_SCHEMA_OWNERロールを付与します。このロールは、シャード・データベース・スキーマを所有するアカウントにのみ付与する必要があります。ロールには、様々なシャード操作のためにアカウントが独自のスキーマを管理できるようにする十分な権限のみがあります。たとえば、「任意の表を選択」は、このロールが持つ権限ではありません。

  • 通常のシャード・データベース・ユーザー - このタイプのユーザーには、ENABLE SHARD DDLの下に作成されたアカウントが含まれます。これらのユーザーには、シャード・アプリケーションの実行に必要な権限またはロールを除き、特別な権限またはロールはありません。データベース管理者は、これらのアカウントに必要な権限を決定し、アカウントに個別に付与します。

Oracle Globally Distributed Databaseのロール

Oracle Globally Distributed Databaseには、シャード・データベース管理に役立つ一連の事前定義データベース・ロールが用意されています。

ほとんどのOracle Globally Distributed Databaseロールには多数の権限がありませんが、管理タスクを実行できる特定のOracle提供プロシージャおよびパッケージに対する実行権限があります。

事前定義のロール 説明

GSMADMIN_ROLE

Oracle Globally Distributed Database構成を管理できるように、Oracle Globally Distributed Database管理者に付与することが必要

SHARDED_SCHEMA_OWNER

Oracle Globally Distributed Databaseスキーマ所有者が独自のスキーマで管理タスクを実行するための権限を提供

GSMCATUSER_ROLE

内部使用のためにOracle提供のアカウントGSMCATUSERのみを付与

GSMROOTUSER_ROLE

内部使用のためにOracle提供のアカウントGSMROOTUSERにのみ付与

GSMUSER_ROLE

内部使用のためにOracle提供のアカウントGSMUSERにのみ付与

データベース・ロールの詳細は、Oracle Databaseのインストールで事前に定義されているロールを参照してください。

GSMUSERアカウントについて

GSMUSERアカウントは、Oracle Globally Distributed Database構成内のデータベースに接続するためにGDSCTLおよびシャード・ディレクタ(グローバル・サービス・マネージャ)で使用されます。

このアカウントは、CDBとPDBの両方でロック解除する必要があります。

GSMUSERは、デフォルトでOracleデータベースに存在します。Oracle Globally Distributed Database構成では、このアカウントはプール・データベースのかわりにシャードへの接続に使用され、アカウントがロック解除された後、SYSDGおよびSYSBACKUPシステム権限の両方を付与する必要があります。

GSMUSERアカウントに指定されたパスワードは、gdsctl add shardコマンドで使用されます。新しいシャードでGSMUSERSYSDGおよびSYSBACKUPを付与しないと、gdsctl add shardがORA-1031: 不十分な権限エラーで失敗します。

関連項目:

Global Data Services概要および管理ガイドシャードの追加

GSMROOTUSERアカウントについて

GSMROOTUSERは、プラガブル・データベース(PDB)シャードが存在する場合にのみ使用されるOracle Globally Distributed Database固有のデータベース・アカウントです。アカウントは、GDSCTLおよびグローバル・サービス・マネージャがコンテナ・データベース(CDB)のルート・コンテナに接続して管理タスクを実行するために使用されます。

PDBシャードが使用されていない場合、GSMROOTUSERユーザーはロック解除されず、どのデータベースでもパスワードを割り当てられません。ただし、PDBシャードを含むシャード構成では、gdsctl add cdbコマンドを実行する前に、GSMROOTUSERをロック解除し、SYSDGおよびSYSBACKUP権限を付与する必要があります。GSMROOTUSERアカウントのパスワードは、CDBのルート・コンテナでalter user SQLコマンドをgdsctl modify CDB -pwdコマンドと組み合せて使用することで、デプロイ後に必要に応じて変更できます。

関連項目:

Global Data Services概要および管理ガイドcdbの追加