Sometimes the company want to protect the data from viewing.
For example the salary of the employee.
The company do not want it to be viewed even DBA.
In the past we couldencrypt the data in the sensitivecolumns but now it is becoming simpler.
An simple operation in Vault.
SQL> create user bai identified by bai;
用户已创建。
已用时间: 00: 00: 00.06
SQL> grant resource to bai;
授权成功。
已用时间: 00: 00: 00.01
SQL> create user wen identified by wen;
用户已创建。
已用时间: 00: 00: 00.04
SQL> grant select any table to wen;
授权成功。
已用时间: 00: 00: 00.04
SQL> show user
USER 为 "HENRY"
SQL> grant select on t to bai;
授权成功。
已用时间: 00: 00: 00.17
SQL> conn bai/bai
ERROR:
ORA-01045: user BAI lacks CREATE SESSION privilege; logon denied
警告: 您不再连接到 ORACLE。
SQL> conn henry/henry
已连接。
SQL> grant connect to bai;
授权成功。
已用时间: 00: 00: 00.04
SQL> conn bai/bai
已连接。
SQL> select count(*) from henry.t;
COUNT(*)
----------
72104
已用时间: 00: 00: 00.57
SQL> conn wen/wen
ERROR:
ORA-01045: user WEN lacks CREATE SESSION privilege; logon denied
警告: 您不再连接到 ORACLE。
SQL> conn henry/henry
已连接。
SQL> grant connect to wen;
授权成功。
已用时间: 00: 00: 00.00
SQL> conn wen/wen
已连接。
SQL> select count(*) from henry.t;
COUNT(*)
----------
72104
已用时间: 00: 00: 00.01
SQL> conn dva/baiwentao1#
已连接。
SQL> exec dvsys.DBMS_MACADM.CREATE_REALM('Henry_REALM','This is a test','Y', 0)
PL/SQL 过程已成功完成。
已用时间: 00: 00: 00.25
SQL> EXEC DBMS_MACADM.ADD_OBJECT_TO_REALM('Henry_REALM', 'HENRY', '%', '%')
PL/SQL 过程已成功完成。
已用时间: 00: 00: 00.01
SQL> conn henry/henry
已连接。
SQL> select count(*) from henry.t;
COUNT(*)
----------
72104
已用时间: 00: 00: 00.31
SQL> conn bai/bai
已连接。
SQL> select count(*) from henry.t;
COUNT(*)
----------
72104
已用时间: 00: 00: 00.40
SQL> conn wen/wen
已连接。
SQL> select count(*) from henry.t;
select count(*) from henry.t
*
第 1 行出现错误:
ORA-01031: 权限不足
已用时间: 00: 00: 00.06
SQL>
SQL> conn /
ERROR:
ORA-01017: invalid username/password; logon denied
警告: 您不再连接到 ORACLE。
SQL> conn sys/sys as sysdba
已连接。
SQL> select count(*) from henry.t;
select count(*) from henry.t
*
第 1 行出现错误:
ORA-01031: 权限不足
已用时间: 00: 00: 00.01
SQL> conn / as sysdba
已连接。
SQL> select count(*) from henry.t;
select count(*) from henry.t
*
第 1 行出现错误:
ORA-01031: 权限不足
已用时间: 00: 00: 00.04
The user wen can not select the table t even it has select any table permission.
We can login with the account henry after granting the permission.
SQL> conn dva/baiwentao1#
已连接。
SQL> grant DV_ADMIN to henry;
授权成功。
We can view the Vault in the EM.