开源V话:S1 OSPO 与开源 | x05 那层看不见的盾
【开源V话】旨在以图文并茂的方式通俗易懂地传播开源文化及相关知识,分享开源实践及洞见,成为开源文化及开源生态发展的参与者、贡献者和布道者。
欢迎来到第一季“OSPO 与开源”,共8期,本文是S1x05期。
供应链安全与合规。
现代软件 90% 的代码可能都不是你写的。
如何保证这些“拿来”的代码没毒?
SBOM(软件物料清单)就是你的“体检报告”。
OSPO 的核心职责之一,
就是建立这套自动化流水线:
扫描 -> 识别 -> 修复 -> 准入。
让开发者“无感”合规,才是最高级的合规。
S1x05 那层看不见的盾盟
(Compliance & SBOM)
在“软件吞噬世界”的今天,开源代码占到了现代应用代码库的70%-90%。传统的“人工审核”已无法应对这种规模。OSPO必须建立自动化的软件供应链安全体系。这里有两个核心概念:
SCA (软件成分分析):这是一类工具,能自动扫描代码库,识别引用的开源组件。它能告诉你:你用了什么?什么版本?有什么漏洞?是什么许可证?
SBOM (软件物料清单):可以理解为软件的“食品配料表”。随着美国行政命令(EO 14028)的发布,提供 SBOM 已成为向政府和大型企业交付软件的标配。OSPO 需要确保企业交付的每一个软件版本,都附带准确的 SBOM(通常使用 SPDX 或 CycloneDX 格式)。
OSPO 的目标是实现“左移”(Shift Left):在代码编写阶段(IDE)或提交阶段(Commit)就发现违规或许可证冲突,而不是等到发布前才去“救火”。当然,如果你的资源允许,OSPO 的目标也可以向“下移”倾斜,通过建设平台来提高效率和提升体验。
🔗参考资料与扩展阅读:
OpenSSF(Open Source Security Foundation):
提供了大量关于供应链安全的最佳实践。
https://openssf.org/technical-initiatives/software-supply-chain/
SPDX(Software Package Data Exchange):ISO 国际标准,用于描述 SBOM。
OpenChain (https://openchainproject.org/)
vivo开源实践与思考
我们通过建设SCA软件成分分析能力,在代码提交、编译构建和 ROM 发版等多阶段保障vivo软件供应链安全。截至当前,已实现客户端开源安全合规风险清零。
我们通过推进在各分发业务中集成简化版的SBOM——开源软件声明,让各业务逐步了解SBOM的同时,保障开源许可证合规,规避知识产权风险。截至当前,开源软件声明已覆盖 84.96% 的客户端业务。
随着欧盟等地区逐步要求SBOM作为产品出货必备交付件,我们已提前做好准备,全力支撑公司出海业务,保障全球业务正常运行。
与此同时,我们也在尝试推行“开源软件供应链健康度”实践,通过此实践来牵引组织的治理能力提升,从合规进化到“体检”,从而为业务更好地保驾护航。
vivo开源
本文在创作中使用 AI 工具作为辅助 本系列内容采用 CC BY-SA 4.0 许可发布
第一季 OSPO 与开源