开源治理体系

开源软件治理目标

  1. 过程透明
    • 目标:产品对开源软件的使用、修改过程有全面的记录,并通过中心仓透明管理
    • 价值:产品所使有开源软件在公司层面透明可视,作为所有管理动作的基础
  2. 优选引入
    • 目标:持续引入优质开源软件
    • 分目标:引入开源软件数据对标社区,满足公司质量要求
      • 价值:产品使用的开源软件数据来自社区,能够支撑产品履行开源义务、感知和修复开源漏洞
    • 分目标:禁止引入衰退期软件,产品软件版本中同一开源软件版本原则上归一
      • 价值:管控老版本使用,确保开源社区有充足的维护支持。管控产品软件中对同一软件的版本数量,降低漏洞跟踪与修复难度
    • 分目标:在同等条件下,推荐产品使用质量更优的开源软件
      • 价值:推动产品使用高质量开源软件,支撑产品竞争力与质量构建

开源软件治理目标

  1. 来源可信
    • 目标:产品使用的所有开源软件来源可追溯,通过恶意软件扫描、哈希值/签名校验,告警清零
    • 分目标:产品使用的所有开源软件都可追溯至对应社区
      • 价值:支撑产品在客户界面澄清产品软件成分来源,自证清白,并支持漏洞追溯跟踪
    • 分目标:产品使用的所有开源软件都通过恶意软件扫描,告警清零
      • 价值:恶意软件防护(防投毒),防止产品因恶意软件被攻击
    • 分目标:中心仓中所有开源软件都通过哈希值和数字签名校验,告警清零
      • 价值:产品使用开源软件实体存储源防篡改,防止公司内软件实体源被植入恶意代码

开源软件治理目标

  1. 合法合规
    • 目标:产品使用开源及第三方软件过程遵从国家/地区法律,遵从开源License
    • 分目标:上报合规,遵从国家漏洞管理法律法规,发现的漏洞先上报至国家工业和信息化部网络安全威胁和漏洞信息共享平台
      • 价值:防止因触犯国家法律导致的法务风险
    • 分目标:产品按照集成使用的开源软件license规定,履行相应的义务,包括使用声明义务与代码开源义务。
      • 价值:防止产品因违反开源License遭受开源维权诉讼
  2. 漏洞感知与修复
    • 目标:产品生命周期内,开源漏洞小时级感知,分钟级定位,按SLO完成修复
    • 价值:支撑产品生命周期内安全漏洞及时修复,满足与客户界面的SLO要求

开源治理体系的演进过程

  • 第一阶段
    • 通过开发行为,交付软件资产
  • 第二阶段
    • 通过开发行为,交付软件资产,同时交付开发工具
  • 第三阶段
    • 通过开发行为,交付软件资产,同时交付开发工具
    • 附加管理行为
      • 区分内部资产外部资产;区分开发工具管理工具,制定规则、规范、流程
  • 第四阶段
    • 通过开发行为,交付软件资产,同时交付开发工具
    • 附加管理行为
      • 区分内部资产外部资产;区分开发工具管理工具,制定规则、规范、流程
    • 变革行为运营行为
      • 针对资产,建立元数据;开发运营工具工具升级;规则、规范、流程升级

开源治理体系的整体架构

  • 规范体系
    • 术语库、管理规范、流程文档、工程规范、操作指导、指标字典
  • 工程体系
    • DevSecOps、数据服务层、业务管控层
  • 运营体系
    • 制定公司级度量评估机制,提供公司级运营评估服务