Oracle® Database Vault Administrator's Guide 10g Release 2 (10.2) Part Number B25166-09 |
|
|
View PDF |
You may need to disable Oracle Database Vault to perform upgrade tasks or correct erroneous configurations. You can reenable Oracle Database Vault after you complete the corrective tasks.
Note:
Be aware that if you disable Oracle Database Vault, the privileges that were revoked from existing users and roles during installation remain in effect. See "Privileges That Are Revoked or Prevented from Existing Users and Roles" for a listing of the revoked privileges.The following situations require you to disable Oracle Database Vault:
The password for the Oracle Database Vault account manager (with role DV_ACCTMGR
) has been forgotten.
The Database Vault Owner (with role DV_OWNER
) or Database Vault Administrator (with role DV_ADMIN
) accounts have been inadvertently locked out.
A rule set associated with the CONNECT
role has been configured incorrectly. This is resulting in failed database logins for all accounts, including those with the DV_OWNER
or DV_ADMIN
role, who could correct this problem.
You must perform maintenance tasks on Oracle Database Vault.
You must install any of the Oracle Database optional products, such as Oracle Spatial Data Option or Oracle interMedia, by using Database Configuration Assistant (DBCA).
You are about to install a third-party product, install an Oracle product, or perform an Oracle patch update whose installation may be prevented if Oracle Database Vault is running.
You must archive the Oracle Database Vault audit trail.
You can check if Oracle Database Vault has already been enabled or disabled by querying the V$OPTIONS
table. Any user can query this table. If Oracle Database Vault is enabled, the query returns TRUE
. Otherwise, it returns FALSE
.
For example:
SQL> SELECT * FROM V$OPTION WHERE PARAMETER = 'Oracle Database Vault'; PARAMETER VALUE ----------------------------- ----------------------- Oracle Database Vault TRUE
This section contains the following topics:
Note:
After you disable Oracle Database Vault, you still can run the Oracle Database Vault API functions. Note also that after you disable Oracle Database Vault, theANY
privileges are available.Follow these steps to disable Oracle Database Vault on UNIX systems:
Turn off the software processes. Make sure that the environment variables, ORACLE_HOME
, ORACLE_SID
, and PATH
are correctly set.
Stop the dbconsole
process in case it is running. For both single-instance and Oracle Real Application Clusters installations, use the following command:
$ emctl stop dbconsole
For single-instance installations, shut down the database instance:
$ sqlplus "sys / as sysoper"
Enter password: password
SQL> SHUTDOWN NORMAL
SQL> EXIT
For Oracle Real Application Clusters (RAC) installations, shut down each database instance as follows:
$ srvctl stop database -d db_name
If you cannot connect to the database, then proceed to the next step.
Relink the Oracle executable to turn off the Oracle Database Vault option:
$ cd $ORACLE_HOME/rdbms/lib $ make -f ins_rdbms.mk dv_off $ cd $ORACLE_HOME/bin $ relink oracle
For RAC installations, run these commands on all nodes.
In SQL*Plus, start the database.
For single-instance database installations:
$ sqlplus "sys / as sysoper"
Enter password: password
SQL> STARTUP
SQL> EXIT
For RAC installations:
$ srvctl start database -d db_name
At a command prompt, run Oracle Database Vault Configuration Assistant (DVCA) by using the dvca -action disable
option.
The syntax for dvca -action disable is as follows:
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]
In this specification:
-action
is the action to perform. In this case the action is disable.
-service
is the database service name.
-instance
is the name of the database instance.
-dbname
is the database name.
-sys_passwd
is the SYS
password. If you use a cleartext password on the command line, you must include the nodecrypt
option. If you omit the password, DVCA prompts you for it. Preferably, omit the password and then enter it interactively when prompted.
-owner_account
is the Oracle Database Vault Owner account name.
-owner_passwd
is the Oracle Database Vault Owner account password. If you use a cleartext password on the command line, you must include the nodecrypt
option. If you omit the password, DVCA prompts you for it. Preferably, omit the password and then enter it interactively when prompted.
-logfile
is an optional flag to specify a log file name and location. You can enter an absolute path, or enter a path that is relative to the location of the $ORACLE_HOME
/bin
directory.
-silent
is the option to run in command line mode. This option is required if you are not running DVCA in an xterm window.
-nodecrypt
is the option to read plaintext passwords.
-lockout
is the flag to use to disable SYSDBA
operating system authentication.
For example:
dvca -action disable -oh $ORACLE_HOME -service myservicename -instance myinstance -dbname mydbname -owner_account myownername -logfile dvcalog.txt Enter SYS password: sys_password Enter owner password: owner_password
Follow these steps to disable Oracle Database Vault on Windows systems:
Stop the database service.
In the Control Panel, under Administrative Services, select the Services utility. Select the Standard tab, right-click the following services, and from the menu, select Stop:
OracleServiceSID
OracleHOMETNSListener
Under ORACLE_HOME
\bin
, rename the oradv
release_number
.dll
file, for example, oradv10_backup.dll
or oradv11_backup.dll
.
Restart the database service.
In the Control Panel, under Administrative Services, select the Services utility. Select the Standard tab, right-click the following services, and from the menu, select Start:
OracleServiceSID
OracleHOMETNSListener
For RAC systems, repeat these steps for each node on which the database is installed.
At a command prompt, run Oracle Database Vault Configuration Assistant (DVCA) by using the dvca -action disable
option.
The syntax for dvca -action disable is as follows:
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]
In this specification:
-action
is the action to perform. In this case the action is disable.
-service
is the database service name.
-instance
is the name of the database instance.
-dbname
is the database name.
-sys_passwd
is the SYS
password. If you use a cleartext password on the command line, you must include the nodecrypt
option. If you omit the password, DVCA prompts you for it. Preferably, omit the password and then enter it interactively when prompted.
-owner_account
is the Oracle Database Vault Owner account name.
-owner_passwd
is the Oracle Database Vault Owner account password. If you use a cleartext password on the command line, you must include the nodecrypt
option. If you omit the password, DVCA prompts you for it. Preferably, omit the password and then enter it interactively when prompted.
-logfile
is an optional flag to specify a log file name and location. You can enter an absolute path, or enter a path that is relative to the location of the $ORACLE_HOME
/bin
directory.
-silent
is the option to run in command line mode. This option is required if you are not running DVCA in an xterm window.
-nodecrypt
is the option to read plaintext passwords.
-lockout
is the flag to use to disable SYSDBA
operating system authentication.
For example:
dvca -action disable -oh c:\oracle\product\db_1 -service myservicename -instance myinstance -dbname mydbname -owner_account myownername -logfile dvcalog.txt Enter SYS password: sys_password Enter owner password: owner_password
With Oracle Database Vault disabled, you can restart your database and perform the following tasks, as required. You can perform the following types of activities:
Use the Oracle Database Vault PL/SQL packages and functions. For example, to correct a login or CONNECT rule set error, use the DBMS_MACADM
package or the Oracle Database Vault Administrator interface.
Note:
If you are using Oracle Database Vault Administrator, then you must start thedbconsole
process. You can check the status of the dbconsole
process by entering the following command from the $ORACLE_HOME/bin
directory of the Oracle home in which you deployed Database Vault Administrator:
./emctl status dbconsole
To start dbconsole
:
./emctl start dbconsole
Use the SYSTEM or SYS accounts to perform tasks such as creating or changing passwords. For example, if the Oracle Database Vault owner account called dbvowner
forgets his or her password, you can log in to a database instance as the SYSTEM
or SYS
account to create a new password for the Oracle Database Vault owner account as follows
$ sqlplus "sys/as sysdba" Enter password: password SQL> PASSWORD dbvowner New password: new_password Retype new password: new_password
Similarly, to unlock a locked account, log in to the database instance as SYSTEM or SYS, and then unlock the account. For example:
SQL> ALTER USER SCOTT ACCOUNT UNLOCK;
Perform the installation, upgrade, or other tasks that require security protections to be disabled. If you must run Oracle Database Vault Configuration Assistant (DVCA), ensure that the Oracle Database listener is running. To start the listener, run the following command from the $ORACLE_HOME/bin
directory:
$ ./lsnrctl start
This section contains the following topics:
Use the following steps to enable Oracle Database Vault on UNIX systems:
At a command prompt, use DVCA to re-enable Oracle Database Vault.
For example:
dvca -action enable -oh $ORACLE_HOME -service myservicename -instance myinstance -dbname mydbname -owner_account myownername -logfile dvcalog.txt Enter SYS password: sys_password Enter owner password: owner_password
See Step 4 under "Disabling Oracle Database Vault on UNIX Systems" for detailed information about the DVCA syntax.
Turn off the software processes. Make sure that the environment variables, ORACLE_HOME
, ORACLE_SID
, and PATH
are correctly set.
Stop the dbconsole
process in case it is running. For both single-instance and RAC installations, use the following command:
$ emctl stop dbconsole
Shut down the database instance.
For single-instance installations:
$ sqlplus "sys / as sysoper"
Enter password: password
SQL> SHUTDOWN NORMAL
SQL> EXIT
For RAC installations:
$ srvctl stop database -d db_name
Relink the oracle executable to turn on the Oracle Database Vault option:
$ cd $ORACLE_HOME/rdbms/lib $ make -f ins_rdbms.mk dv_on $ cd $ORACLE_HOME/bin $ relink oracle
For RAC installations, run these commands on all nodes.
In SQL*Plus, start the database:
For single-instance database installations:
$ sqlplus "sys / as sysoper"
Enter password: password
SQL> STARTUP
SQL> EXIT
For RAC installations:
$ srvctl start database -d db_name
Follow these steps to enable Oracle Database Vault on Windows systems:
At a command prompt, use DVCA to re-enable Oracle Database Vault.
For example:
dvca -action enable -oh c:\oracle\product\db_1 -service myservicename -instance myinstance -dbname mydbname -owner_account myownername -logfile dvcalog.txt Enter SYS password: sys_password Enter owner password: owner_password
See Step 5 under "Disabling Oracle Database Vault on Windows Systems" for detailed information about the syntax for DVCA.
Stop the database service.
In the Control Panel, under Administrative Services, select the Services utility. Select the Standard tab, right-click the following services, and from the menu, select Stop:
OracleServiceSID
OracleHOMETNSListener
Under ORACLE_HOME
\bin
, name the backup of the oradv
release_number
.dll
file to its original name.
For example, if you named it oradv10_backup.dll
, then name it back to oradv10.dll
.
Restart the database service.
In the Control Panel, under Administrative Services, select the Services utility. Select the Standard tab, right-click the following services, and from the menu, select Start:
OracleServiceSID
OracleHOMETNSListener
For RAC systems, repeat these steps for each node on which the database is installed.