Oracle安全之Vault

目录

环境:... 1

步骤... 1

准备... 1

安装... 3

配置... 14

卸载... 23

帮助... 25

 

环境:

此文档所用环境如下:

         操作系统:

数据库信息:

 

步骤

准备

1.  配置/etc/hosts文件

2.  Sqlplusdba身份登录oracle,执行

Showparameter audit_trail

若显示NONE,则执行

alter system set audit_trail=DBscope=spfile;

 

重启数据库,开启审计功能

3.  保证语言和字符集环境变量与数据库一致,同为american,否则vault无法显示默认的规则

4.  检查Vault 是否启用

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

True表示已经启用,若为false,需要安装

安装

5.  启用Vault可选插件:则按以下步骤

a)    关闭数据库,EM console,监听.

顺序:EM-数据库-监听

o    UNIX: 保证环境变量正确ORACLE_HOMEORACLE_SID, PATH

执行:

sqlplus sys as sysoper
Enter password: password
SQL> SHUTDOWN IMMEDIATE
SQL> EXIT
$ emctl stop dbconsole
$ lsnrctl stop [listener_name]

对于Oracle RAC , 关闭每一个实例:

$ srvctl stop database -d db_name

o    Windows: 控制面板-服务-停止,如下图(若oracle实例名orcl,下同)

数据库(OracleServiceORCL)

EM console(OracleDBConsoleorcl)

监听(OracleOraDb11g_home1TNSListener)

b)    启用Valut:

o    UNIX: 执行以下命令,vault依赖于LabelSecurity,所以必须先启用.

$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk dv_on lbac_on ioracle

o    Windows: 进入ORACLE_HOME\bin 目录,

将oradvll.dll 文件的备份 (备份名oradv11.dll.dbl)改回原名 oradvll.dll.

将oralbacll.dll文件的备份 (备份名oralbacll.dll.dbl )改回原名oralbacll.dll

备份后,改名,去掉.db1

c)    重新启动数据库,EM console,监听

顺序:监听-数据库-EM.

o    UNIX: 

sqlplus sys as sysoper
Enter password: password
 
SQL> STARTUP
SQL> EXIT
 
$ emctl start dbconsole
$ lsnrctl start [listener_name]

对于Oracle RAC , 启动每一个实例:

$ srvctl start database -d db_name

o    Windows:  控制面板-服务,依次启动,如上图。

d)    RAC环境下,每一个节点都执行以上步骤,修改文件名称。

e)    检查

6.  停用Vault 可选插件:则按以下步骤

【只有在生产日常维护工作,需要停用Vault时候才执行此步骤,如升级DB等】

a)    关闭数据库,EM console,监听.

顺序:EM-数据库-监听

o    UNIX: 

sqlplus sys as sysoper
Enter password: password
 
SQL> SHUTDOWN IMMEDIATE
SQL> EXIT
 
$ emctl stop dbconsole
$ lsnrctl stop [listener_name]

Oracle RAC

$ srvctl stop database -d db_name

o    Windows: 控制面板-服务, 依次关闭,如上图。

b)    禁用Vault:

o    UNIX: Run thefollowing commands:

$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk dv_off ioracle

o    Windows: 进入ORACLE_HOME\bin 目录

  修改oradvll.dll名称 ,如 oradvll.dll.dbl.

c)    重新启动数据库,EM console,监听,顺序:监听-数据库-EM.

o    UNIX: 

sqlplus sys as sysoper
Enter password: password
SQL> STARTUP
SQL> EXIT
$ emctl start dbconsole
$ lsnrctl start [listener_name]

Oracle RACinstallations

$ srvctl start database -d db_name

o    Windows: 控制面板-服务,依次启动,如上图。

d)    RAC环境下,每一个节点都执行以上步骤,修改文件名称.

e)    检查Vault

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

7.     注册Vault

a)    保证EM console运行状态.

emctl status dbconsole

b)    关闭数据库,EM console,监听. 具体顺序:EM-数据库-监听.

o    UNIX: 

sqlplus sys as sysoper
Enter password: password
 
SQL> SHUTDOWN IMMEDIATE
SQL> EXIT
 
$ emctl stop dbconsole
$ lsnrctl stop [listener_name]

Oracle RACinstallations

$ srvctl stop database -d db_name

o    Windows: 控制面板-服务,依次关闭,如上图。

c)    若没有启用,则启用Vault可选插件:如第4 b)

d)    重新启动数据库和监听. (暂时不启动EM console.)

o    UNIX: 

sqlplus sys as sysoper
Enter password: password
SQL> STARTUP
SQL> EXIT
$ lsnrctl start [listener_name]

Oracle RAC

$ srvctl start database -d db_name

o    Windows:  控制面板-服务,依次启动监听和数据库,如上图。.

e)    生产部署时,

               i.         关闭数据库后,备份整个oracle base下的所有安装文件(数据库文件不需要:数据文件,日志文件,控制文件)

              ii.         重启后,确认监听和数据库的状态,全部启动,且数据库必须已经注册到监听

f)     启动 DatabaseConfiguration Assistant.

o    UNIX: 打开终端,相应用户登录,如oracle,执行:

dbca

默认的 $ORACLE_HOME/bin/dbca 被调用.

o    Windows: 开始 -所有程序. 然后点击 Oracle - ORACLE_HOMEConfiguration andMigration Tools然后选择Database Configuration Assistant.

也可以在cmd直接执行:

dbca

或者

g)    欢迎页面, 点击 Next.

h)    选择 Configure DatabaseOptions/配置数据库选件, 点击 Next..

i)     列表选择相应的数据库,点击 Next.

j)     选择Label Security,Vault(依赖Label)点击 Next :

