ヘッダーをスキップ
Oracle Database Vault管理者ガイド
11gリリース1(11.1)
E05797-05
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

B Oracle Database Vaultの有効化および無効化

この付録の内容は次のとおりです。

Oracle Database Vaultを無効にする必要がある場合

アップグレード・タスクを実行する際、または誤った構成を修正する際には、Oracle Database Vaultを無効にする必要があります。修正タスクが終了したら、Oracle Database Vaultを再度有効にできます。


注意:

Oracle Database Vaultを無効にすると、インストール時に既存のユーザーおよびロールから取り消された権限が有効のままになることに注意してください。取り消される権限のリストは、「既存のユーザーおよびロールに対して取消しまたは阻止される権限」を参照してください。

次の場合に、Oracle Database Vaultを無効にする必要があります。

Oracle Database Vaultが有効か無効かの確認

Oracle Database Vaultがすでに有効になっているか無効になっているかは、V$OPTIONS表に問い合せれば確認できます。この表にはどのユーザーでも問い合せられます。Oracle Database Vaultが有効な場合、問合せはTRUEを返します。それ以外の場合はFALSEを返します。

PARAMETER列の値は大/小文字を区別します。たとえば、次のようになります。

SELECT * FROM V$OPTION WHERE PARAMETER = 'Oracle Database Vault';

Oracle Database Vaultが有効な場合、次の出力結果が表示されます。

PARAMETER                     VALUE
----------------------------- -----------------------
Oracle Database Vault         TRUE

手順1: Oracle Database Vaultの無効化

この項の内容は次のとおりです。


注意:

Oracle Database Vaultを無効にしても、Oracle Database VaultのAPIファンクションは実行できます。また、Oracle Database Vaultを無効にしても、ANY権限を使用できます。

UNIXシステムでのOracle Database Vaultの無効化

UNIXシステムでOracle Database Vaultを無効にするには、次の手順に従います。

  1. ソフトウェア・プロセスをオフにします。環境変数ORACLE_HOMEORACLE_SIDおよびPATHが正しく設定されていることを確認してください。

    dbconsoleプロセスが実行中の場合は、停止します。単一インスタンス・インストールとOracle Real Application Clustersインストールのいずれの場合も、次のコマンドを使用します。

    $ emctl stop dbconsole
    

    単一インスタンス・インストールの場合は、次のようにデータベース・インスタンスを停止します。

    $ sqlplus "sys / as sysoper"
    Enter password: password
    
    SQL> SHUTDOWN NORMAL
    SQL> EXIT
    

    Oracle Real Application Clustersインストール場合は、次のように各データベース・インスタンスを停止します。

    $ srvctl stop database -d db_name
    

    データベースに接続できなければ、次の手順に進みます。

  2. Oracle実行可能ファイルに再度リンクして、Oracle Database Vaultオプションをオフにします。

    $ cd $ORACLE_HOME/rdbms/lib
    $ make -f ins_rdbms.mk dv_off
    $ cd $ORACLE_HOME/bin
    $ relink oracle
    

    RACインストールの場合は、これらのコマンドをすべてのノードに対して実行します。

  3. SQL*Plusで、データベースを起動します。

    単一インスタンス・データベース・インストールの場合:

    $ sqlplus "sys / as sysoper"
    Enter password: password
    
    SQL> STARTUP
    

    RACインストールの場合:

    $ srvctl start database -d db_name
    
  4. Oracle Database Vaultの無効化が必要な理由が、パスワード(特に手順5で説明されている管理者アカウントのパスワード)を忘れたためだった場合は、SYSまたはSYSTEMとして接続してからパスワードを再設定します。

    たとえば、次のようになります。

    SQL> CONNECT SYSTEM
    Enter password: password
    Connected.
    SQL> ALTER USER DBVOWNER IDENTIFIED BY password;
    
  5. コマンド・プロンプトで、dvca -action disableオプションを使用して、Oracle Database Vault Configuration Assistant(DVCA)を実行します。

    dvca -action disableの構文は、次のとおりです。

    dvca -action disable
      -service service_name
      -instance Oracle_instance_name
      -dbname database_name
      -sys_passwd SYS_password
      -owner_account DV_owner_account_name
      -owner_passwd DV_owner_account_password
      [-logfile ./dvca.log]
      [-nodecrypt]
      [-racnode node]
    

    ここでは、次のようになります。

    • -actionは、実行するアクションです。この場合、アクションはdisableです。

    • -serviceは、データベース指定子の名前です。指定子には、接続記述子またはネット・サービス名を使用できます。データベース指定子の詳細は、『Oracle Database JDBC開発者ガイドおよびリファレンス』を参照してください。

    • -instanceは、データベース・インスタンスの名前です。

    • -dbnameはデータベース名です。

    • -sys_passwdSYSパスワードです。コマンドラインでクリアテキスト・パスワードを使用する場合は、nodecryptオプションを指定する必要があります。パスワードを省略すると、DVCAによってパスワードの入力を求められます。できれば、最初はパスワードを省略し、入力を求められたらそれに応じてパスワードを入力してください。

    • -owner_accountは、Oracle Database Vault所有者アカウントの名前です。

    • -owner_passwdは、Oracle Database Vault所有者アカウントのパスワードです。コマンドラインでクリアテキスト・パスワードを使用する場合は、nodecryptオプションを指定する必要があります。パスワードを省略すると、DVCAによってパスワードの入力を求められます。できれば、最初はパスワードを省略し、入力を求められたらそれに応じてパスワードを入力してください。

    • -logfileは、ログ・ファイルの名前と場所を指定するためのオプションのフラグです。絶対パスを入力することも、$ORACLE_HOME/binディレクトリからの相対パスを入力することもできます。

    • -silentは、コマンドライン・モードで実行するためのオプションです。DVCAをxtermウィンドウで実行しない場合、このオプションが必要です。

    • -nodecryptは、プレーン・テキスト・パスワードを読み取るためのオプションです。

    • -lockoutは、SYSDBAオペレーティング・システム認証を無効にするために使用するフラグです。

    たとえば、次のようになります。

    dvca -action disable
      -oh $ORACLE_HOME
      -service conn_alias
      -instance orcl
      -dbname orcl
      -owner_account dbvowner
      -logfile dvcalog.txt
    
    Enter SYS password: sys_password
    Enter owner password: owner_password
    
  6. SYSDBA権限を使用して、SYSとして接続し、次のALTER TRIGGER文を実行します。

    SQL> CONNECT SYS / AS SYSDBA
    Enter password: password
    
    SQL> ALTER TRIGGER LBACSYS.LBAC$LOGON ENABLE;
    

