新書推薦:
《
画艺循谱:晚明的画谱与消闲
》
售價:HK$
143.4
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:HK$
99.7
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:HK$
44.6
《
甲骨拼合六集
》
售價:HK$
333.8
《
视觉美食家:商业摄影实战与创意解析
》
售價:HK$
132.2
《
中国经济发展的新阶段:机会与选择
》
售價:HK$
99.7
《
DK月季玫瑰百科
》
售價:HK$
210.6
《
为你想要的生活
》
售價:HK$
66.1
|
內容簡介: |
本书通过描述一家大型互联网企业和一家大型传统银行的DevSecOps转型的过程,帮助读者浅显易懂并且有代入感地了解如何将DevSecOps在企业内部落地和实践。基于各类行业特点的DevSecOps实施与落地方法,是本书的主要技术要点。
|
目錄:
|
序前言第1章 DevSecOps的演进与落地思考11.1 DevOps简介41.1.1 DevOps发展简史51.1.2 DevOps理念61.2 DevSecOps简介71.2.1 从DevOps到DevSecOps71.2.2 从SDL到DevSecOps111.2.3 DevSecOps的指导原则141.2.4 DevSecOps实践171.3 互联网行业推动DevSecOps的动机与目标 211.4 金融行业推动DevSecOps的动机与目标 221.5 总结23第2章 DevSecOps的实施解决方案和体系建设242.1 DevSecOps现状调研262.1.1 DevSecOps的行业调研262.1.2 企业现状调研292.2 流程和方法论:敏捷开发与CI/CD342.2.1 敏捷开发342.2.2 持续集成、持续交付和持续部署402.3 技术:工具与自动化412.3.1 项目管理工具412.3.2 源代码管理工具422.3.3 静态代码扫描工具422.3.4 静态应用安全测试工具432.3.5 持续集成工具442.3.6 构建工具442.3.7 制品管理工具452.3.8 第三方安全扫描工具452.3.9 自动化测试工具452.3.10 动态安全测试工具462.3.11 交互式安全测试工具462.3.12 自动化配置/发布工具462.3.13 日志分析工具472.3.14 监控工具472.3.15 DevSecOps工具链482.4 文化与组织结构502.4.1 DevSecOps的文化和挑战502.4.2 DevSecOps的组织结构和角色502.5 DevSecOps框架与模型的建立522.5.1 DevSecOps的运营模型 522.5.2 DevSecOps的实现模型542.5.3 DevSecOps的成熟度模型542.6 总结56第3章 DevSecOps转型—从研发入手573.1 安全意识和能力提升603.1.1 安全意识613.1.2 安全能力613.1.3 隐私合规633.2 安全编码643.2.1 默认安全643.2.2 安全编码规范643.2.3 安全函数库和安全组件653.2.4 框架安全653.3 源代码管理和安全663.3.1 源代码安全管理673.3.2 分支策略673.3.3 代码评审743.4 持续集成753.4.1 编译构建和开发环境安全763.4.2 持续集成流水线763.4.3 安全能力在流水线上的融入783.5 代码质量和安全分析793.5.1 静态代码质量分析793.5.2 静态应用安全测试813.5.3 软件成分分析833.6 制品管理及安全853.7 总结87第4章 持续测试和安全884.1 持续测试—DevOps时代的高效测试之钥904.1.1 测试效率面临着巨大挑战914.1.2 什么是持续测试924.1.3 如何实现持续测试924.2 测试执行提效之自动化测试934.2.1 分层的自动化测试策略934.2.2 单元测试954.2.3 接口测试984.2.4 UI测试1004.2.5 其他自动化测试1014.3 测试执行提效之精准测试1014.4 测试流程提效:迭代内测试1024.4.1 持续测试带来流程上的变革要求1024.4.2 如何实践迭代内测试1034.5 持续测试下的“左移”和“右移”1044.5.1 测试左移1044.5.2 测试右移1064.5.3 “左移”“右移”不等于“去测试化”1074.6 应用安全测试左移1084.6.1 动态应用安全测试1084.6.2 交互式应用安全测试1124.7 DevSecOps影响着测试的方方面面1164.7.1 测试分类1164.7.2 质量度量1184.7.3 组织架构1204.7.4 团队文化1214.8 总结122第5章 业务与安全需求管理1235.1 业务功能需求管理1255.1.1 需求的收集与筛选1265.1.2 需求的分析1275.1.3 需求排期1305.1.4 需求描述和文档1305.1.5 需求拆分1325.1.6 需求评审1325.1.7 需求状态管理1335.1.8 需求管理工具1345.1.9 临时/紧急需求1345.2 安全需求管理1355.2.1 需求的安全分类1365.2.2 需求的安全评审1385.3 总结143第6章 进一步左移—设计与架构1446.1 为什么需要微服务架构1476.1.1 单体架构的局限性1486.1.2 微服务架构的优势1496.1.3 微服务与DevOps的关系1496.1.4 微服务化的实施路线1516.2 微服务拆分与设计1516.2.1 微服务拆分原则1516.2.2 微服务设计原则1526.2.3 微服务拆分方法1526.3 微服务开发与组合:微服务开发框架1546.3.1 Spring Cloud微服务架构1546.3.2 Service Mesh微服务架构1576.4 微服务改造:单体系统重构1606.4.1 改造策略1606.4.2 微服务改造的关键要素1616.4.3 微服务改造的实施步骤1616.5 安全设计与架构安全1626.5.1 安全风险评估体系的建立1626.5.2 项目的分类定义1646.6 快速检查表的使用1666.7 完整风险评估—威胁建模1696.7.1 识别资产1706.7.2 创建架构设计概览1716.7.3 分析应用系统1716.7.4 识别威胁1726.7.5 记录威胁1756.7.6
|
內容試閱:
|
为什么要写这本书12年前,DevOps(研发运维一体化)作为精益和敏捷之后的另一个全新的方法论被提出,并且走进了软件开发的世界。作为DevOps的核心理念,持续交付帮助企业通过自动化和更好的团队协作实现了快速交付。之后出现的微服务让DevOps摆脱了单一架构模式下各个模块的依赖关系,从而使得交付速度更上一层楼。而云原生的出现不仅降低了基础设施的成本,也使得系统的运维和运营更加稳定。经过过去10多年的发展,企业的DevOps已经逐渐成熟。大家突然发现,除了速度和质量外,安全对于企业来说也同等重要。而且传统应用安全保护模式已经不适应DevOps模式下的快速交付了,甚至逐渐成为快速交付继续进阶的瓶颈。为了解决这个问题,2012年就被提出来的DevSecOps于2017年开始在世界范围内逐渐流行起来。然而,DevSecOps横跨研发效能和安全两个领域,过去这种复合型人才几乎不存在。从事研发效能的专家将安全引入开发流程的各个阶段,以及从事应用安全的专家将安全在开发团队进行落地,都需要额外的技能和大胆的尝试。由于实践DevSecOps的挑战巨大和难度极高,虽然经历了三四年的发展,不仅国外DevSecOps相关的书籍甚少,国内至今仍无一本全面并且系统地介绍DevSecOps落地实践的书籍。自从2018年在汇丰银行内部开始实践DevSecOps,并于2019年年初作为演讲嘉宾参加日内瓦DevOpsDays以来,截至2020年,我已经在国内外20多场技术峰会、论坛以及社区分享过自己在国际大型银行和国内大型互联网公司实践DevSecOps的经验。在有了一定的积累之后,为了让更多正迷茫于如何落地DevSecOps的企业和对DevSecOps感兴趣的个人有相关的经验可以参考,从2020年年末开始,我联合腾讯、百度等多家互联网公司和汇丰银行等金融行业的研发效能和应用安全领域的DevSecOps实践者,一起计划编写国内本DevSecOps相关书籍,希望让更多人受益,尤其是对DevSecOps这种全新的理念和方法论还处于迷茫状态的人们。本书特色本书采取了与大部分技术书不同的编写方式。书中杜撰了一个简单的故事,讲述了两位发小,作为研发效能和安全专家在比较有代表性的互联网公司(灰石网络)和金融企业(德富银行)落地DevSecOps的经历。通过故事里实践DevSecOps过程中抛出的问题和痛点,引出各章的相关内容和解决方案,让读者更有实际工作场景的代入感。本书的作者都是拥有DevSecOps相关工具开发或者落地实践经验的资深专家和高级管理者,却又来自不同的领域(DevOps和应用安全)和不同的行业(互联网和金融)。由于DevSecOps本身是跨越软件开发、研发效能和应用安全等不同领域的全新方法论,并且在不同行业的落地目标和方式也有所不同,因此本书的作者群体正好可以从不同角度对DevSecOps的实践和落地进行全方位覆盖。其目标是不仅使来自不同行业的开发和DevOps背景的读者了解DevSecOps相关安全理念和实践,也使来自不同行业信息安全背景的读者了解如何进行安全前置,终将安全意识和能力落地开发团队。读者对象研发效能工程师研发效能架构师研发效能管理人员敏捷和研发效能教练应用安全工程师应用安全架构师应用安全管理人员开发、测试和运维人员对研发效能和应用安全感兴趣的其他人员如何阅读本书本书共分为9章。其中,第3~7章为本书的重点,如果你没有充足的时间完成全书的阅读,则可以选择性地进行重点章节的阅读。第1章由马松松、周纪海和杨伟强编写,简单介绍了DevOps的理念和发展史,以及DevOps到DevSecOps的演进,接着详细介绍了实践DevSecOps的理论基础和指导原则,后分析了互联网和金融行业推动DevSecOps的动机和目标。第2章由周纪海和周一帆编写,对DevSecOps行业和企业现状进行了调研和分析。关于DevSecOps解决方案,本章从流程和方法论、技术、文化和组织,以及DevSecOps体系建设层面进行了详细的介绍和讨论。第3章由马松松和周纪海编写,详细介绍了在软件开发阶段DevSecOps通过安全左移带来的开发人员安全意识和能力提升、安全编码、代码质量,以及如何通过持续集成流水线实现安全扫描自动化等内容。第4章由程胜聪和周纪海编写,详细介绍和讨论了持续测试对于提高测试效能、实现自动化测试的重要性,以及安全左移和右移后对测试阶段的影响。另外,本章对融入测试阶段的动态安全测试和交互式安全测试也进行了详细的介绍。第5章由周纪海和周一帆编写,详细介绍了一个完整的业务需求管理涵盖的各个方面:需求收集和过滤、需求分析、需求排期、需求描述、需求拆分和需求评审等。另外,本章也详细介绍了如何基于变更分类进行需求安全管理和评审的融入。第6章由周一帆和陈亚平编写,详细介绍了DevOps快速交付模式下微服务架构的拆分和设计原则、微服务改造和开发框架。接着详细介绍了架构安全评估体系下的不同实现模式(快速检查表、威胁建模以及合规检查等),其中尤其重点介绍了完整风险评估——威胁建模。第7章由周一帆、周纪海和杨伟强编写,详细介绍了运维和线上运营阶段DevSecOps包含的各方面内容:
|
|