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

Azure ADユーザーは、1つのデータベース・スキーマにマップされ、オプションで1つ以上のデータベース・ロールにマップされます。Azure ADユーザーをマップした後、ユーザーは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. CREATE ROLEまたはALTER ROLE文を、Entra IDアプリケーション・ロール名を指定するIDENTIFIED GLOBALLY AS句を使用して実行します。
    たとえば、widget_sales_roleという名前の新しいデータベース・グローバル・ロールを作成し、それをWidgetManagerGroupという名前の既存のEntra IDアプリケーション・ロールにマップするには:
    CREATE ROLE widget_sales_role IDENTIFIED GLOBALLY AS 
    'AZURE_ROLE=WidgetManagerGroup';