Autonomous DatabaseでのOracle Database Vaultの使用

Oracle Database Vaultは、データベースに強力なセキュリティ制御を実装します。これらのユニークなセキュリティ制御により、特権データベース・ユーザーによるアプリケーション・データへのアクセスを制限することで、内部および外部の脅威のリスクを減らし、一般的なコンプライアンス要件に対応できます。

詳細は、「Oracle Database Vaultとは」を参照してください。

Autonomous DatabaseでのOracle Database Vaultのユーザーおよびロール

Oracle Database Vaultは、アプリケーション・データを不正アクセスから保護し、プライバシおよび規制要件に準拠するために管理者とデータ所有者間の職務分離を実装する上で役立つ強力なセキュリティ制御を提供します。

デフォルトでは、ADMINユーザーにはDV_OWNERおよびDV_ACCTMGRロールが含まれます。DV_OWNERアカウントとDV_ACCTMGRアカウントに別々のユーザーを設定する場合は、詳細は、「Oracle Database Vaultのスキーマ、ロールおよびアカウント」を参照してください。

Oracle Database Vaultが有効な場合、APEXコンポーネントに対してユーザー管理がデフォルトで有効になります。ユーザー管理が有効な場合、ユーザーをCREATE | ALTER | DROPするために必要なロールを持つAPEXユーザーは、Database Vaultが有効なときにこれらの操作を実行するために必要な権限を持ちます。これを変更するには、「Autonomous DatabaseでのOracle Database Vaultを使用したユーザー管理の無効化」を参照してください。

Oracle Database Vaultが有効なAutonomous Databaseでは、次の権限を付与します:

  • Oracle GoldenGateを使用する場合は、GGADMINユーザーにDV_GOLDENGATE_ADMINおよびDV_GOLDENGATE_REDO_ACCESSを付与します。

  • ADMINユーザーは、Oracle Data Pumpを使用する必要があるユーザーにBECOME USER権限を付与する必要がある。一部のOracle Data Pump操作を実行するには、追加のOracle Database Vault認可が必要な場合があります。たとえば、データベース全体のエクスポートを実行したり、レルム保護スキーマをエクスポートするには、DBMS_MACADM.AUTHORIZE_DATAPUMP_USERを使用します。

    詳細は、「AUTHORIZE_DATAPUMP_USERプロシージャ」を参照してください。

  • Oracle Database Vaultが有効で、資格証明所有者のスキーマがDatabase Vaultレルムを使用して保護されている場合に、DBMS_CLOUD資格証明関連のAPIが機能するには、C##CLOUD$SERVICEユーザーの認可をDatabase Vaultレルムに追加する必要があります。

    たとえば:

    BEGIN
        DBMS_MACADM.ADD_AUTH_TO_REALM(realm_name   => 'PROTECT_ADMIN',
            grantee       => 'C##CLOUD$SERVICE',
            rule_set_name => 'Enabled',
            auth_options  => DBMS_MACUTL.G_REALM_AUTH_PARTICIPANT);
    END;
    /

    ここで、PROTECT_ADMINはOracle Database Vaultレルムです。

    詳細は、ADD_AUTH_TO_REALMプロシージャを参照してください。

Autonomous DatabaseでのOracle Database Vaultの有効化

Autonomous DatabaseでOracle Database Vaultを有効にするステップを示します。

Autonomous Databaseでは、Oracle Database Vaultはデフォルトで無効になっています。Autonomous DatabaseでOracle Database Vaultを構成して有効にするには、次を実行します:

  1. 次のコマンドを使用して、Oracle Database Vaultを構成します:
    EXEC DBMS_CLOUD_MACADM.CONFIGURE_DATABASE_VAULT('adb_dbv_owner', 'adb_dbv_acctmgr');

    説明:

    • adb_dbv_ownerは、Oracle Database Vault所有者です。
    • adb_dbv_acctmgrは、アカウント・マネージャです。

    詳細は、「CONFIGURE_DATABASE_VAULTプロシージャ」を参照してください。

  2. Oracle Database Vaultの無効化:
    EXEC DBMS_CLOUD_MACADM.ENABLE_DATABASE_VAULT;

    詳細は、「ENABLE_DATABASE_VAULTプロシージャ」を参照してください。

  3. Autonomous Databaseインスタンスを再起動します。

    詳細は「Autonomous Databaseの再起動」を参照してください。

Oracle Database Vaultが有効か無効かを確認するには、次のコマンドを使用します:

SELECT * FROM DBA_DV_STATUS;

次のような出力が表示されます。

NAME                 STATUS
-------------------- -----------
DV_CONFIGURE_STATUS  TRUE
DV_ENABLE_STATUS     TRUE

DV_ENABLE_STATUS値がTRUEである場合、Oracle Database Vaultが有効であることを示します。

ノート

Oracle Database Vaultが有効な場合、バックアップやパッチ適用などのAutonomous Databaseのメンテナンス操作は影響を受けません。

Oracle Database Vaultの無効化の詳細は、「Autonomous DatabaseでのOracle Database Vaultの無効化」を参照してください。

Autonomous DatabaseでのOracle Database Vaultの無効化

Autonomous DatabaseでOracle Database Vaultを無効にするステップを示します。

Autonomous DatabaseでOracle Database Vaultを無効にするには、次を実行します:

  1. Oracle Database Vaultの無効化
    EXEC DBMS_CLOUD_MACADM.DISABLE_DATABASE_VAULT;

    詳細は、「DISABLE_DATABASE_VAULTプロシージャ」を参照してください。

  2. Autonomous Databaseインスタンスを再起動します。

    詳細は「Autonomous Databaseの再起動」を参照してください。

Oracle Database Vaultが有効か無効かを確認するには、次のコマンドを使用します:

SELECT * FROM DBA_DV_STATUS;

次のような出力が表示されます。

NAME                 STATUS
-------------------- -----------
DV_CONFIGURE_STATUS  TRUE
DV_ENABLE_STATUS     FALSE

DV_ENABLE_STATUSFALSEは、Oracle Database Vaultが無効であることを示します。

Autonomous DatabaseでのOracle Database Vaultを使用したユーザー管理の無効化

Oracle Database Vaultが有効なAutonomous Databaseで、指定したコンポーネントに対してユーザー管理関連の操作を許可しない方法を示します。

Oracle Database Vaultが有効になっているAutonomous Databaseでは、Oracle APEXコンソールに対してユーザー管理をデフォルトで有効にしています。より厳密な職務分離を強制し、このコンソールからのユーザー管理を禁止する場合は、DBMS_CLOUD_MACADM.DISABLE_USERMGMT_DATABASE_VAULTを使用します。

  1. DV_ACCTMGRおよびDV_ADMINロールを付与されているユーザーとして、指定したコンポーネントのユーザー管理を無効にできます。
  2. APEXコンポーネントなど、指定したコンポーネントのユーザー管理を無効にするには、次のコマンドを使用します:
    EXEC DBMS_CLOUD_MACADM.DISABLE_USERMGMT_DATABASE_VAULT('APEX');

詳細は、「DISABLE_USERMGMT_DATABASE_VAULTプロシージャ」を参照してください。

Autonomous DatabaseでのOracle Database Vaultを使用したユーザー管理の有効化

Shows the steps to allow user management for a specified component on Autonomous Database with Oracle Database Vault enabled.

Oracle Database Vaultが有効になっているAutonomous Databaseでは、Oracle APEXコンソールに対してユーザー管理をデフォルトで有効にしています。これにより、Autonomous Database内で指定されたコンポーネントからCREATE USERALTER USERおよびDROP USERなどの操作をユーザーが管理できるようになります。

Oracle Database Vaultが有効な場合に、指定したユーザー・アカウントでユーザー管理を実行できるようにするには、DBMS_CLOUD_MACADM.ENABLE_USERMGMT_DATABASE_VAULTを使用します。このプロシージャは、ユーザー管理が無効になっており、再度有効にする場合に使用します。

  1. DV_ACCTMGRおよびDV_ADMINロールを付与されているユーザーは、指定したコンポーネントのユーザー管理を有効にできます。
  2. APEXコンポーネントなど、指定したコンポーネントのユーザー管理を有効にするには、次のコマンドを使用します:
    EXEC DBMS_CLOUD_MACADM.ENABLE_USERMGMT_DATABASE_VAULT('APEX');

詳細は、「ENABLE_USERMGMT_DATABASE_VAULTプロシージャ」を参照してください。