VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

操作审计

audit_system_object

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

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

取值范围: 整型,0~134217727

  • 0代表关闭Vastbase数据库对象的CREATE、DROP、ALTER操作审计功能。
  • 非0代表只审计Vastbase的某类或者某些数据库对象的CREATE、DROP、ALTER操作。

取值说明

该参数的值由27个二进制位(第0位~第26位)的组合求出,这27个二进制位分别代表Vastbase的27类数据库对象。

  • 如果对应的二进制位取值为0,表示不审计对应的数据库对象的CREATE、DROP、ALTER操作;
  • 取值为1,表示审计对应的数据库对象的CREATE、DROP、ALTER操作。各个二进制位代表的具体审计内容请参见表1

默认值: 12295

表 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对象的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位

保留

-

第12位

是否审计DATA SOURCE对象的CRAETE、DROP、ALTER操作。

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

第13位

保留

-

第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、DROP操作。

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

第21位

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

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

第22位

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

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

第23位

是否审计PUBLICATION和SUBSCRIPTION对象的CREATE、DROP、ALTER操作。

  • 0表示不审计PUBLICATION和

    SUBSCRIPTION对象的CREATE、DROP、ALTER操作;

  • 1表示审计PUBLICATION和

    SUBSCRIPTION对象的CREATE、DROP、ALTER操作。

第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操作。

audit_dml_state

参数说明: 这个参数决定是否对具体表的INSERT、UPDATE、DELETE操作进行审计。

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

取值范围: 整型,0、1。

  • 0表示关闭具体表的DML操作(SELECT除外)审计功能。
  • 1表示开启具体表的DML操作(SELECT除外)审计功能。

默认值: 0

audit_dml_state_select

参数说明: 这个参数决定是否对SELECT操作进行审计。

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

取值范围: 整型,0、1。

  • 0表示关闭SELECT操作审计功能。
  • 1表示开启SELECT审计操作功能。

默认值: 0

audit_function_exec

参数说明: 该参数决定在执行存储过程、匿名块或自定义函数(不包括系统自带函数)时是否记录审计信息。

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

取值范围: 整型,0、1。

  • 0表示关闭过程或函数执行的审计功能。
  • 1表示开启过程或函数执行的审计功能。

默认值: 0

audit_system_function_exec

参数说明: 该参数决定在执行白名单内的系统函数时是否记录审计日志。

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

取值范围: 整型,0、1。

  • 0表示关闭对系统函数执行的审计功能。
  • 1表示开启对系统函数执行的审计功能。

默认值: 0

支持记录审计的系统函数白名单如下表所示:

pg_stat_activity pg_terminate_backend set_config pg_cancel_backend pg_cancel_session pg_cancel_invalid_query
pg_reload_conf pg_rotate_logfile pg_terminate_session pg_create_restore_point pg_start_backup pg_stop_backup
pg_switch_xlog pg_cbm_get_merged_file pg_cbm_recycle_file pg_enable_delay_ddl_recycle pg_disable_delay_ddl_recycle pg_cbm_rotate_file
gs_roach_stop_backup gs_roach_enable_delay_ddl_recycle gs_roach_disable_delay_ddl_recycle gs_roach_switch_xlog pg_last_xlog_receive_location pg_xlog_replay_pause
pg_create_physical_replication_slot_extern gs_set_obs_delete_location gs_hadr_do_switchover gs_set_obs_delete_location_with_slotname gs_streaming_dr_in_switchover pg_advisory_lock
pg_advisory_lock_shared pg_advisory_unlock pg_advisory_unlock_shared pg_advisory_unlock_all pg_advisory_xact_lock pg_advisory_xact_lock_shared
pg_try_advisory_lock pg_try_advisory_lock_shared pg_try_advisory_xact_lock pg_try_advisory_xact_lock_shared lock_cluster_ddl unlock_cluster_ddl
pg_create_logical_replication_slot pg_drop_replication_slot pg_logical_slot_peek_changes pg_logical_slot_get_changes pg_logical_slot_get_binary_changes pg_replication_origin_create
pg_replication_origin_drop pg_replication_origin_session_setup pg_replication_origin_session_reset pg_replication_origin_advance local_space_shrink gs_space_shrink
global_space_shrink pg_free_remain_segment gs_fault_inject gs_repair_file local_clear_bad_block_info remote_clear_bad_block_info
gs_repair_page

