Account 登录
Jump to section

什么是 DevSecOps?

复制 URL

DevSecOps 是“开发、安全和运营”的缩写。它是一种文化取向、自动化方法和平台设计方法,将安全性作为整个 IT 生命周期的共同责任。

我们知道,DevOps 不仅仅涉及开发和运维团队。而如果您想充分发挥出 DevOps 的敏捷性和响应力,就必须将IT 安全防护融入应用的整个生命周期中 。

为什么呢?从前,安全防护只是特定团队的责任,在开发的最后阶段才会介入。当开发周期长达数月、甚至数年时,这样做没什么问题;但是现在,这种做法现在已经行不通了。采用 DevOps 可以有效推进快速频繁的开发周期(有时全程只有数周或数天),但是过时的安全措施则可能会拖累整个流程,即使最高效的 DevOps 计划也可能会放慢速度。

图像

如今,在 DevOps 协作框架下,安全防护是整个 IT 团队的共同责任,需要贯穿至整个生命周期的每一个环节。这个理念非常重要,因此催生出了"DevSecOps"一词,强调必须为 DevOps 计划打下扎实的安全基础。

图像

DevSecOps 意味着从一开始就要考虑应用和基础架构的安全防护;同时还要让某些安全网关实现自动化,以防止 DevOps 工作流程变慢。选择合适的工具来持续集成安全防护(比如在集成开发环境(IDE)中集成安全防护功能)有助于实现这些目标。但是高效的 DevOps 安防需要的不仅是新工具。它更需要整个公司实现 DevOps 文化变革,从而尽早集成安全团队的工作。

无论您习惯叫它"DevOps"还是"DevSecOps",最好确保安全防护融入了软件的整个生命周期中。DevSecOps 就是要内置安全防护,而不是仅仅在应用和数据层面做文章。如果把安全问题留到开发流程的最后再考虑,那么企业即便是采用了 DevOps 方法,也会重回冗长开发周期的老路,而这就是大家从一开始就想要避免的情况。

DevSecOps 强调,在 DevOps 计划刚启动时就要邀请安全团队和合作伙伴来确保信息的安全性,并制定自动安全防护计划。它还强调需要帮助开发人员从代码层面确保安全性;在这个过程中,安全团队需要针对已知的威胁(比如内部威胁或潜在的恶意软件)共享可见性、提供反馈并进行智能分析。由于 DevSecOps 并非始终着眼于较为传统的应用开发模式,所以这可能还包括为开发人员提供新的安全培训。

那么,怎样才算是真正地实现了安全防护一体化?对于新手而言,优良的 DevSecOps 策略应能确定风险承受能力并进行风险/收益分析。在一个特定的应用中,需要配备多少个安全控制功能?对于不同的应用,上市速度又有多重要?由于在管道中运行手动安全检查可能会非常耗时,所以自动执行重复任务是 DevSecOps 的关键所在。

要推行 DevOps,企业需要:确保采用时间短、频率高的开发周期;采取安全措施,最大限度地缩短运维中断时间;及时应用创新技术,如容器微服务;同时,还要促使以往各自为阵的团队加强合作——这一切对所有企业来说都是艰巨的任务。上述所有措施都是以人员为根本,都需要企业内部协同合作;但是,要想在 DevSecOps 框架中实现这些人员的变革,自动化是关键所在。

图像

那么,企业应该在哪些方面实现自动化?具体又该怎么做呢?这份的书面指南也许能够为您提供答案。企业应该退后一步,以全局视角,着眼整个开发和运维环境。其中涉及:源控制存储库;容器注册表;持续集成和持续部署(CI/CD)管道;应用编程接口(API)的管理、编排和发布自动化;以及运维管理和监控。

全新的自动化技术已帮助企业应用了更敏捷的开发实践,也在促进新的安全措施方面起到了重要作用。但是,自动化并不是近年来 IT 领域发生的唯一变化。现在,对于大多数 DevOps 计划而言,容器和微服务等云原生技术也是一个非常重要的组成部分。所以,企业必须调整 DevOps 安全措施。

