10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载 本手册节选

6.4.6审计消息组件

从MySQL 8.0.14开始,audit_api_message_emit组件使应用程序能够将它们自己的消息事件添加到审计日志audit_api_message_emit_udf ()函数。

audit_api_message_emit组件与所有审计类型的插件协作。为了具体,示例使用audit_log插件中描述第6.4.5节,“MySQL企业审计”

安装或卸载审计消息组件

要使服务器可用,组件库文件必须位于MySQL插件目录中(该目录由plugin_dir系统变量)。如果有必要,可以通过设置的值来配置插件目录位置plugin_dir在服务器启动。

安装audit_api_message_emit组件,使用以下语句:

安装组件”文件:/ / component_audit_api_message_emit”;

组件安装是一次性操作,不需要在每次服务器启动时进行。安装组件加载该组件,并将其注册到10bet靠谱mysql.component系统表,以便在后续服务器启动期间加载它。

卸载了audit_api_message_emit组件,使用以下语句:

卸载组件“文件:/ / component_audit_api_message_emit”;

卸载组件卸载该组件,并从10bet靠谱mysql.component系统表,以导致在后续服务器启动期间不加载它。

因为安装和卸载audit_api_message_emit组件将安装和卸载audit_api_message_emit_udf ()组件实现的函数,不需要使用创建函数删除函数这样做。

审计信息函数

本节介绍audit_api_message_emit_udf ()函数实现的audit_api_message_emit组件。

在使用审计消息功能之前,请按照下面的说明安装审计消息组件安装或卸载审计消息组件

  • audit_api_message_emit_udf (组件生产商消息(,关键价值]…)

    将消息事件添加到审计日志中。消息事件包括调用方选择的组件、生产者和消息字符串,以及可选的一组键-值对。

    此函数发布的事件被发送到所有启用的审计类型的插件,每个插件根据自己的规则处理该事件。如果没有启用审计类型的插件,发布事件没有效果。

    参数:

    • 组件:指定组件名称的字符串。

    • 生产商:指定生产者名称的字符串。

    • 消息:指定事件消息的字符串。

    • 关键价值:事件可能包括0个或多个键值对,它们指定任意应用程序提供的数据映射。每一个关键参数是一个字符串,它为紧接其后的参数指定名称价值论点。每一个价值参数为其紧接其后的对象指定一个值关键论点。每一个价值可以是字符串或数值,或者

    返回值:

    的字符串好吧表示成功。如果函数失败,则会出现错误。

    例子:

    mysql> SELECT audit_api_message_emit_udf('component_text', 'producer_text', 'message_text', 'key1', 'value1', 'key2', 123, 'key3', NULL) AS 'Message';+---------+ | 消息  | +---------+ | 好吧  | +---------+

    附加信息:

    接收由发布的事件的每个审计插件audit_api_message_emit_udf ()以特定于插件的格式记录事件。例如,audit_log插件(见第6.4.5节,“MySQL企业审计”的日志信息值,具体取决于配置的日志格式audit_log_format系统变量:

    • JSON格式(audit_log_format = JSON):

      {…"class": "message", "event": "user",…"message_data": {"component": "component_text", "producer": "producer_text", "message": "message_text", "map": {"key1": "value1", "key2": 123, "key3": null}}}}
    • 新型XML格式(audit_log_format = NEW):

      < AUDIT_RECORD >…<名称>消息< /名称>…user component_text producer_text    key1   key1 value1   key2 123   key3    
    • 旧式XML格式(audit_log_format =老):

      < AUDIT_RECORD…NAME = "消息"……COMMAND_CLASS="user" COMPONENT="component_text" PRODUCER="producer_text" MESSAGE="message_text"/> . COMMAND_CLASS="user" COMPONENT="component_text" MESSAGE=" producer_text
      请注意

      由于这种格式施加的表示约束,以旧式XML格式记录的消息事件不包括键值映射。

    发布的消息audit_api_message_emit_udf ()有一个事件类MYSQL_AUDIT_MESSAGE_CLASS的子类MYSQL_AUDIT_MESSAGE_USER.内部生成的审计消息具有相同的类和类的子类MYSQL_AUDIT_MESSAGE_INTERNAL;这个子类目前未使用。)引用:在…中引用这些事件audit_log过滤规则,使用元素的名字的价值消息.例如:

    {"filter": {"class": {"name": "message"}}}}

    是否有必要区分用户生成和内部生成的消息事件,测试子类值对用户内部

    不支持基于键值映射的内容进行过滤。

    有关编写过滤规则的信息,请参见第6.4.5.7节“审计日志过滤”