1. 审计开关
GaussDB的审计功能由审计进程完成,审计进程的开启和关闭由审计开关决定
开启审计功能对数据库性能有一定的影响,主要是对增、删、改、查审计记录
审计日志也一并写入到数据库的日志记录当中
audit_enabled
参数说明:控制审计进程的开启和关闭。审计进程开启后,将从管道读取后台进程写入的审计信息,并写入审计文件。
取值范围:布尔型
- on 表示启动审计功能。
- off 表示关闭审计功能。
- 默认值:on
2. 用户和权限审计
audit_login_logout
参数说明:这个参数决定是否审计GaussDB用户的登录(包括登录成功和登录失败)、注销。
取值范围:整型
- 0表示关闭用户登录、注销审计功能。
- 1表示只审计用户登录成功。
- 2表示只审计用户登录失败。
- 3表示只审计用户登录成功和失败。
- 4表示只审计用户注销。
- 5表示只审计用户注销和登录成功。
- 6表示只审计用户注销和登录失败。
- 7表示审计用户登录成功、失败和注销。
- 默认值:7
audit_user_locked
参数说明:该参数决定是否审计GaussDB用户的锁定和解锁。
取值范围:整型
- 0表示关闭用户锁定和解锁审计功能。
- 1表示开启审计用户锁定和解锁功能。
- 默认值:1
audit_user_violation
参数说明:该参数决定是否审计用户的越权访问操作。
取值范围:整型
- 0表示关闭用户越权操作审计功能。
- 1表示开启用户越权操作审计功能。
- 默认值:0
audit_grant_revoke
参数说明:该参数决定是否审计GaussDB用户权限授予和回收的操作。
取值范围:整型
- 0表示关闭审计用户权限授予和回收功能。
- 1表示开启审计用户权限授予和回收功能。
- 默认值:1
3. 操作审计
audit_database_process
参数说明:该参数决定是否对GaussDB的启动、停止、切换和恢复进行审计。
取值范围:整型
- 0表示关闭GaussDB启动、停止、恢复和切换审计功能。
- 1表示开启GaussDB启动、停止、恢复和切换审计功能。
- 默认值:1
audit_system_object
参数说明:该参数决定是否对GaussDB数据库对象的CREATE、DROP、ALTER操作进行审计。GaussDB数据库对象包括DATABASE、USER、SCHEMA、TABLE等。通过修改该配置参数的值,可以只审计需要的数据库对象的操作。
取值范围:整型,0~1023
- 0代表关闭GaussDB数据库对象的CREATE、DROP、ALTER 操作审计功能。
- 非0代表只审计GaussDB的某类或者某些数据库对象的CREATE、DROP、ALTER 操作。
取值说明:
- 该参数的值由十个二进制位的组合求出,这十个二进制位分别代表GaussDB的十类数据库对象。如果对应的二进制位取值为0,表示不审计对应的数据库对象的CREATE、DROP、ALTER操作;取值为1,表示审计对应的数据库对象的CREATE、DROP、ALTER操作。
- 例如:假设audit_system_object = 511,由于511(10)=11111111(2),则GaussDB所有数据库对象的CREATE、DROP、ALTER操作都会被审计。
- 默认值:7
二进制位 | 含义 | 取值说明 |
第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操作。 | 0表示不审计该对象的CREATE、DROP、ALTER操作; 1表示审计该对象的CREATE、DROP、ALTER操作。 |
第4位 | 是否审计INDEX对象的CREATE、DROP、ALTER操作。 | 0表示不审计该对象的CREATE、DROP、ALTER操作; 1表示审计该对象的CREATE、DROP、ALTER操作。 |
第5位 | 是否审计VIEW对象的CREATE、DROP操作。 | 0表示不审计该对象的CREATE、DROP、ALTER操作; 1表示审计该对象的CREATE、DROP、ALTER操作。 |
第6位 | 是否审计TRIGGER对象的CREATE、DROP、ALTER操作。 | 0表示不审计该对象的CREATE、DROP、ALTER操作; 1表示审计该对象的CREATE、DROP、ALTER操作。 |
第7位 | 是否审计PROCEDURE对象的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位 | 是否审计DIRECTORY对象的CREATE、DROP、ALTER操作。 | 0表示不审计该对象的CREATE、DROP、ALTER操作; 1表示审计该对象的CREATE、DROP、ALTER操作。 |
audit_dml_state
参数说明:这个参数决定是否对具体表的INSERT、UPDATE、DELETE操作进行审计。
取值范围:整型
- 0表示关闭具体表的DML操作(SELECT 除外)审计功能。
- 1表示开启具体表的DML操作(SELECT 除外)审计功能。
- 默认值:0
audit_dml_state_select
参数说明:这个参数决定是否对SELECT操作进行审计。
取值范围:整型
- 0表示关闭SELECT操作审计功能。
- 1表示开启SELECT审计操作功能。
- 默认值:0