容器可以实现更大的规模和更灵活的基础架构,从而改变了许多组织开展业务的方式。因此,DevOps 的安全防护实践必须适应新环境并遵循容器特有的安全准则

云原生技术不适合用来落实静态安全策略和检查清单。相反,企业必须确保应用和基础架构生命周期的每个阶段都有集成其中的持续安全防护。

DevSecOps 意味着,安全防护要贯穿应用开发的整个过程。要实现集成进管道,我们既需要一种全新的思维方式,也需要合适的新工具。因此,DevOps 团队应该实现安全防护自动化,从而保护整体环境和数据,同时实现持续集成/持续交付流程——可能还要确保容器中的微服务的安全。

通过本网络培训课堂系列,您可以获取有关整个容器应用堆栈和生命周期安全性的专家视角。

环境和数据安全防护

  • 标准化和自动化环境:每项服务都应具有限制权限,从而最大限度地减少未经授权的连接和访问。
  • 集中用户身份验证和访问控制功能:由于要在多个点发起身份验证,因此严格的访问控制和集中式身份验证机制对于确保微服务安全性而言至关重要。

  • 隔离运行微服务的容器和网络:这包括传输中和静止的数据,因为获取这两类数据是攻击者的重点目标。

  • 加密应用和服务间的数据:使用具有集成安全防护的容器编排平台,可以最大限度地减少未经授权的访问。

  • 引入安全的 API 网关:安全的 API 可让授权和路由更加清晰可见。通过减少公开的 API,组织可以减小攻击面。

CI/CD 流程安全防护

  • 增加容器安全防护扫描:这应成为向注册表添加容器的其中一个步骤。

  • 在 CI 流程中自动运行安全测试:包括在构建过程中运行静态安全分析工具;以及在构建管道中拖入任何预构建容器映像时,都要进行扫描,以检查是否存在已知的安全漏洞。

  • 在验收测试过程中添加关于安全功能的自动测试:自动化输入验证测试、身份验证和授权功能。

  • 自动化安全更新,例如修补已知漏洞:通过 DevOps 管道完成此步骤。这样,在创建记录可跟踪更改的日志时,管理员便无需登录生产系统。

  • 自动化系统和服务配置管理功能:这样可以确保遵守安全策略,避免出现人为错误。审核和补救操作也应实现自动化。

继续阅读

文章

什么是 DevSecOps?

如果您想要充分发挥出 DevOps 的敏捷性和响应力,则必须在应用的整个生命周期内兼顾 IT 安全性。

文章

什么是 CI/CD?

CI/CD 可让持续自动化和持续监控贯穿于应用的整个生命周期(从集成和测试阶段,到交付和部署)。

文章

什么是 DevOps 工程师?

DevOps 工程师身怀独特的技能和专业知识,可以在组织内实现协作、创新和文化转变。  

详细了解 DevOps

产品

Red Hat Open Innovation Labs

在红帽专家的指导下参与高强度、富有针对性的驻留培训。帮助您的团队借助敏捷开发方法和开源工具,快速、高效解决当前业务难题。

Red Hat Consulting

红帽的战略顾问将从大局出发,以战略性视角审视企业发展,分析您当前面临的业务挑战,并提供全面、低成本、高效益的解决方案,帮助您轻松应对各项挑战。

相关资源

分析文章

重新思考数字化转型: 新数据检视 2020 年 文化和流程变革要务

白皮书

通过红帽 Ansible 自动化平台简化 CI/CD 流程

Illustration - mail

获取更多类似的内容

免费订阅我们的 Red Hat Shares 通讯邮件

Red Hat logo LinkedInYouTubeFacebookTwitter

产品

工具

试用购买与出售

沟通

关于红帽

我们是世界领先的企业开源解决方案供应商,提供包括 Linux、云、容器和 Kubernetes。我们致力于提供经过安全强化的解决方案,从核心数据中心到网络边缘,让企业能够更轻松地跨平台和环境运营。

订阅我们的新闻稿 Red Hat Shares

立即注册

选择语言

© 2022 Red Hat, Inc. 京ICP备09066747号