ITIL,DevOps,ITSS,ITSM,IT运维管理-ITIL先锋论坛

 找回密码
 立即注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

查看: 1256|回复: 0

实施 DevSecOps 的 10 项方法,看完这篇就够了

[复制链接]
发表于 2020-8-3 15:25:38 | 显示全部楼层 |阅读模式
本帖最后由 陈小宝 于 2020-8-3 15:28 编辑
0 x4 M9 s* ^% b0 h, E0 q$ ~
$ V  h# G# _4 ^& i" z- u+ I0 s3 L) x

$ ^! _3 X+ e+ n  a
我们知道,DevOps 涉及开发和运维团队,但是想要充分发挥出 DevOps的敏捷性,就必须将IT安全防护融入到应用的整个生命周期。

; p2 _: G8 }; T5 ^6 P$ R+ R
& F4 B+ F! F5 j
为什么呢?从前,安全防护只是特定团队的责任,通常在开发的最后阶段才会介入。当开发周期长达数月、甚至数年时,这样做没什么问题。但是现在,这种做法现在已经行不通了。采用DevOps可以有效推进快速频繁的开发周期(有时全程只有数周或数天),但是过时的安全措施则可能会拖累整个流程,即使最高效的 DevOps 计划也可能会放慢速度。
+ A* O& \. I; T" e7 Z" ~) h
/ x* q# G  V" ~. N  m2 R% j
如今,使用 DevOps 进行软件开发时,就需要采取新策略在开发中嵌入安全,以确保软件不容易受到黑客或恶意用户的各种攻击。因此, 催生出了“DevSecOps”一词 。

0 r- ^! ]5 Z" V, {
4 l: x$ j* M+ G
DevSecOps – 填补IT与安全之间的空白
粘贴上传202008031512565231..png

' R0 `" R  ~) ^& o* G4 m5 {3 K$ W6 g& f
! b/ s. G# f4 R1 ~$ _. ^- }; @; B
DevSecOps 是开发、安全和运维人员的并行活动, 意味着从一开始就要考虑应用和基础架构的安全性,同时还要让某些安全网关实现自动化,来提高 DevOps 工作流程的速度,从而最大程度地减少软件漏洞,并使安全性更接近IT业务目标,以确保顺利且安全的部署和开发过程。
6 J1 P' h5 e2 f5 H  g5 h
. E$ V: k1 B/ z9 g3 K( d
7 D) z2 Q4 U! ~! u& F. ^9 P使用适当的 DevSecOps 工具和流程,可以顺将安全性集成到 DevOps 框架中。

( Q: T6 N3 E5 l' \4 V

9 V4 O# q: _4 m
DevSecOps 方法的 6 个重要组成部分
  • 分析代码中是否有任何可能的漏洞和错误,以便可以快速修复它们。
  • 要求所有从事该软件项目的人员做出改变 – 重视安全,以提高效率。
  • 对软件全生命周期,并长期地监视。
  • 识别代码更新中出现的潜在威胁,并能够快速做出响应。
  • 分析新的代码来识别和评估新漏洞,并修复它们。
  • 对团队进行培训,使团队成员能够分析定位常见漏洞,并修复它们。
    & @* Z# ^3 ?, c( J6 D

. S- D8 ^4 v% t
实施 DevSecOps 的10种方法
粘贴上传202008031513489005..png . e, e% |; x0 p* }- M- l3 \
8 f8 h$ b9 u; H+ ?# z

, \0 U) ^6 e& e% z; z) e4 F9 [
3 X' s7 r+ s: ^, Y  ~8 ]9 e首先,需要创建一个由开发人员,管理人员,安全工程师和测试人员组成的专业人员小组,并且他们要完全了解应用程序。接下来,请按照以下步骤操作:
  • 制定详细计划(Planning):需要制定整个应用程序的详细计划,并据此计划展开行动。计划应包含功能和非功能需求,要有代码的测试标准,梳理出常见的威胁。3 M+ }" N2 ~9 G5 b8 M
  • 开发(Developing):使用成熟的实践经验进行开发,并考虑与安全措施的兼容。
  • 采用自动化构建工具(Building):自动化构建工具,是采用基于测试驱动的方法进行开发,该工具通过实施质量标准将最佳安全实践用于静态代码分析。
  • 代码测试(Testing):DevSecOps应专注于在每个代码块上运行所有类型的测试。测试应该由单元测试,API测试,数据库测试,安全测试,后端测试以及UI测试组成。
  • 解决威胁(Securing):DevSecOps 是开发人员,安全人员和运维人员的并行活动,因此要做的就是检查潜在的漏洞,看看它们是否对应用程序和数据构成了重大威胁,并及时处理修复。
  • 应用程序的部署(Deploying): 使用自动化工具可以加速应用程序的部署,部署前要检查云环境中的兼容性,并检查环境中是否有任何威胁。
  • 运维(Operating):应当定期进行维护和升级,不断检查新漏洞并定期进行应用更新,保证所使用的组件都是稳定可靠的安全版本。
  • 监视(Monitoring):部署后,实时监视应用程序及其数据至关重要,时刻检查他们的性能。如果发现任何问题,请立即修复它们。
  • 可扩展性(Scaling):通过云服务扩展基础架构不应损害应用程序的功能,性能和安全性。扩展后应用程序要能更为健壮地提供服务。
  • 适应性(Adapting):当 DevSecOps 环境发生变化,应用程序能够被修改来适应基础环境的变化。(DevOps时代)

    : P( @! p" r; t$ Q, ?
( E$ Z5 k5 F7 w4 t

% T: \+ @" A' o7 J* x5 h4 d4 n
! t2 l, L7 ]  g




上一篇:持续交付的实践与思考
下一篇:DevOps 实施中的10个“深坑”
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

参加 ITIL 4 基础和专家认证、长河ITIL实战沙盘、DevOps基础级认证、ITSS服务经理认证报名
ITIL(R) is a registered trademark of AXELOS Limited, used under permission of AXELOS Limited. The Swirl logo is a trademark of AXELOS Limited, used under permission of AXELOS Limited. All rights reserved.

QQ|ITIL ( 粤ICP备11099876号 )|appname

GMT+8, 2023-6-8 13:59 , Processed in 0.099284 second(s), 30 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表