简介

有准备的合规原则

当然,真实世界不会像我们对 Acme 公司的简要描述这般这么简单。从汽车、家用电器再到联网或娱乐设备,每件现代产品都可能包含几十台电脑,而每台电脑又可能包含完整的嵌入式软件堆栈、混合 Copyleft FOSS、其他 FOSS 和私有程序。但以下几项基本原则在整个复杂领域中仍然适用:

1.从下游用户行使许可证所授予的权利角度衡量您的合规情况。如果您在产品中引入了 Copyleft 软件,用户是否收到通知?用户是否可以轻松获取完整对应源码和适用的安装信息,而且最好是可自动获取?检查您交付内容的工具比仅可检查生成内容的工具更有价值。

2.始终向软件和嵌入软件组件的供应商行使自己的权利,要求他们提供全部 Copyleft 作品的完整对应源码,最好通过自动化流程直接引入整个软件管理系统。在可能情况下,拒绝接收包含 Copyleft 软件的不合规组件:未按要求提供完整对应源码或者未在自动提供源码流程中在产品中随附“堆栈码”的组件。如果您的软件依赖于上游提供商,则不能仅因您所分发的软件由他人打包就忽视 GPL 合规要求。

3.重点关注您已知正在使用的 Copyleft 软件。以往,因某些程序员不小心将一小段 Copyleft 代码引入私有软件产品带来的风险较为少见,且较容易化解。对相对较高风险的有效管理意味着您应确保可提供两年前发布产品中的 Coreboot Bootloader、Linux 内核、Busybox 或 GNU tar 的完整对应源码及生成文件等。

4.不要盲目依赖代码扫描软件。用此类软件改进软件管理已为时过晚,而且无法捕捉到产品交付或售后提供源码问题。费用高昂的扫描软件只能处理不太重要的工作,根本无法处理更为重要的部分。性价比高的扫描软件倒是可用作自我管理和验证流程的补充,但不能作为主要的风险管理工具。