#审计策略管理

# 创建审计策略

最多支持创建512个审计策略,通过AUDIT_UNIFIED_POLICIES视图可以查看所有审计策略。

一个完整的审计策略主要包含:

  • 审计项:即被审计的对象/行为,可通过privilege_audit_clause、action_audit_clause或role_audit_clause指定

  • 审计触发条件:可选项,可通过when_clause、toplevel_clause指定

# 前提条件

  • 执行审计策略创建操作的用户,需具备AUDIT_ADMIN审计管理员角色或AUDIT SYSTEM系统特权,授权操作请查阅权限授予与收回

  • 如需配置对象操作行为审计相关的审计项,需确保该目标对象已存在。

# 操作步骤

  1. 使用具备相应权限的用户登录YashanDB。

  2. 执行CREATE AUDIT POLICY语句创建审计策略。

    CREATE AUDIT POLICY audit01 ACTIONS 
    DROP TABLE,
    DELETE ON sales.area,
    INSERT ON sales.area,
    UPDATE ON sales.area,
    ALL ON sales.branches;
    -- 审计项包括:DROP TABLE类型语句、对表area的DELETE、INSERT、UPDATE操作以及对表branches的所有操作
    

    即使已开启审计功能,审计策略创建完成后并不会直接投入使用,还需对其执行使能操作才能使相应审计项生效。

# 使能审计策略

审计策略的创建与使能分层处理可以让用户更清晰方便地进行审计策略在线管理,创建阶段只需考虑该纳入哪些审计项和审计条件(例如审计属于语句/会话/实例级、是否审计递归SQL语句等),使能阶段则可以再进一步设置该类审计项触发的附加条件,包括对谁生效(例如只对目标用户生效、对指定用户之外的其他人全生效)、何时生效(例如仅在操作执行成功时进行审计,减少无效记录)。

开启审计功能且审计策略使能后,特定用户执行与审计项匹配的行为且达到审计策略的触发条件时触发审计。

通过AUDIT_UNIFIED_ENABLED_POLICIES视图可以查看所有已使能的审计策略。

# 前提条件

  • 执行审计策略使能操作的用户,需具备AUDIT_ADMIN审计管理员角色或AUDIT SYSTEM系统特权,授权操作请查阅权限授予与收回

  • 不能重复对同一条审计策略进行使能操作。

# 操作步骤

  1. 使用具备相应权限的用户登录YashanDB。

  2. 执行AUDIT POLICY语句使能审计策略。

    AUDIT POLICY audit01 BY sales WHENEVER SUCCESSFUL;
    -- 具体触发条件:审计项仅对用户sales生效,仅在操作执行成功时进行审计
    

# 修改审计策略

YashanDB支持对审计策略在线动态修改,如果修改生效中的审计策略,修改语句执行成功后,系统对数据库操作的审计立即发生改变。

修改审计策略是指可以对审计策略创建时指定的审计项、审计条件等进行调整。

对于审计策略的使能状态以及使能时设置的附加条件,无法通过修改操作进行调整。如需调整使能状态或调整已使能策略的附加条件,只能按需选择执行使能(AUDIT POLICY)取消使能(NOAUDIT POLICY)操作。

# 前提条件

  • 执行审计策略修改操作的用户,需具备AUDIT_ADMIN审计管理员角色或AUDIT SYSTEM系统特权,授权操作请查阅权限授予与收回

  • 如需增加对象操作行为审计相关的审计项,需确保该目标对象已存在。

# 操作步骤

  1. 使用具备相应权限的用户登录YashanDB。

  2. 执行ALTER AUDIT POLICY语句修改审计策略。

    ALTER AUDIT POLICY audit01
    ADD PRIVILEGES DROP ANY TABLE 
    DROP ACTIONS ALL ON sales.branches;
    -- 增加审计项:系统权限DROP ANY TABLE相关操作,删除审计项:对表branches的所有操作
    

# 取消审计策略使能

取消审计策略使能,可以针对具体用户取消、针对某种附加条件(执行成功与否)取消以及直接取消整个审计策略,取消使能后会立即停止相应的审计。

# 前提条件

执行取消审计策略使能操作的用户,需具备AUDIT_ADMIN审计管理员角色或AUDIT SYSTEM系统特权,授权操作请查阅权限授予与收回

# 操作步骤

  1. 使用具备相应权限的用户登录YashanDB。

  2. 执行NOAUDIT POLICY语句取消审计策略使能。

    NOAUDIT POLICY audit01 BY sales;
    

# 删除审计策略

对于无需再使用的审计策略,可以在取消使能后,将其删除。

# 前提条件

# 操作步骤

  1. 使用具备相应权限的用户登录YashanDB。

  2. 执行DROP AUDIT POLICY语句删除审计策略。

    DROP AUDIT POLICY audit01;
    
edit-icon
反馈
coperate-icon
coperate
合作
communication-icon
communicate
交流