数据库之审计

数据库之审计

因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃,破坏数据的人总是想方设法打破控制,审计功能把用户对数据库的所有操作自动记录下来放入审计日记(audit log)中,审计员可以利用审计日志监控数据库的各种行为,重现导致数据库现状的一系列事件,找出非法存取数据的人,时间和内容等。
1.审计事件
服务器事件:审计数据库服务器发生的事件,包含数据库服务器的启动,停在,数据库服务器配置文件的重新加载。
系统权限:对系统用有的结构或模式对象进行操作的审计,要求该操作的权限是通过系统权限获得的。
语句事件:对sql语句,如ddl,dml,dql等。
模式对象事件:对特定模式对象上进行的select或dml操作的审计,模式对象包括表,视图,存储过程,函数等。模式对象不包括依附于表的索引,约束,触发器,分区表等。
2.审计功能
基本功能,提供多种审计查阅方式:基本的,可选的,有限的,等等。
提供多套审计规划,审计规则一般在数据库初始化时设定。
提供审计分析和报表功能。
审计日志管理功能,包括为防止审计员误删审计记录,审计日志必须转存后删除,对转储的审计记录文件提供完整性和保密性。
系统提供查询审计设置及审计记录信息的专门视图。
AUDIT语句和NOAUDIT语句
audit语句用来设置审计功能,noaudit语句则取消审计功能。
例如:对修改sc表结构或修改sc表数据操作进行审计。
audit alter,update
on sc;
取消对sc表的一切审计功能。
noaudit alter,update
on sc;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
在Oracle数据库中,可以通过以下步骤开启审计策略: 1. 确认审计参数:使用以下SQL查询语句查看是否启用了审计功能并确定审计参数的设置。 ``` SELECT * FROM dba_audit_mgmt_config_params; ``` 2. 创建审计策略:使用以下SQL语句创建审计策略,其中包括审计级别、审计选项、审计对象等。 ``` BEGIN DBMS_AUDIT_MGMT.create_audit_policy ( audit_policy_name => 'my_audit_policy', audit_trail => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD, audit_condition => 'SYS_CONTEXT(''USERENV'',''SESSION_USER'') = ''HR''', audit_column => 'SALARY', handler_schema => NULL, enable => TRUE, statement_types => DBMS_AUDIT_MGMT.ALL_STATEMENTS, audit_column_opts => DBMS_AUDIT_MGMT.DB_EXTENDED, audit_object_opts => DBMS_AUDIT_MGMT.AUDIT_OPT_OBJECT_SCHEMA, audit_object => 'HR' ); END; ``` 上述SQL语句创建了一个名为“my_audit_policy”的审计策略,该策略审计HR用户对SALARY列的所有活动,包括SELECT、INSERT、UPDATE和DELETE操作。 3. 启用审计策略:使用以下SQL语句启用审计策略。 ``` BEGIN DBMS_AUDIT_MGMT.enable_audit_policy ( audit_policy_name => 'my_audit_policy', success => TRUE, failure => TRUE ); END; ``` 上述SQL语句启用了名为“my_audit_policy”的审计策略,并记录成功和失败的活动。 需要注意的是,Oracle数据库审计策略应该根据具体的安全需求和风险情况进行制定和调整。同时,审计记录的保护和访问控制也是非常重要的。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值