audit_copy_exec

参数说明: 这个参数决定是否对COPY操作进行审计。

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

取值范围: 整型,0、1。

  • 0表示关闭COPY审计功能。
  • 1表示开启COPY审计功能。

默认值: 0

audit_set_parameter

参数说明: 这个参数决定是否对SET操作进行审计。

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

取值范围: 整型,0、1。

  • 0表示关闭SET审计功能。
  • 1表示开启SET审计功能。

默认值: 0

audit_xid_info

参数说明: 这个参数决定是否在审计日志字段detail_info中记录SQL语句的事务ID。

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

取值范围: 整型,0、1。

  • 0表示关闭审计日志记录事务ID功能。
  • 1表示开启审计日志记录事务ID功能。

默认值: 0

如果开启此开关,审计日志中detail_info信息则以xid开始,例如:

detail_info: xid=14619 , create table t1(id int);

对于不存在事务ID的审计行为,记录xid=NA。

audit_hash_enabled

参数说明: 是否开启审计文件完整性校验功能。

该参数属于POSTMASTER类型参数,修改完成后需要重启数据库服务才能生效,具体请参考重设参数表1中对应设置方法进行设置。

取值范围: 布尔型

  • on:表示开启审计文件完整性校验功能。

  • off:表示关闭审计文件完整性校验功能。

默认值: off

enable_separation_of_duty

参数说明: 是否开启三权分立选项。

该参数属于POSTMASTER类型参数,请参考重设参数表1中对应设置方法进行设置。

取值范围: 布尔型

  • on表示开启三权分立。
  • off表示不开启三权分立。

默认值: off

enable_nonsysadmin_execute_direct

参数说明: 是否允许非系统管理员和非监控管理员执行EXECUTE DIRECT ON语句。

该参数属于POSTMASTER类型参数,请参考重设参数表1中对应设置方法进行设置。

取值范围: 布尔型

  • on表示允许任意用户执行EXECUTE DIRECT ON语句。
  • off表示只允许系统管理员和监控管理员执行EXECUTE DIRECT ON语句。

默认值: off

enable_access_server_directory

参数说明: 是否开启非初始用户创建、修改和删除DIRECTORY的权限。

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

取值范围: 布尔型

  • on表示开启非初始用户创建、修改和删除DIRECTORY的权限。
  • off表示不开启非初始用户创建、修改和删除DIRECTORY的权限。

默认值: off

  • 出于安全考虑,默认情况下,只有初始用户才能够创建、修改和删除DIRECTORY对象。

  • 如果开启了enable_access_server_directory,具有SYSADMIN权限的用户和继承了内置角色gs_role_directory_create权限的用户可以创建directory对象;具有SYSADMIN权限的用户、directory对象的属主、被授予了该directory的DROP权限的用户或者继承了内置角色gs_role_directory_drop权限的用户可以删除directory对象;具有SYSADMIN权限的用户和directory对象的属主可以修改directory对象的所有者,且要求该用户是新属主的成员。

ogmac_enable_mac

参数说明: 控制强制访问控制功能是否开启。

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

取值范围: 布尔型

  • on:开启强制访问控制功能。
  • off:关闭强制访问控制功能。

默认值: off

一旦对某个表授予了标签,即使关闭了访问控制开关,后面再对此表进行增删改查,依然会进行强制访问控制。此设计是为了避免同一个表里同时出现带安全属性和行和不带安全属性的行。

audit_transaction

参数说明: 该参数用于控制是否启用transaction的审计。

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

取值范围: 整型,0或1

  • 0:关闭transaction的审计。
  • 1:启用transaction的审计。

默认值: 0