功能描述 创建统一审计策略。 GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 845 注意事项 只有poladmin、sysadmin 或初始用户能进行此操作。 需要开启安全策略开关,即设置GUC 参数enable_security_policy=on,审计策略才可以 生效。 语法格式 CREATE AUDIT POLICY [ IF NOT EXISTS ] policy_name { { privilege_audit_clause | access_audit_clause } [ filter_group_clause ] [ ENABLE | DISABLE ] }; privilege_audit_clause: PRIVILEGES { DDL | ALL } [ ON LABEL ( resource_label_name [, ... ] ) ] access_audit_clause: ACCESS { DML | ALL } [ ON LABEL ( resource_label_name [, ... ] ) ] filter_group_clause: FILTER ON { ( FILTER_TYPE ( filter_value [, ... ] ) ) [, ... ] } DDL 支持: { ( ALTER | ANALYZE | COMMENT | CREATE | DROP | GRANT | REVOKE | SET | SHOW | LOGIN_ACCESS | LOGIN_FAILURE | LOGOUT | LOGIN ) } DML 支持: { ( COPY | DEALLOCATE | DELETE_P | EXECUTE | REINDEX | INSERT | PREPARE | SELECT | TRUNCATE | UPDATE ) } FILTER_TYPE 支持: { APP | ROLES | IP } 参数说明 policy_name GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 846 审计策略名称,需要唯一,不可重复; 取值范围:字符串,要符合标识符的命名规范。 DDL 指的是针对数据库执行如下操作时进行审计, 目前支持: CREATE、 ALTER、 DROP、 ANALYZE、COMMENT、GRANT、REVOKE、SET、SHOW、LOGIN_ANY、 LOGIN_FAILURE、LOGIN_SUCCESS、LOGOUT。 ALL 指的是上述DDL 支持的所有对数据库的操作。 resource_label_name 资源标签名称。 DML 指的是针对数据库执行如下操作时进行审计,目前支持:SELECT、COPY、 DEALLOCATE、DELETE、EXECUTE、INSERT、PREPARE、REINDEX、TRUNCATE、 UPDATE。 FILTER_TYPE 描述策略过滤的条件类型,包括IP | APP | ROLES。 filter_value 指具体过滤信息内容。 ENABLE|DISABLE 可以打开或关闭统一审计策略。若不指定ENABLE|DISABLE,语句默认为ENABLE。 示例 --创建dev_audit 和bob_audit 用户。 gbase=#CREATE USER dev_audit PASSWORD 'dev@1234'; CREATE USER bob_audit password 'bob@1234'; GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 847 --创建一个表tb_for_audit gbase=#CREATE TABLE tb_for_audit(col1 text, col2 text, col3 text); --创建资源标签 gbase=#CREATE RESOURCE LABEL adt_lb0 add TABLE(tb_for_audit); --对数据库执行create 操作创建审计策略 gbase=#CREATE AUDIT POLICY adt1 PRIVILEGES CREATE; --对数据库执行select 操作创建审计策略 gbase=#CREATE AUDIT POLICY adt2 ACCESS SELECT; --仅审计记录用户dev_audit 和bob_audit 在执行针对adt_lb0 资源进行的create 操作数据库创 建审计策略 gbase=#CREATE AUDIT POLICY adt3 PRIVILEGES CREATE ON LABEL(adt_lb0) FILTER ON ROLES(dev_audit, bob_audit); --仅审计记录用户dev_audit 和bob_audit,客户端工具为psql 和gsql,IP 地址为'10.20.30.40', '127.0.0.0/24',在执行针对adt_lb0 资源进行的select、insert、delete 操作数据库创建审计策 略。 gbase=#CREATE AUDIT POLICY adt4 ACCESS SELECT ON LABEL(adt_lb0), INSERT ON LABEL(adt_lb0), DELETE FILTER ON ROLES(dev_audit, bob_audit), APP(psql, gsql), IP('10.20.30.40', '127.0.0.0/24'); 相关命令 ALTER AUDIT POLICY DROP AUDIT POLICY。 GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 848