首批通过分布式安全可靠测评,为关键业务系统打造
AUDIT_LOG_FILTER_SET_USER
更新时间:2026-07-16 20:01:47
描述
该函数(表达式)用于将过滤器设置到用户上。
功能适用性
该内容仅适用于 OceanBase 数据库企业版,OceanBase 数据库社区版暂不支持审计功能。
语法
AUDIT_LOG_FILTER_SET_USER('user_name', 'filter_name');
说明
参数解释
user_name:用于指定用户名称。说明
AUDIT_LOG_FILTER_SET_USER指定的user@host不要求是已存在的用户,可以写通配符或不存在的用户。user_name有以下限制:- 不支持指定
host字段。 user只支持对整个字段进行通配,即%,不支持test_%这种部分通配的写法。
- 不支持指定
filter_name:用于指定过滤器名称。说明
AUDIT_LOG_FILTER_SET_USER是CREATE OR REPLACE语义,对已存在的对象执行 DDL 会覆盖。指定的filter_name不存在时,DDL 不生效但也不报错。
返回值
表达式输入必须是字符串常量,输出是字符串类型。
- 当 DDL 执行成功时,表达式返回
OK。 - 当 DDL 执行失败时,
SELECT语句仍然执行成功,表达式的输出结果为错误信息。
示例
将过滤器 log_all 设置到用户上 user001。
SELECT AUDIT_LOG_FILTER_SET_USER('user001', 'log_all');
返回结果如下:
+-------------------------------------------------+
| AUDIT_LOG_FILTER_SET_USER('user001', 'log_all') |
+-------------------------------------------------+
| OK |
+-------------------------------------------------+
1 row in set