WindowsシステムでのOracle Database Vaultの無効化

WindowsシステムでOracle Database Vaultを無効にするには、次の手順に従います。

  1. データベース・サービスを停止します。

    「コントロール パネル」の「管理ツール」で、「サービス」ユーティリティを選択します。「標準」タブを選択し、次のサービスを右クリックしてメニューから「停止」を選択します。

    • OracleServiceSID

    • OracleHOMETNSListener

  2. ORACLE_HOME\binで、oradvrelease_number.dllファイルの名前をoradv10_backup.dllまたはoradv11_backup.dllなどに変更します。

  3. データベース・サービスを再起動します。

    「コントロール パネル」の「管理ツール」で、「サービス」ユーティリティを選択します。「標準」タブを選択し、次のサービスを右クリックしてメニューから「開始」を選択します。

    • OracleServiceSID

    • OracleHOMETNSListener

  4. RACシステムの場合は、データベースがインストールされているノードごとに、これらの手順を繰り返します。

  5. Oracle Database Vaultの無効化が必要な理由が、パスワード(特に手順6で説明されている管理者アカウントのパスワード)を忘れたためだった場合は、SYSまたはSYSTEMとしてSQL*Plusにログインしてからパスワードを再設定します。

    たとえば、次のようになります。

    sqlplus SYSTEM
    Enter password: password
    
    SQL> ALTER USER DBVOWNER IDENTIFIED BY password;
    
  6. コマンド・プロンプトで、dvca -action disableオプションを使用して、Oracle Database Vault Configuration Assistant(DVCA)を実行します。

    dvca -action disableの構文は、次のとおりです。

    dvca -action disable
      -service service_name
      -instance Oracle_instance_name
      -dbname database_name
      -sys_passwd SYS_password
      -owner_account DV_owner_account_name
      -owner_passwd DV_owner_account_password
      [-logfile ./dvca.log]
      [-nodecrypt]
      [-racnode node]
    

    ここでは、次のようになります。

    • -actionは、実行するアクションです。この場合、アクションはdisableです。

    • -serviceは、データベース指定子の名前です。指定子には、接続記述子またはネット・サービス名を使用できます。データベース指定子の詳細は、『Oracle Database JDBC開発者ガイドおよびリファレンス』を参照してください。

    • -instanceは、データベース・インスタンスの名前です。

    • -dbnameはデータベース名です。

    • -sys_passwdSYSパスワードです。コマンドラインでクリアテキスト・パスワードを使用する場合は、nodecryptオプションを指定する必要があります。パスワードを省略すると、DVCAによってパスワードの入力を求められます。できれば、最初はパスワードを省略し、入力を求められたらそれに応じてパスワードを入力してください。

    • -owner_accountは、Oracle Database Vault所有者アカウントの名前です。

    • -owner_passwdは、Oracle Database Vault所有者アカウントのパスワードです。コマンドラインでクリアテキスト・パスワードを使用する場合は、nodecryptオプションを指定する必要があります。パスワードを省略すると、DVCAによってパスワードの入力を求められます。できれば、最初はパスワードを省略し、入力を求められたらそれに応じてパスワードを入力してください。

    • -logfileは、ログ・ファイルの名前と場所を指定するためのオプションのフラグです。絶対パスを入力することも、$ORACLE_HOME/binディレクトリからの相対パスを入力することもできます。

    • -silentは、コマンドライン・モードで実行するためのオプションです。DVCAをxtermウィンドウで実行しない場合、このオプションが必要です。

    • -nodecryptは、プレーン・テキスト・パスワードを読み取るためのオプションです。

    • -lockoutは、SYSDBAオペレーティング・システム認証を無効にするために使用するフラグです。

    たとえば、次のようになります。

    dvca -action disable
      -oh c:\oracle\product\db_1
      -service conn_alias
      -instance orcl
      -dbname orcl
      -owner_account dbvowner
      -logfile dvcalog.txt
    
    Enter SYS password: sys_password
    Enter owner password: owner_password
    
  7. SYSDBA権限を使用して、SYSとして接続し、次のALTER TRIGGER文を実行します。

    SQL> CONNECT SYS / AS SYSDBA
    Enter password: password
    
    SQL> ALTER TRIGGER LBACSYS.LBAC$LOGON ENABLE;
    

