- 由 虚拟的现实创建于12月 26, 2024 需要 1 分钟阅读时间
前言
这两天你从国内的IP访问GITLAB,可以看到官网建议用户将自己的代码库搬迁到国内独立的运营商-极狐。而通过VPN访问则是正常的。未来GitLab将不再为大中国区除了台湾以外的用户提供服务了。
目前还不太清楚是因为大陆的安全管控政策还是美国进出口管制EAR导致了这个事件的产生。不过这回的限制包含了港澳,不包括台湾,说明收到美国政府EAR影响的可能性要大得多。
GitLab虽然总部在美国加州,但是这是一家全球性的公司,员工来自全球65个国家,都采用远程上班的模式。因此GitLab和中国脱钩和前几年Teradata退出中国是完全不同的,与经济利益的关系不算太大,更重要的是是地缘政治和中美科技战因素。
Oracle 的许可协议
几年前随着美国频频动用类似EAR这样的进出口管制措施对中国施压,甚至采用长臂管辖的方式,以超越正常EAR的手段对中国进行限制。似乎20年前解散的巴统又回来了,当时就有企业开展了相关分析。当时我们认为高科技商用软硬件企业断链的可能性较大,软硬件供应链安全重点要考虑这些企业的产品。
而对于开源软件生态,开源软件托管平台大多数是注册在美国的企业在运营,存在较大的风险,而开源软件本身的风险要小得多,因为开源软件的开源协议会很大程度上保障其开放性不受影响。针对开源托管平台,当时我们建议加快国内开源社区建设的同时要加快国外开源平台镜像企业的建设。极狐就是这样的一种平台。
2020年的时候,就有一个企业的IT部门领导问我,如果我们企业上了美国商务部的黑名单,那么我们已经购买的Oracle数据库许可证会受到影响吗?
我们以Oracle的许可协议来看看美国商用数据库的许可协议。Oracle数据库的许可协议分为OTN许可协议、OMA许可协议、OLSA许可协议等多种。不同协议的适用范围都做了严格的限定,超出限定范围的适用被视为盗版。
其中OTN协议适用于研究与科研环境,我们略过不谈。
ORACLE 主协议OMA
重点来看看ORACLE 主协议OMA。Oracle主协议定义了Oracle公司与客户之间关于使用Oracle产品的一系列通用性协议,适用于所有的Oracle产品类型。
Oracle主协议并不涉及特别具体的协议款项,但是是所有使用Oracle产品所必须遵循的双方约定,定义了用户与Oracle公司的责权利。Oracle软件的许可包含在附录-P中。
其中规定的权利:主协议中规定采购者对该产品拥有永久性的有限权利,但是不得转让。
这个条款排除了从第三方转让购买许可证的可能性,不过也排除了Oracle公司因为美国EAR管制而剥夺你已经购买的Oracle许可证,这个条款否定了Oracle有权利随时停止你已购买的Oracle许可证的使用权的网络传闻,不过也否定了今后国内存量Oracle许可证专卖的“聪明想法”。
另外Oracle主协议也明确了Oracle产品适用于美国出口法律和法规,也就是Oracle产品出口必须遵循EAR。
Oracle OLSA协议
Oracle OLSA协议是Oracle的许可与服务协议专注于Oracle软件程序与服务。
Oracle OLSA完全遵循Oracle Global Trade Compliance(Orale全球贸易合规性要求),从 OLSA中可以看出,Oracle GTC要求Oracle许可证必须遵循United States Export Administration Regulations (EAR)的要求。不采购Oracle服务,仅仅限制了用户享用Oracle服务的资格,并不对所采购的Oracle数据库的终生拥有权产生影响。
但是Oracle只对购买了服务的客户提供补丁更新服务,对于没有购买服务的用户,是不能下载并安装补丁的。由于数据库产品遇到BUG的可能性极高,只安装数据库软件,不打补丁,在关键业务系统中是很难做到的。所以,不继续购买Oracle服务而遵守法律条款正常使用Oracle数据库存在较大的难度。
虽然说目前大多数企业并没有购买Oracle的标准服务,通过借用MOS账号下载补丁,也没觉得什么不方便。不过从严格遵守知识产权相关法规来说,还是存在风险的。特别是对于那些海外业务占据很大比例的企业来说,严格遵守相关国际法十分重要。
开源协议
接下来我们来看看开源数据库,借用一张网上的图来说明目前最常见的开源许可协议的特点,详细内容看图就可以了,我不做过多解释了。
从对数据库使用的主要开源协议分析,这些协议都不会受到美国政府进出口管控政策的影响。不过大多数开源数据库的支撑企业都注册在美国,可能会受到美国政府政策的影响,一些被独立公司完全控制的开源项目,很可能会修改开源协议。
这些年修改开源协议的数据库产品已经出现过好几个了。
以GPL开源许可协议确保使用者可以完全自由的使用该软件而没有版权限制,但是如果你需要修改开源代码,或者利用开源代码开发自己的产品,则你开发的的代码也必须开源,否则就违反了GPL的版权限制。
你可以利用GPL开源协议的开源产品发布收费的商用版本,但是前提是你对开源代码的任何修改,必须继续开源。许可协议中没有美国法律约束的条款。因此采用GPL授权的软件,在软件许可上不会受到美国政府政策改变的影响。
目前的国产数据库大部分基于MySQL和Postgresql两种开源数据库,而Postgresql数据库的许可协议是BSD开源协议。
BSD开源协议(original BSD license、FreeBSD license、Original BSD license)是一个给于使用者很大自由的协议,BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,并保持商用代码闭源,是对商业集成很友好的协议。
发布基于BSD的商用产品只需要满足三个条件:
- 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
- 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
- 不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。
目前存在风险最大的开源协议是SSPL软件协议,严格上说,SSPL不是一种被开源组织OSI所认可的开源软件协议,因为SSPL限制了服务商使用该软件。
比如在某云上运营某个SSPL协议的数据库产品,则必须获得SSPL协议拥有者的商业授权。目前来看,MongoDB、Elastic Search使用了SSPL协议。要说明的一点事SSPL协议虽然限制了云服务商向客户提供的云平台上使用相关软件,但是对于个人或者企业自己下载使用并无限制。
因此对MongoDB能否安全使用,其实问题没有我们想象的那么严重。只不过MongoDB公司可以把自己的软件协议从开源协议改为商业味道浓厚的SSPL,那么再改一次也不是不可能的,在一些关键领域有所防范也是必要的。
国内数据库厂商大量使用开源代码,这一点我们应该是鼓励的,不过从软硬件供应链安全方面,使用开源代码的企业一定要遵守开源协议,而不能为所欲为。
结论
从大趋势上看,国产数据库厂商和产品出海是必然的事情,目前已经有一些数据库和数据库周边生态厂商、ISV已经开始出海尝试。那么尊重国际法,尊重知识产权就成为一个必须要认真面对的事情。
- 无标签
添加评论