第 2 章 Clair 概念


以下小节介绍了 Clair 的工作原理概述。

2.1. 实践中的 Clair

Clair 分析分为三个不同的部分:索引、匹配和通知。

2.1.1. 索引

Clair 的 indexer 服务在了解容器镜像的组成方面扮演着重要角色。在 Clair 中,容器镜像表示被称为 "manifests"。清单用于理解镜像层的内容。为简化此过程,Clair 利用了开放容器项目(OCI)清单和层,专为内容寻址而设计,从而减少重复性任务。

在索引过程中,使用代表容器镜像的清单,并划分到其基本组件中。索引器的作业是取消镜像包含的软件包、原始分发及其依赖的软件包存储库。然后,在 Clair 的数据库中记录并存储了这一宝贵的信息。在索引过程中收集的 insights 作为生成全面漏洞报告的基础。此报告可以无缝传输到匹配节点以进一步分析和操作,帮助用户对其容器镜像的安全性做出明智决策。

2.1.2. 匹配

使用 Clair 时,匹配节点负责与提供的索引报告匹配的漏洞。

匹配者负责保持漏洞数据库最新。匹配者运行一组更新器,它会定期为新内容探测其数据源。当发现新漏洞时,会将其存储在数据库中。

匹配器 API 设计为经常使用。它旨在始终在查询时提供最新的漏洞报告。漏洞报告总结了清单的内容以及影响内容的任何漏洞。

2.1.3. 通知

Clair 使用通知程序服务来跟踪新的安全数据库更新,并在新的或移除的漏洞影响了索引清单时通知用户。

当通知程序了解影响之前索引清单的新漏洞时,它使用 config.yaml 文件中配置的方法来发出有关新更改的通知。返回的通知会表达因为更改而发现的最重要的漏洞。这可避免为相同的安全数据库更新创建过量通知。

当用户收到通知时,它会根据匹配者发出一个新的请求,以接收最新的漏洞报告。

您可以通过以下机制订阅通知:

  • Webhook 交付
  • AMQP 交付
  • Stomp 传输

配置通知程序是通过 Clair YAML 配置文件完成的。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat