1 PROCEDURE dbms_feature_database_vault
2 ( feature_boolean OUT NUMBER,
3 aux_count OUT NUMBER,
4 feature_info OUT CLOB)
5 AS
6 dv_linkon NUMBER;
7 dvsys_uid NUMBER;
8 dvowner_uid NUMBER;
9 dvacctmgr_uid NUMBER;
10 BEGIN
11 -- initialize
12 feature_boolean := 0;
13 aux_count := 0;
14 feature_info := NULL;
15
16 -- check to see if DV is linked on
17 select count(*) into dv_linkon from v$option where
18 parameter = 'Oracle Database Vault' and
19 value = 'TRUE';
20
21 if (dv_linkon = 0) then
22 return;
23 end if;
24
25 -- get DVSYS hard coded uid
26 select count(*) into dvsys_uid from user$ where
27 name = 'DVSYS' and
28 user# = 1279990;
29
30 -- get uids for hard coded roles
31 select count(*) into dvowner_uid from user$ where
32 name = 'DV_OWNER' and
33 user# = 1279992;
34 select count(*) into dvacctmgr_uid from user$ where
35 name = 'DV_ACCTMGR' and
36 user# = 1279991;
37
38 if (dvsys_uid = 0 or
39 dvowner_uid = 0 or
40 dvacctmgr_uid = 0) then
41 return;
42 end if;
43
44 feature_boolean := 1;
45
46 END dbms_feature_database_vault;