手順2: 必要なタスクの実行

Oracle Database Vaultを無効にしたまま、必要に応じて、データベースを再起動して次のタスクを実行できます。次のようなアクティビティを実行できます。

手順3: Oracle Database Vaultの有効化

この項の内容は次のとおりです。

UNIXシステムでのOracle Database Vaultの有効化

UNIXシステムでOracle Database Vaultを有効にするには、次の手順に従います。

  1. コマンド・プロンプトでDVCAを使用して、Oracle Database Vaultを再度有効にします。

    たとえば、次のようになります。

    dvca -action enable
      -oh $ORACLE_HOME
      -service conn_alias
      -instance orcl
      -dbname orcl
      -owner_account dbvowner
      -logfile dvcalog.txt
    
    Enter SYS password: sys_password
    Enter owner password: owner_password
    

    DVCA構文の詳細は、「UNIXシステムでのOracle Database Vaultの無効化」の手順5を参照してください。

  2. ソフトウェア・プロセスをオフにします。環境変数ORACLE_HOMEORACLE_SIDおよびPATHが正しく設定されていることを確認してください。

    dbconsoleプロセスが実行中の場合は、停止します。単一インスタンス・インストールとRACインストールのいずれの場合も、次のコマンドを使用します。

    $ emctl stop dbconsole
    
  3. データベース・インスタンスを停止します。

    単一インスタンス・インストールの場合:

    $ sqlplus "sys / as sysoper"
    Enter password: password
    
    SQL> SHUTDOWN NORMAL
    SQL> EXIT
    

    RACインストールの場合:

    $ srvctl stop database -d db_name
    
  4. Oracle実行可能ファイルに再度リンクして、Oracle Database Vaultオプションをオンにします。

    $ cd $ORACLE_HOME/rdbms/lib
    $ make -f ins_rdbms.mk dv_on
    $ cd $ORACLE_HOME/bin
    $ relink oracle
    

    RACインストールの場合は、これらのコマンドをすべてのノードに対して実行します。

  5. SQL*Plusで、データベースを起動します。

    単一インスタンス・データベース・インストールの場合:

    $ sqlplus "sys / as sysoper"
    Enter password: password
    
    SQL> STARTUP
    SQL> EXIT
    

    RACインストールの場合:

    $ srvctl start database -d db_name
    

WindowsシステムでのOracle Database Vaultの有効化

WindowsシステムでOracle Database Vaultを有効にするには、次の手順に従います。

  1. コマンド・プロンプトでDVCAを使用して、Oracle Database Vaultを再度有効にします。

    たとえば、次のようになります。

    dvca -action enable
      -oh c:\oracle\product\db_1
      -service conn_alias
      -instance orcl
      -dbname orcl
      -owner_account dbvowner
      -logfile dvcalog.txt
    
    Enter SYS password: sys_password
    Enter owner password: owner_password
    

    DVCA構文の詳細は、「WindowsシステムでのOracle Database Vaultの無効化」の手順6を参照してください。

  2. データベース・サービスを停止します。

    「コントロール パネル」の「管理ツール」で、「サービス」ユーティリティを選択します。「標準」タブを選択し、次のサービスを右クリックしてメニューから「停止」を選択します。

    • OracleServiceSID

    • OracleHOMETNSListener

  3. ORACLE_HOME\binで、oradvrelease_number.dllファイルのバックアップに元の名前を付けます。

    たとえば、バックアップにoradv10_backup.dllと名前を付けていた場合は、oradv10.dllに戻します。

  4. データベース・サービスを再起動します。

    「コントロール パネル」の「管理ツール」で、「サービス」ユーティリティを選択します。「標準」タブを選択し、次のサービスを右クリックしてメニューから「開始」を選択します。

    • OracleServiceSID

    • OracleHOMETNSListener

  5. RACシステムの場合は、データベースがインストールされているノードごとに、これらの手順を繰り返します。