• Oracle数据安全(五)审计


    一.审计的概念

        审计是监视和记录用户对数据库所进行操作,以供DBA进行统计和分析。利用审计可以完成下列任务

           保证用户能够对自己在数据库中的活动负责。

           禁止用户在数据库中从事于自己职责不相符的活动

           调查数据库中的可疑活动

           通知审计员一个未授权用户在数据库中的活动

           监视和收集特定数据库活动的数据

    二.审计的分类

          语句审计:对特定的SQL语句进行审计,不指定具体对象

          权限审计:对特定的权限使用情况进行审计

          对象审计:对特定的模式对象上执行的特定语句进行审计

          网络审计:对网络协议错误与网络层内部错误进行审计

    三.审计环境设置

           使用数据库的审计功能,数据库管理员需要对数据库初始化参数 AUDIT_TRAIL进行设置。

              主要的取值有

                 DB:默认值,表示启动审计功能,审计信息写入SYS.AUD$数据库字典中

                 DB EXTENDED:与DB相同,审计信息中还包含SQL语句绑定变量信息

                OS:表示启动审计功能,审计信息写入操作系统文件。如果要对SYS用户的活动进行审计,还要将初始化参数AUDIT_SYS_OPERATIONS的值设为true

                XML:表示启动审计功能,审计信息写入XML格式的操作系统文件中。

               XML EXTENDED:与XML相同,但审计信息中还包括SQL语句绑定变量信息。

               NONE:表示不启动审计功能。

          初始化参数AUDIT_TRAIL是静态参数,所有,修改后要重新启动数据库。

    四.语句审计

             可以审计某个用户或者所有用户的SQL语句

             可以是会话审计或者存取审计

             可以对成功执行的SQL语句进行审计

             可以对没有成功执行的SQL语句进行审计

             可以对SQL语句进行审计,无论该语句是否成功执行。

     语法:

            AUDIT sql_statement_shortcut|ALL|[ALL STATEMENTS]

            [BY user_list]|[IN SESSION CURRENT][BY SESSION|ACCESS]

            [WHENEVER [NOT]  SUCCESSFUL]

    五.权限审计

            语法

             AUDIT system_privilege |[ALL PRIVILEGES]

             [BY user_list]|[IN SESSION CURRENT] [BY SESSION |ACCESS]

             [WHENEVER [NOT] SUCCESSFUL]

          例 :audit create any table by scott;

             如果要取消,则

                   noaudit create any table by scott;

    六.对象审计

           AUDIT sql_statement |ALL ON [schema.]object

           [BY user_list] | [IN SESSION CURRENT]

            [BY SESSION | ACCESS] [WHENEVER [NOT] SUCCESSFUL]

       例: 

        SQL> audit select ,update on scott.emp by access;

    七.网络审计

            网络审计是指对协议错误与网络层内部错误进行审计。

           语法为

            AUDIT NETWORK [BY SESSION |ACCESS] [WHENEVER [NOT ] SUCCESSFUL]

          例

                 对当前的网络进行审计

                audit netword  by access;

    八 .精细审计

          精细审计是Oracle 11g数据库的新特性,可以对表或视图上执行的selectinsert、update 、delete操作创建审计策略,并通过dbma_fga包对审计策略进行管理

              

  • 相关阅读:
    cocoaPods 最新系统上的安装和基本使用图文笔记
    iOS cell左滑出现多个功能按钮(IOS8以后支持)
    JPA error org.hibernate.AnnotationException: No identifier specified for entity
    spring-boot Jpa配置
    Java中各种集合(字符串类)的线程安全性!!!
    kafka浅谈
    Redis 指令
    JVM监控及堆栈内存
    redis与mysql性能对比、redis缓存穿透、缓存雪崩
    分布式锁机制
  • 原文地址:https://www.cnblogs.com/evencao/p/3216421.html
Copyright © 2020-2023  润新知