Autonomous DatabaseでのEntra ID認証のロールおよびスキーマ・マッピング

Microsoft Entra ID (Azure AD)ユーザーは、1つのデータベース・スキーマにマップし、オプションで1つ以上のデータベース・ロールにマップします。Entra IDユーザーをマッピングした後、ユーザーはAutonomous Databaseインスタンスに接続できます。

Microsoft AzureユーザーへのOracle Databaseスキーマの排他的マッピング

Microsoft AzureユーザーにOracle Databaseスキーマを排他的にマップできます。

  1. CREATE USERまたはALTER USERシステム権限を付与されたユーザーとして、Oracle Databaseインスタンスにログインします。
  2. Azureユーザー名を指定するIDENTIFIED GLOBALLY AS句を使用して、CREATE USERまたはALTER USER文を実行します。
    たとえば、peter_fitchという名前の新しいデータベース・スキーマ・ユーザーを作成し、このユーザーをpeter.fitch@example.comという名前の既存のAzureユーザーにマップする手順は、次のとおりです。
    CREATE USER peter_fitch IDENTIFIED GLOBALLY AS 
    'AZURE_USER=peter.fitch@example.com';
  3. CREATE SESSION権限をユーザーに付与します。
    GRANT CREATE SESSION TO peter_fitch;

アプリケーション・ロールへの共有Oracleスキーマのマッピング

このマッピングでは、Oracleスキーマがアプリケーション・ロールにマップされます。したがって、そのアプリケーション・ロールを持つすべてのユーザーが同じ共有スキーマを取得します。

  1. CREATE USERまたはALTER USERシステム権限を持つユーザーとして、Oracle Databaseインスタンスにログインします。
  2. Azureアプリケーション・ロール名を指定するIDENTIFIED GLOBALLY AS句を使用して、CREATE USERまたはALTER USER文を実行します。
    たとえば、dba_azureという名前の新しいデータベース・グローバル・ユーザー・アカウント(スキーマ)を作成し、それをAZURE_DBAという名前の既存のEntra IDアプリケーション・ロールにマップするには、次のようにします:
    CREATE USER dba_azure IDENTIFIED GLOBALLY AS 'AZURE_ROLE=AZURE_DBA';

アプリケーション・ロールへのOracle Databaseグローバル・ロールのマッピング

Entra IDアプリにマップされたOracle Databaseグローバル・ロールは、Azureユーザーおよびアプリケーションに、ログイン・スキーマを介して付与されている権限およびロールに加え、さらに権限およびロールを付与します。

  1. CREATE ROLEまたはALTER ROLEシステム権限を付与されたユーザーとして、Oracle Databaseインスタンスにログインします
  2. Entra IDアプリケーション・ロールの名前を指定するIDENTIFIED GLOBALLY AS句を使用してCREATE ROLEまたはALTER ROLE文を実行します。
    たとえば、widget_sales_roleという名前の新しいデータベース・グローバル・ロールを作成し、それをWidgetManagerGroupという名前の既存のEntra IDアプリケーション・ロールにマップするには、次のようにします:
    CREATE ROLE widget_sales_role IDENTIFIED GLOBALLY AS 
    'AZURE_ROLE=WidgetManagerGroup';