k)    输入DatabaseVault Owner (for example, DBVOWNER) Database Vault Account Manager (for example,DVMGR).

输入密码,需要满足一定复杂度,如Oracle_123.

l)     点击 Next.

m)  选择专用 或者 共享 (取决于建库时的选择), 点击 完成, 最后点击 OK过程中会重启数据库 .

Alert日志有如下信息

n)    退出 DatabaseConfiguration Assistant.

o)    默认会启动EM console,若没有启动,则执行

o    UNIX: 

$ emctl start dbconsole

o    Windows: 控制面板-服务,启动EM OracleDBConsoleorcl(若oracle实例名orcl),如上图。

注册结束.

配置

8.     登录 Oracle Database Vault Administrator

在浏览器地址栏输入:

     https://host_name:port/dva

o    host_name: 安装Oracle Database Vault的计算机名称

o    port: EM Console HTTPS 端口号,如1158

如果不能确定端口号,查询 $ORACLE_HOME/host_sid/sysman/config/emd.properties 文件,找到 REPOSITORY_URL.默认是和Oracle Enterprise Database Control相同.

 

回车

 

继续浏览网站:

如果无法启动OracleDatabase Vault Administrator,检查Oracledatabase console 状态是否是 running.

o    UNIX: 进入 $ORACLE_HOME/bin 目录执行:

     ./emctl status dbconsole

若需要启动:

./emctl start dbconsole

o    Windows: cmd执行

emctlstatus dbconsole

需要启动,则控制面板-服务,启动EM OracleDBConsoleorcl(若oracle实例名orcl),如上图。

若有问题,查看日志文件:

$ORACLE_HOME/sysman/log

页面输入:

o    用户名: 有以下角色的可以登录数据库:

1.    创建策略DV_OWNER 或者 DV_ADMIN

2.    查看报告DV_OWNERDV_ADMIN,或者DV_SECANALYST

3.    创建和管理用户和角色DV_ACCTMGR

注册时建立的用户:

DBOWNER:具有DV_OWNER,所以可以登录,可以执行12

DVMGR:具有DV_ACCTMGR,可以执行3用来新建修改用户,但无法登录vault admin

默认情况,无法使用SYSSYSTEM登录. 除非拥有DV_ADMIN 或者 DV_OWNER 的角色.

o    密码: 根据注册时输入.

o    主机:安装 OracleDatabase Vault的主机名称,格式:

     server.domain

:

myserver-pc.us.example.com

o    端口:  OracleDatabase的端口号. 默认是1521.不确认可以查询 $ORACLE_HOME/network/admin/tnsnames.ora 文件.

o    SID/Service: 数据库SID或者服务名. 不确认可以查询$ORACLE_HOME/network/admin/tnsnames.ora文件。

§  SID::

orcl

§  Service:格式:

service_name.domain
orcl.us.example.com

点击登录,进入首页

9.     此时已经对dba作了限制,包括

创建用户

修改密码

此部分权限转移给了新建的DVMGR用户

10.  配置NC相关

以下配置NC数据NC63,防止DBA操作的功能。

l  当前查询

l  选择领域

l  点击创建

l  输入,可以禁用审计,避免资源消耗。

l  点击确定,在领域首页选择‘nc63_realms’,

l  点击编辑,出现新选项

l  在领域保护的对象后面选择创建,选择nc63用户,其他默认%,保护nc所有对象类型的所有对象,点击确定。

l  点击确定,创建完毕。

l  验证查询

配置完毕。

l  查看报告,选择DatabaseVault报告中的领域审计,点击运行报告

报告如下:

卸载

卸载vault后,数据库参数恢复,保持与安装前一样.

1.   关闭数据库,EM console,监听. 具体顺序:EM-数据库-监听。

UNIX

sqlplus sys as sysoper
Enter password: password
Connected.
 
SQL> SHUTDOWN IMMEDIATE
SQL> EXIT
 
$ emctl stop dbconsole
$ lsnrctl stop [listener_name]

Oracle RAC:

$ srvctl stop database -d db_name

Windows控制面板-服务,依次关闭,如上图。.

2.   执行以下命令:

o    UNIX

$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk dv_off lbac_off ioracle

o    Windows: 进入ORACLE_HOME\bin 目录

  修改oradvll.dll名称 ,如 oradvll.dll.dbl.

3.   重新启动数据库,EM console,监听

顺序:监听-数据库-EM.

o    UNIX: 

SQL> STARTUP
SQL> EXIT
 
$ emctl stop dbconsole
$ lsnrctl start [listener_name]

Oracle RAC:

$ srvctl start database -d db_name

o    Windows:  控制面板-服务,依次启动,如上图。.

4.   SQL*Plus,SYS  as SYSDBA 登录.

5.   禁用 recyclebin.

检查是否启用recycle:

SQL> SHOW PARAMETER RECYCLEBIN

如果启用状态,执行以下命令,并重新启动数据库:

SQL> ALTER SYSTEM SET RECYCLEBIN = OFF SCOPE=SPFILE;
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP

6.   执行以下脚本:

SQL> @$ORACLE_HOME/rdbms/admin/dvremov.sql

7.   手动删除

用户DVOWNER  DVMGR

角色DV_REALM_RESOURCE  DV_REALM_OWNER .

SQL> DROP DBV_OWNER CASCADE;
SQL> DROP DBV_ACCTMGR CASCADE;
SQL> DROP DV_REALM_RESOURCE;
SQL> DROP DV_REALM_OWNER;

8.   检查:

SQL> SELECT * FROM V$OPTION WHERE PARAMETER = 'Oracle Database Vault';
PARAMETER                     VALUE
----------------------------- -----------------------
Oracle Database Vault         FALSE

帮助

http://docs.oracle.com/cd/E11882_01/server.112/e23090/toc.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值