Page 57 - 《软件学报》2021年第10期
P. 57

戴启铭  等:DevSecOps:DevOps 下实现持续安全的实践探索                                            3029


                 工作流状态和性能指标,安全人员也能够确切地知道任何他们需要的信息                          [73] .
                       密钥管理
                    在企业中进行诸如令牌、密钥、证书、密码等敏感信息管理和保护                         [60] ,是保障信息安全、防止企业安全威
                 胁的有效手段之一.因为 DevOps 的敏捷性要求,很多敏感信息会对团队中的所有成员可见,这就不可避免地提
                 高了敏感信息泄露、面临内部攻击等风险.Microsoft               [68] 、CloudBees [74] 、IBM [75] 等公司均将密钥管理纳入
                 DevSecOps 安全实践编排中的重要一环,以保障敏感信息的安全性.但对敏感信息的管理和保护并非易事:如果
                 管理过于严格,会增加项目实施的复杂度,进而拖慢项目的进展;如果管理过于宽松,则可能会增加相应的安全
                 风险.为了对敏感信息进行必要的管理,DevSecOps可以借助集中化的敏感信息管理工具,如 Vault 等工具来对这
                 些信息进行必要的管理和权限控制,让具有不同权限的账户对不同的敏感信息有不同程度的可见性                                   [73] .

                 4    DevSecOps 的裨益与挑战
                    DevSecOps 的应用会为企业带来多方面的影响,我们基于经验对整理得到的裨益和挑战进行了归纳总结,
                 如图 9 所示.具体阐述如下.



















                                          Fig.9    Map of DevSecOps benefit and challenge
                                              图 9   DevSecOps 的裨益与挑战导图
                 4.1   DevSecOps裨益
                    企业落地 DevSecOps 安全实践可以为企业带来多方面的好处.
                       首先,应用 DevSecOps 可以提高企业的安全开发效率,让他们有更多的时间和预算来实现安全生产的
                        目标 [21] .在 DevSecOps 中,安全性被看作是 DevOps 过程的一个组成部分,增强了整个软件交付流水线
                        的安全自动化,确保了软件发布的质量.同时,在这样的流水线中,安全漏洞也被视作软件缺陷,开发人
                        员和测试人员都可以在早期介入安全漏洞发现和消除的过程,这种消除时机的提前可以为企业节省
                        资金和时间成本      [76] ;
                                                                              [7]
                       其次,DevSecOps 将安全概念融入到 DevOps 中,它提倡一种安全文化 ,成功地在开发人员、运维人员
                        和安全人员之间架起了沟通的桥梁             [61] ,以消除不同团队之间的交流隔阂,促使达成团队之间更多、更好
                        的合作  [77] .在这样的文化氛围中,更有助于提升不同团队成员的安全意识和安全能力,让他们能够主动
                        地进行安全防范和安全控制,而不仅仅是被动地进行漏洞的修复                      [21] ;
                       第三,DevSecOps的应用可以提升软件组织的安全成熟度以及它们所开发的软件质量.DevSecOps具有
                        快速响应安全需求变化的能力.它可以让开发人员专注于编写高质量的安全代码,使得团队可以发布
                        更安全的应用程序.同时,DevSecOps 也支持更多类型的自动化构建、自动化安全测试和自动化安全监
                        控 [78], 这些自动化的方法让软件开发的整个流程更加安全、高效;
                       此外,应用 DevSecOps 还有其他一些方面的好处,譬如使软件组织的业务更活跃等.在 DevSecOps 所营
   52   53   54   55   56   57   58   59   60   61   62