什么是唯一可信源

信通院联合腾讯,阿里,JFrog 等企业等于2019 年提出,并纳入信通院 DevOps 成熟度标准中。

  • 唯一性:唯一可信源是企业内部所有通过审批的软件唯一存放的仓库,包括 war 包,Docker 镜像,zip 包等,以及第三方开源组件,为生产环境提供唯一可信的制品。
  • 可信任:唯一可信源里的制品均有元数据描述制品的生命周期和质量信息。
  • 安全性:制品均经过漏洞扫描工具,保障安全风险。

    为什么需要唯一可信源

    很多企业仍然使用 FTP 进行 war 包,zip 等交付包的管理,这样会导致交付包缺失信息,版本管理的配置变更在哪,版本是否通过了代码扫描,漏洞扫描,自动化测试和测试团队的 Approval?这些信息的缺失会导致沟通成本急剧上升,造成人力和时间的大量浪费。随意获取有漏洞的依赖库,或者使用违反公司 License策略的依赖包,也会给公司带来直接损失。如果没有唯一可信源,各个团队,特别是分布在多个地区的开发团队将花费大量的时间在配置变更,版本传递和部署上。

    DevSecOps 经典交付模型

    Jfrog-唯一可信源 - 图1
    上图:基于二进制包持续交付模型
    在基于二进制包持续交付模型概念中,软件交付流程中本质上流转的是制品文件,最终交付到生产环境或用户侧,DevSecOps 的价值在于不断将其流程自动化,并持续加入自动化测试来提高交付质量

    DevSecOps Pipeline经典架构

    Jfrog-唯一可信源 - 图2
    上图为经典DevSecOps 流程图

    建设唯一可信源的收益

    Jfrog-唯一可信源 - 图3
  1. 助力企业数字化转型,为分布式的团队构建统一的唯一可信源
  2. 达到信通院 DevOps 成熟度制品库模块 4 级以上,使用元数据功能,建立质量门禁,在投产前自动校验质量信息,实现可信的制品发布流程。
  3. 提升可信发布速度 25%-40%
  4. 降低开源组件漏洞风险 60%-80%

    如何建设企业级唯一可信源

    唯一可信源是企业落地 DevSecOps 的重要方法论之一,落地重点步骤树下,供参考:
类型 落地内容
方案制定 制定统一制品库架构方案以及二进制交付模型,助力企业组织级基础设施建设
基础工具 搭建DevOps基础工具链:
Git、Jenkins、Artifactory 和Xray K8s 等DevOps 产品组件
现状分析 1.分析现有持续交付流程瓶颈以及痛点
2.整理企业现有组件和其他安全漏洞情况,为落地DevSecOps 做基础分析
制度规范 制定统一制品管理规范,持续交付规范,安全管控规范,加速企业数字化转型
持续交付 试点1-3个项目进行DevOps工具集成,提高自动化能力,整理落地方案逐步推广
Ex:构建工具,单元测试, 静态代码扫描, 自动化接口、自动化部署等工具
持续安全 流水线中集成静态漏洞扫描,动态安全检查,运行时安全管控,持续评估提升软件交付安全能力
质量关卡 收集DevOps相关结果作为元数据,绑定于交付件,持续建设企业内建质量关卡,提高交付质量
培训赋能 企业 DevOps文化建设,团队内部培训赋能,持续加速能力提升

统一制品库建设经典架构

Jfrog-唯一可信源 - 图4
统一制品库作为持续交付中基础组件中重要工具链,可以有效安全的串联DevSecOps 软件交付生命周期中各个环节,提高沟通效率,加速软件交付。