跳转到主要内容
ClickHouse 默认提供数据库审计日志。本页重点介绍安全相关日志。有关系统记录数据的更多信息,请参阅系统表文档。
日志保留这些信息会直接记录到系统表中,默认最多保留 30 天。该时长可能更长或更短,并会受到系统中合并操作频率的影响。客户还可以采取额外措施来延长日志存储时间,或将日志导出到安全信息和事件管理 (SIEM) 系统中进行长期存储。详见下文。

安全相关日志

ClickHouse 主要将与安全相关的数据库事件记录到会话日志和查询日志中。 system.session_log 会记录成功和失败的登录尝试,以及发起身份验证尝试的位置。此信息可用于识别针对 ClickHouse 实例的凭据填充攻击或暴力破解攻击。 显示登录失败的示例查询
select event_time
    ,type
    ,user
    ,auth_type
    ,client_address 
FROM clusterAllReplicas('default',system.session_log) 
WHERE type='LoginFailure' 
LIMIT 100
system.query_log 会捕获在 ClickHouse 实例中执行的查询活动。这些信息可用于确定威胁行为者执行了哪些查询。 用于搜索 “compromised_account” 用户活动的示例查询
SELECT event_time
    ,address
    ,initial_user
    ,initial_address
    ,forwarded_for
    ,query 
FROM clusterAllReplicas('default', system.query_log) 
WHERE user=’compromised_account’

在服务中保留日志数据

如需更长的保留期或更高的日志持久性,可以使用 materialized views 来实现这些目标。有关 materialized views 的更多信息,包括其概念、优势和实现方法,请参阅我们的 materialized views 视频和文档。

导出日志

系统日志可使用与 SIEM 系统兼容的多种格式写入或导出到存储位置。更多信息,请参阅我们的表函数文档。最常用的方法有:
最后修改于 2026年6月10日