其记录内容如下:
日志的格式解释可看官方文档:MariaDB Audit Plugin – Log Format
4.3. MySQL Enterprise Audit Plugin该插件的日志文件可以是XML或者JSON格式,以XML为例:
<AUDIT_RECORD> <TIMESTAMP>2019-10-03T14:09:38 UTC</TIMESTAMP> <RECORD_ID>6_2019-10-03T14:06:33</RECORD_ID> <NAME>Query</NAME> <CONNECTION_ID>5</CONNECTION_ID> <STATUS>0</STATUS> <STATUS_CODE>0</STATUS_CODE> <USER>root[root] @ localhost [127.0.0.1]</USER> <OS_LOGIN/> <HOST>localhost</HOST> <IP>127.0.0.1</IP> <COMMAND_CLASS>drop_table</COMMAND_CLASS> <SQLTEXT>DROP TABLE IF EXISTS t</SQLTEXT> </AUDIT_RECORD>相似的格式介绍请查看官方文档:审核日志文件格式
4.4. McAfee的libaudit_plugin该插件日志文件的格式是json:
{ "msg-type": "activity", "date": "1510038432019", "thread-id": "43", "query-id": "1891", "user": "root", "priv_user": "root", "ip": "", "host": "localhost", "connect_attrs": { "_os": "linux-glibc2.5", "_client_name": "libmysql", "_pid": "4009", "_client_version": "5.7.9", "_platform": "x86_64", "program_name": "mysql" }, "pid": "4009", "os_user": "root", "appname": "mysql", "rows": "1", "cmd": "insert", "objects": [ { "db": "part", "name": "e", "obj_type": "TABLE" } ], "query": "insert into e values (9898,'smart','james')" }详细的格式介绍请查看官方文档:mysql-audit
五、测评项cc)应对审计记录进行保护,定期备份,避免受到未预期的删除、修改或覆盖等;
5.1. 要求1对审计记录进行保护,那么这里就不细说了,说一下大概的原则。
无论是自带的审计还是审计插件,如果审核记录存储于文件中的,应该在操作系统上对这些日志文件的权限进行限定,仅允许数据库管理员可对这些文件进行访问、修改等。同时也要限制MySQL中的file_priv权限。
如果审核记录存储于数据库表中,那么也应该对数据库的表进行权限设置,仅数据库管理员可对审核记录表进行访问、修改等。
5.2. 要求2定期备份就不用多做什么说明了,检查备份文件和备份策略即可。
在这里有一个地方想探讨下,在等级保护2.0试行稿中,对日志的留存时间有要求:
这里的法律法规要求一般来说指的就是《网络安全法》,其中有关日志留存时间的条款如下:
(三)采取监测、记录网络运行状态、网络安全事件的技术措施,并按照规定留存相关的网络日志不少于六个月;
在等保正式2.0正式稿中,这个测评项被删除了,那么《网络安全法》对于日志留存时间(6个月)的要求是否落在了测评项c当中呢?
从基本要求来看,应该不是,其中没有这个要求: