GUAC 采用来自 ClearlyDefined 的许可元数据
由于开源促进会 (OSI) 的 ClearlyDefined 项目集成到 GUAC (用于理解构件组成的图) 中,软件供应链的透明度得到了提升,GUAC 是 Linux 基金会的 OpenSSF 项目。GUAC 提供软件程序包、依赖项、漏洞、证明等的全面映射,使组织能够更好地实现其软件供应链的合规性和安全性。

GUAC 提供供应链的完整视图
软件供应链攻击正在增加。许多工具可用于生成软件物料清单 (SBOM)、签名证明和漏洞报告,但它们仅止步于此,让用户自行弄清楚它们如何组合在一起。GUAC 提供跨整个软件供应链的聚合、可查询的视图,而不仅仅是一个 SBOM。
GUAC 适用于需要识别和解决软件供应链问题的开发人员、运维人员和安全从业人员,包括主动管理依赖项和应对漏洞。GUAC 通过软件供应链的图形视图和用于执行查询以获得可操作见解的工具,提供供应链的可观察性。
GUAC 通过 ClearlyDefined 集成得到增强
最新版本的 GUAC (v0.8.0) 现在提供对 ClearlyDefined 的支持。GUAC 将查询 ClearlyDefined 许可元数据存储库,以发现软件包的许可信息,即使 SBOM 未包含该信息。
ClearlyDefined 认证器将在 collector-subscriber 上监听任何 pkg/src 字符串,然后转换为 ClearlyDefined 坐标,然后查询 API 服务以获取 定义。用户代理将与现有的传出 GUAC 请求 GUAC/<版本> (例如 GUAC/v0.1.0) 相同。
将使用定义中的 “licensed” ➡ “declared” 字段创建一个 CertifyLegal 节点。表达式将被复制,并且找到的任何许可标识符都将导致链接的 License 名词节点(如果需要,则创建)。类型将为 “declared”。理由将为 “从 ClearlyDefined 检索”。时间将为从 API 检索信息的当前时间。
类似地,将使用 “licensed” ➡ “facets” ➡ “core” ➡ “discovered” ➡ “expressions” 字段创建一个节点。多个表达式将 “AND” 在一起。类型将为 “discovered”,其他字段相同(时间、理由、许可链接等)。
“licensed” ➡ “facets” ➡ “core” ➡ “attribution” ➡ “parties” 数组将被连接并存储在 CertifyLegal 上的 Attribution 字段中。
可选地,“described” ➡ “sourceLocation” 可用于创建 HasSourceAt GUAC 节点。
感谢社区
尽管许可不直接影响安全性,但它们是理解软件供应链的重要组成部分。我们要感谢 Parth Patel (Kusari)、Jeff Mendoza (Kusari)、Ben Cotton (Kusari) 和 Qing Tomlinson (SAP) 对在 GUAC 中实现此功能的支持。ClearlyDefined 社区期待与 GUAC 社区合作,帮助全球组织更好地实现其软件供应链的合规性和安全性。