9 コンテナ管理者とアプリケーション・データの分離

Oracle Database Vault 19c以降では、Operations Controlにより、コンテナ管理者(C##ユーザー)をプラガブル・データベース内のOracle管理以外のデータから分離できます。

たとえば、C##JSMITHは、PDB1プラガブル・データベースのHR.EMPLOYEES表を問い合せることができません。

コンテナ・データベースでOracle Database Vaultを構成および有効化すると、Operations Controlを簡単に有効化できます。

Operations Controlの現在の有効化ステータスを確認するには:

  1. sysdbaユーザー・アカウントに接続します:
    connect / as sysdba
  2. コンテナ・データベース上のDatabase Vault構成を確認します:
    select * from cdb_dv_status
    次の結果が表示されます:
    NAME                   STATUS            CON_ID
    ______________________ _________________ _________
    DV_CONFIGURE_STATUS    TRUE              1
    DV_ENABLE_STATUS       TRUE              1
    DV_APP_PROTECTION      NOT CONFIGURED    1
    DV_CONFIGURE_STATUS    TRUE              3
    DV_ENABLE_STATUS       TRUE              3
    DV_APP_PROTECTION      NOT CONFIGURED    3

    DV_APP_PROTECTIONは、Oracle Database Vault Operations Controlのパラメータです。

Database Vault Operations Controlを有効にするには:

  1. DV_OWNERロールを持つユーザーとして接続します:
    connect c##dvowner
  2. Database Vault Operations Controlを有効にします:
    EXEC DBMS_MACADM.ENABLE_APP_PROTECTION;
  3. Database Vault Operations Controlが有効になっていることを確認します:
    1. sysdbaユーザー・アカウントに接続します:
      connect / as sysdba
    2. コンテナ・データベース上のDatabase Vault構成を確認します:
      select * from cdb_dv_status
      次の結果が表示されます:
      NAME                   STATUS            CON_ID
      ______________________ _________________ _________
      DV_CONFIGURE_STATUS    TRUE              1
      DV_ENABLE_STATUS       TRUE              1
      DV_APP_PROTECTION      ENABLED           1
      DV_CONFIGURE_STATUS    TRUE              3
      DV_ENABLE_STATUS       TRUE              3
      DV_APP_PROTECTION      ENABLED           3

      DV_APP_PROTECTIONは、Oracle Database Vault Operations Controlのパラメータです。

有効な構成は、Database VaultがPDBで有効になっていないときに、CDBおよびすべてのPDBでDatabase Vault Operations Controlを有効にすることです。コンテナ・データベースでDatabase Vaultが有効になっている場合、Operations Controlを使用して、プラガブル・データベースのデータからコンテナ・ユーザー(C##)を分離できます。

たとえば、この環境に2つ目のPDBがあった場合、select * from cdb_dv_statusの結果は有効な構成です:

NAME                   STATUS            CON_ID
______________________ _________________ _________
DV_CONFIGURE_STATUS    TRUE              1
DV_ENABLE_STATUS       TRUE              1
DV_APP_PROTECTION      ENABLED           1
DV_CONFIGURE_STATUS    TRUE              3
DV_ENABLE_STATUS       TRUE              3
DV_APP_PROTECTION      ENABLED           3
DV_CONFIGURE_STATUS    FALSE             4
DV_ENABLE_STATUS       FALSE             4
DV_APP_PROTECTION      ENABLED           4