云数据库 GAUSSDB-操作审计:audit_system_object

时间:2024-11-13 14:45:20

audit_system_object

参数说明:该参数表示是否对数据库对象的CREATE、DROP、ALTER等操作进行审计。数据库对象包括DATABASE、USER、SCHEMA、TABLE等。通过修改该配置参数的值,可以只审计需要的数据库对象的操作。参数类型整型

参数单位

取值范围:0 ~ 536870911
  • 0代表关闭数据库对象的CREATE、DROP、ALTER等操作审计功能。
  • 非0代表只审计某类或者某些数据库对象的CREATE、DROP、ALTER等操作。

取值说明

该参数的值由29个二进制位的组合求出,这29个二进制位分别代表29类数据库对象。如果对应的二进制位取值为0,表示不审计对应的数据库对象的CREATE、DROP、ALTER等操作;取值为1,表示审计对应的数据库对象的CREATE、DROP、ALTER等操作。这29个二进制位代表的具体审计内容请参见表1

用于记录SQL PATCH的参数存在特殊性,如果对该对象进行审计且audit_dml_state_select也开启时,对于一条SQL PATCH操作的审计日志会作为DML和DDL被记录两次,如果调用remote接口,则会在入参对应的节点上产生DDL日志,而不是在下发语句的节点上。

默认值:67121159(十进制),对应二进制为:0 0100 0000 0000 0011 0000 0000 0111,表示对DATABASE、SCHEMA、USER、NODE GROUP、SQLPatch这五种数据库对象的DDL操作进行审计。

设置方式该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。

设置建议:根据业务需要设置记录审计的数据库对象类型。在主备强制选主场景建议audit_system_object取最大值,所有DDL对象全部审计。

设置不当的风险与影响:需要审计的对象越多,对系统性能的影响越大,占用的系统CPU和I/O越多。

表1 audit_system_object取值含义说明

二进制位

含义

取值说明

第0位

是否审计DATABASE对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第1位

是否审计SCHEMA对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第2位

是否审计USER和USER MAPPING对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第3位

是否审计TABLE对象的CREATE、DROP、ALTER、TRUNCATE操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER、TRUNCATE操作。
  • 1表示审计该对象的CREATE、DROP、ALTER、TRUNCATE操作。

第4位

是否审计INDEX对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第5位

是否审计VIEW/MATVIEW对象的CREATE、DROP操作。

  • 0表示不审计该对象的CREATE、DROP操作。
  • 1表示审计该对象的CREATE、DROP操作。

第6位

是否审计TRIGGER对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第7位

是否审计PROCEDURE/FUNCTION对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第8位

是否审计TABLESPACE对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第9位

是否审计RESOURCE POOL对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第10位

是否审计WORKLOAD对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第11位

是否审计SERVER对象的CREATE、DROP、ALTER操作

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第12位

保留

-

第13位

是否审计NODE GROUP对象的CREATE、DROP操作。

  • 0表示不审计该对象的CREATE、DROP操作。
  • 1表示审计该对象的CREATE、DROP操作。

第14位

是否审计ROW LEVEL SECURITY对象的CREATE、DROP、ALTER操作。

  • 0表示不审计该对象的CREATE、DROP、ALTER操作。
  • 1表示审计该对象的CREATE、DROP、ALTER操作。

第15位

是否审计TYPE对象的CREATE、DROP、ALTER操作。

  • 0表示不审计TYPE对象的CREATE、DROP、ALTER操作。
  • 1表示审计TYPE对象的CREATE、DROP、ALTER操作。

第16位

是否审计TEXT SEARCH对象(CONFIGURATION和DICTIONARY)的CREATE、DROP、ALTER操作。

  • 0表示不审计TEXT SEARCH对象的CREATE、DROP、ALTER操作。
  • 1表示审计TEXT SEARCH对象的CREATE、DROP、ALTER操作。

第17位

是否审计DIRECTORY对象的CREATE、DROP、ALTER操作。

  • 0表示不审计DIRECTORY对象的CREATE、DROP、ALTER操作。
  • 1表示审计DIRECTORY对象的CREATE、DROP、ALTER操作。

第18位

是否审计SYNONYM对象的CREATE、DROP、ALTER操作。

  • 0表示不审计SYNONYM对象的CREATE、DROP、ALTER操作。
  • 1表示审计SYNONYM对象的CREATE、DROP、ALTER操作。

第19位

是否审计SEQUENCE对象的CREATE、DROP、ALTER操作。

  • 0表示不审计SEQUENCE对象的CREATE、DROP、ALTER操作。
  • 1表示审计SEQUENCE对象的CREATE、DROP、ALTER操作。

第20位

是否审计CMK、CEK对象的CREATE、ALTER、DROP操作。

  • 0表示不审计CMK、CEK对象的CREATE、ALTER、DROP操作。
  • 1表示审计CMK、CEK对象的CREATE、ALTER、DROP操作。

第21位

是否审计PACKAGE对象的CREATE、DROP、ALTER操作(目前仅集中式支持PACKAGE)。

  • 0表示不审计PACKAGE对象的CREATE、DROP、ALTER操作。
  • 1表示审计PACKAGE对象的CREATE、DROP、ALTER操作。

第22位

保留

-

第23位

保留

-

第24位

是否审计对gs_global_config全局对象的ALTER、DROP操作。

  • 0表示不审计对系统表gs_global_config全局对象的ALTER、DROP操作。
  • 1表示审计对系统表gs_global_config全局对象的ALTER、DROP操作。

第25位

是否审计FOREIGN DATA WRAPPER对象的CREATE、DROP、ALTER操作,目前该功能暂不支持。

  • 0表示不审计FOREIGN DATA WRAPPER对象的CREATE、DROP、ALTER操作。
  • 1表示审计FOREIGN DATA WRAPPER对象的CREATE、DROP、ALTER操作。

第26位

是否审计SQL PATCH对象的CREATE、ENABLE、DISABLE、DROP操作。

  • 0表示不审计SQL PATCH对象的CREATE、ENABLE、DISABLE、DROP操作。
  • 1表示审计SQL PATCH对象的CREATE、ENABLE、DISABLE、DROP操作。

第27位

保留

-

第28位

是否审计DBLINK对象的CREATE、ALTER、DROP操作。目前DATABASE LINK功能暂不支持。

  • 0表示不审计DBLINK对象的CREATE、ALTER、DROP操作。
  • 1表示审计DBLINK对象的CREATE、ALTER、DROP操作。
support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-10-0312.html