请选择 进入手机版 | 继续访问电脑版

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

 找回密码
 立即注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

查看: 807|回复: 0

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

[复制链接]
发表于 2020-8-3 15:25:38 | 显示全部楼层 |阅读模式
本帖最后由 陈小宝 于 2020-8-3 15:28 编辑 , U9 H- i, Y/ L) U4 L) i3 i# l

4 {. T0 A; [+ m3 ^' {
+ s4 [4 A: S: ^1 o. Q
我们知道,DevOps 涉及开发和运维团队,但是想要充分发挥出 DevOps的敏捷性,就必须将IT安全防护融入到应用的整个生命周期。

. s# D. @  s; u; F$ \$ C' S$ G
6 S% s& F# ]: j' w5 |
为什么呢?从前,安全防护只是特定团队的责任,通常在开发的最后阶段才会介入。当开发周期长达数月、甚至数年时,这样做没什么问题。但是现在,这种做法现在已经行不通了。采用DevOps可以有效推进快速频繁的开发周期(有时全程只有数周或数天),但是过时的安全措施则可能会拖累整个流程,即使最高效的 DevOps 计划也可能会放慢速度。
* z1 _) P+ p: O
! L- |2 h" z! l! f2 r, m) G6 o# Q: f
如今,使用 DevOps 进行软件开发时,就需要采取新策略在开发中嵌入安全,以确保软件不容易受到黑客或恶意用户的各种攻击。因此, 催生出了“DevSecOps”一词 。

4 G: O, U( y4 s6 J. _

) ~) V3 g! {; e4 O% F$ w0 G
DevSecOps – 填补IT与安全之间的空白
粘贴上传202008031512565231..png
* h0 J; ?+ T8 {. s& @
/ d3 G. L3 r) G: L6 n3 ~
$ S2 p9 V- u! p3 t# O0 @
DevSecOps 是开发、安全和运维人员的并行活动, 意味着从一开始就要考虑应用和基础架构的安全性,同时还要让某些安全网关实现自动化,来提高 DevOps 工作流程的速度,从而最大程度地减少软件漏洞,并使安全性更接近IT业务目标,以确保顺利且安全的部署和开发过程。* P1 _8 T, A; Q3 V7 p: k. |7 c

8 Y0 z' [; A$ K8 `2 q
  @" y* Y5 F$ |+ Y: \使用适当的 DevSecOps 工具和流程,可以顺将安全性集成到 DevOps 框架中。

7 Y$ y+ `2 F" Q+ Q% B3 `" ~* x
* R5 m- q/ g" {. S! ~* A
DevSecOps 方法的 6 个重要组成部分
  • 分析代码中是否有任何可能的漏洞和错误,以便可以快速修复它们。
  • 要求所有从事该软件项目的人员做出改变 – 重视安全,以提高效率。
  • 对软件全生命周期,并长期地监视。
  • 识别代码更新中出现的潜在威胁,并能够快速做出响应。
  • 分析新的代码来识别和评估新漏洞,并修复它们。
  • 对团队进行培训,使团队成员能够分析定位常见漏洞,并修复它们。

    4 O+ l$ N& L# ?; d* V0 x& y1 A" X
4 x, s; E# w$ K8 h
实施 DevSecOps 的10种方法
粘贴上传202008031513489005..png 2 ?0 }' D" P8 J
# I0 I( Z% b* u( t9 x) _% Y

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

- P$ o7 a' h; m6 p2 W; @9 k0 m6 b' \




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

本版积分规则

参加 ITIL 4 基础和中级专家认证、v3专家升级、DevOps专家认证、ITSS服务经理认证报名
本站关键字: ITIL| ITSM| ISO20000| ITIL培训| ITIL认证| ITIL考试| ITSS| ITSS培训| ITSS认证| IT运维管理| DevOps| DevOps培训| DevOps认证| itop| itil4| sre| 开源ITSM软件

QQ|ITIL先锋论坛 ( 粤ICP备11099876号 )|appname

Baidu

GMT+8, 2021-8-6 08:53 , Processed in 0.104188 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

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