共通ロールは、ルートと既存および将来のすべてのプラガブル・データベース(PDB)に存在するデータベース・ロールです。共通ロールは、コンテナ間の操作に便利で、共通ユーザーがすべてのコンテナでロールを持つことを保証します。
すべての共通ロールは、ユーザー作成かOracle提供のいずれかです。Oracleから提供されるすべての事前定義ロールは共通ロールです(DBA
やPUBLIC
など)。ユーザー作成の共通ロールの名前は、C##
またはc##
の文字で始まり、ASCIIまたはEBCDIC文字しか使用できません。たとえば、マルチテナント・コンテナ・データベース(CDB)管理者が共通ユーザーc##dba
を作成し、このユーザーにDBAロールを共通に付与すると、c##dba
が既存および将来のすべてのPDBでDBAロールを持つようになります。
ユーザーは、次の基準を満たした場合にのみ、共通ロールで、そのロールに共通の権限を付与するなどの共通の操作を実行できます。
ユーザーは、その現在のコンテナがルートである共通ユーザーです。
ユーザーには、共通に付与されたSET CONTAINER
権限があり、これはその権限がすべてのコンテナで適用されることを意味します。
ユーザーには、指定した操作を実行する能力を制御する権限があり、この権限は共通に付与されています。
たとえば、共通ロールを作成するには、共通ユーザーに共通に付与されたCREATE ROLE
権限とSET CONTAINER
権限が必要です。Oracle Enterprise Manager Database Express (EM Express)を使用して作成される共通ロールは、ルート内で作成する必要があります。
関連項目:
CDBで共通に付与されるロールおよび権限の詳細は、『Oracle Database概要』を参照してください。
共通ロールの管理方法の詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。