mysql数据库审计(2)

日志设置

事件类型

说明

Introduced

CONNECT

连接,断开连接和失败的连接-包括错误代码

QUERY

执行的查询及其结果为纯文本格式,包括由于语法或权限错误而导致的查询失败

TABLE

受查询执行影响的表

QUERY_DDL

同QUERY,但仅过滤DDL类型的查询(CREATE,ALTER,DROP,RENAME和TRUNCATE语句。除了CREATE/DROP [PROCEDURE / FUNCTION / USER]和RENAME USER(他们不是DDL)

MariaDB 5.5.42MariaDB 10.0.17MariaDB 10.1.4

QUERY_DML

同QUERY,但仅过滤DML类型的查询(DO,CALL,LOAD DATA/XML,DELETE,INSERT,SELECT,UPDATE,HANDLER和REPLACE语句)

MariaDB 5.5.42MariaDB 10.0.17MariaDB 10.1.4

QUERY_DML_NO_SELECT

与相同QUERY_DML,但不记录SELECT查询。(因为版本1.4.4)( DO,CALL,LOAD DATA/XML , 和 DELETE、INSERT、UPDATE、HANDLER、REPLACE 语句)

MariaDB 5.5.42MariaDB 10.0.17MariaDB 10.1.4

QUERY_DCL

同QUERY,但仅过滤DCL型查询(CREATE USER,DROP USER,RENAME USER,GRANT,REVOKE和SET PASSWORD语句)

MariaDB 5.5.43MariaDB 10.0.18MariaDB 10.1.5

3.5. 插件选项和系统变量

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

SHOW GLOBAL VARIABLES LIKE '%server_audit%';

+-------------------------------+-----------------------+

| Variable_name                 | Value                 |

+-------------------------------+-----------------------+

| server_audit_events           | CONNECT,QUERY,TABLE   |

| server_audit_excl_users       |                       |

| server_audit_file_path        | server_audit.log      |

| server_audit_file_rotate_now  | OFF                   |

| server_audit_file_rotate_size | 1000000               |

| server_audit_file_rotations   | 9                     |

| server_audit_incl_users       |                       |

| server_audit_logging          | ON                    |

| server_audit_mode             | 0                     |

| server_audit_output_type      | file                  |

| server_audit_query_log_limit  | 1024                  |

| server_audit_syslog_facility  | LOG_USER              |

| server_audit_syslog_ident     | mysql-server_auditing |

| server_audit_syslog_info      |                       |

| server_audit_syslog_priority  | LOG_INFO              |

+-------------------------------+-----------------------+

3.5.1. 系统变量

变量名

说明

命令行

范围

动态

数据类型

默认值

有效值

server_audit_events

如果设置,则将审核日志记录限制为某些事件类型。如果未设置,则将每种事件类型记录到审核日志中。如:

SET GLOBAL server_audit_events='connect, query'

--server-audit-events=value

全局

string

Empty string

  • CONNECT, QUERY, TABLE (MariaDB Audit Plugin < 1.2.0)
  • CONNECT, QUERY, TABLE, QUERY_DDL, QUERY_DML (MariaDB Audit Plugin >= 1.2.0)
  • CONNECT, QUERY, TABLE, QUERY_DDL, QUERY_DML, QUERY_DCL (MariaDB Audit Plugin >=1.3.0)
  • CONNECT, QUERY, TABLE, QUERY_DDL, QUERY_DML, QUERY_DCL, QUERY_DML_NO_SELECT (MariaDB Audit Plugin >= 1.4.4)

server_audit_excl_users

如果不为空,则包含将不记录其活动的用户列表。如:

SET GLOBAL server_audit_excl_users='user_foo, user_bar'

但 CONNECT 类型的记录仍会被记录。如果用户在 server_audit_incl_users 参数中被指定,则仍然会记录所有操作。

--server-audit-excl-users=value

全局

string

Empty string

长度限制:1024个字符

server_audit_file_path

当 server_audit_output_type = file 时,将路径和文件名设置为日志文件。如果指定的路径作为目录存在,那么将在该目录内创建名为“ server_audit.log”的日志。否则,该值将被视为文件名。默认值为“ server_audit.log”,这意味着将在数据库目录中创建此文件。

--server-audit-file-path=value

全局

string

server_audit.log

server_audit_file_rotate_now

当 server_audit_output_type = file 时,用户可以通过将此变量设置为ON或1来强制轮换日志文件。

--server-audit-rotate-now[={0|1}]

全局

boolean

OFF

server_audit_file_rotate_size

当 server_audit_file_rotate_size = file 时,它限制了日志文件的大小。达到该限制将开启轮换-当前日志文件被重命名为“ file_path.1”。空日志文件将创建为“ file_path”以登录到该文件。默认值为1000000。

--server-audit-rotate-size=#

全局

numeric

1000000

server_audit_file_rotations

当 server_audit_output_type = file '时,它指定要保存的转数。如果设置为0,则日志永远不会旋转。预设值为9。

--server-audit-rotations=#

全局

numeric

9

0999

server_audit_incl_users

如果不为空,则包含将记录其活动的用户的逗号分隔列表。如:

SET GLOBAL server_audit_incl_users='user_foo, user_bar'

CONNECT记录不受此变量的影响-始终记录它们。此设置的优先级高于

server_audit_excl_users。因此,如果在incl_和excl_列表中同时指定了同一用户,则仍将其记录下来。

--server-audit-incl-users=value

全局

string

Empty string

长度限制:1024个字符

server_audit_loc_info

由插件内部使用。对用户没有任何意义。

  • 在早期版本中,用户将其视为只读变量。
  • 在更高版本中,它对用户隐藏。

全局

string

Empty string

server_audit_logging

启用/禁用日志记录。期望值为ON / OFF。如:

SET GLOBAL server_audit_logging=on

如果 server_audit_output_type 为 FILE,则实际上将创建/打开日志文件,因此应事先正确指定 server_audit_file_path。与SYSLOG相关的参数相同。默认情况下,日志记录处于关闭状态。

--server-audit-logging[={0|1}]

全局

boolean

OFF

server_audit_mode

此变量对用户没有任何特殊含义。其值主要反映了启动插件所使用的服务器版本,供开发人员用于测试。

--server-audit-mode[=#]

server_audit_output_type

指定所需的输出类型。可以是SYSLOG或FILE。例如:

SET GLOBAL server_audit_output_type=file

file:日志记录将保存到循环日志文件中。由 server_audit_file_path 变量设置的文件名。

syslog:日志记录将使用标准的<syslog.h> API发送到本地syslogd守护程序。默认值为“文件”。

--server-audit-output-type=value

全局

enum

file

SYSLOGFILE

server_audit_query_log_limit

对记录中查询字符串长度的限制。

--server-audit-query-log-limit=#

全局

numeric

1024

02147483647

server_audit_syslog_facility

SYSLOG模式变量。它定义了将发送到系统日志的记录的“功能”。以后可以使用此参数过滤日志。

--server-audit-syslog-facility=value

全局

enum

LOG_USER

LOG_USERLOG_MAILLOG_DAEMONLOG_AUTHLOG_SYSLOGLOG_LPRLOG_NEWSLOG_UUCPLOG_CRONLOG_AUTHPRIVLOG_FTP,和LOG_LOCAL0LOG_LOCAL7

server_audit_syslog_ident

SYSLOG模式变量。每个系统日志记录的“ ident”部分的字符串值。默认值为“ mysql-server_auditing”。仅在重新启动日志记录之后,新值才生效。

--server-audit-syslog-ident=value

全局

string

mysql-server_auditing

server_audit_syslog_info

SYSLOG模式变量。要添加到syslog记录中的'info'字符串。可以随时更改。

--server-audit-syslog-info=value

全局

string

Empty string

server_audit_syslog_priority

SYSLOG模式变量。定义syslogd的日志记录的优先级。

--server-audit-syslog-priority=value

全局

enum

LOG_INFO

LOG_EMERGLOG_ALERTLOG_CRITLOG_ERRLOG_WARNINGLOG_NOTICELOG_INFOLOG_DEBUG

Guess you like

Origin blog.csdn.net/2301_76957510/article/details/130189176