加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 安全 > 正文

为什么GitOps对DevSecOps非常关键

发布时间:2022-06-07 16:04:15 所属栏目:安全 来源:互联网
导读:DevOps在自动化、可追溯性方面的优势已得到广泛认可,此外它还能助力从前孤立的团队和利益相关者展开协作。但是,随着 DevOps 团队越来越多地承担将运营转移到容器化的Kubernetes 环境的任务,久经考验的 DevOps 实践也可能棋差一着。如今,安全和风险问题正
  DevOps在自动化、可追溯性方面的优势已得到广泛认可,此外它还能助力从前孤立的团队和利益相关者展开协作。但是,随着 DevOps 团队越来越多地承担将运营转移到容器化的Kubernetes 环境的任务,久经考验的 DevOps 实践也可能棋差一着。如今,安全和风险问题正以不同的方式表现出来。
 
  
 
  GitOps 可以定义为:
 
  Kubernetes 和其他云原生技术的运营模型,它提供一组最佳实践,统一容器化集群和应用程序的 Git 部署、管理和监控。
 
  它是实现开发人员管理应用程序经验的途径;其中,端到端 CI/CD 管道和 Git 工作流应用于运营和开发。
 
  
  
  作为一种帮助减少漂移发生的解决方案,GitOps 监控工具可以在对集群作出更改而未先在 Git 中应用时发送警报。当这种情况发生时,由于审计跟踪,通过运行时环境中处于部署状态的控制器,Git 上的应用程序代码可以替换对集群所做的错误更改。
 
  相反,如果不变性没有实现,就会发生漂移。这可能在网络攻击的情况下发生,或 DevOps 团队成员无意更改了集群配置,使其与 Git 上的配置不同。出现这种情况时,使用适当的 GitOps 工具能够将不一致标记出来,从而代表 GitOps 流程提供的典型 DevSecOps。
 
  适当的工具可以自动执行持续监控的过程,以确保 Git 存储库中配置的所需状态与 Kubernetes 集群中的实际状态相匹配。 一旦它们在存储库的声明状态中正确提交,就会用于协调和完成部署。
 
  
  
  借助审计跟踪的可用性,开发人员还可以轻松回滚导致问题的应用程序的更改。 当集群遭到破坏或配置错误时,这尤其有用。 在这种情况下,审计跟踪无需从头开始重建集群,而是在存储库中包含所需的状态, 然后部署具有审计跟踪所需状态的集群配置和应用程序,并自动重建过程。
 
  很少有“万能钥匙”
  
  开发人员通常依靠 Jenkins(一种自动化服务器)来构建、测试和支持用于 Kubernetes 环境生产管道的 CI/CD。如果没有 GitOps,开发人员在直接部署代码时可能会直接访问 Kubernetes 集群。换句话说,无论他们属于组织内部还是作为远程工作的承包商,这对开发人员来说可谓有了一把直接访问生产环境的“万能钥匙”,但这不是一个理想的安全方案。
 
  
  
  GitOps 的 DevSecOps 功能是阻止 CD 攻击媒介场景的一种方式,从而保护这把"万能钥匙"。当GitOps运算符(如开源 Flux,下面将对此进行详细介绍)在 Kubernetes 内部运行时,可以访问集群,访问控制仍保留在 Kubernetes 安全框架中。用户访问权限是通过向不同团队和团队成员的命名空间分配权限来确定的。
 
  美国国防部(DoD)提供了一个有效利用DevSecOps和GitOps 的例子。最近,美国空军首席软件官尼古拉斯·查兰(Nicolas Chaillan)讲述了DevSecOps和GitOps如何与Flux一起在支持整个美国空军保安部队的软件开发中发挥了关键作用。
 
  查兰表示,“安全和保障是不可让步的问题,但我们也希望开发人员能通过自助服务提高生产力并加快速度。”
 
  美国国防部表示,GitOps是“在整个国防部成功构建和推出‘平台一号’(Platform One)的关键”。平台一号是“一个经过批准,完全与云原生计算基金会(CNCF)的Kubernetes发行版兼容,同时还有基础设施即代码的剧本以及强化容器的集合",具有内置的安全管道。
  

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读