首页>参考读物>计算机科学与技术>安全

安全模式最佳实践
作者 : [美]爱德华多 B. 费尔南德斯(Eduardo B. Fernandez) 著
译者 : 董国伟 张普含 宋晓龙 刘晓舟 邵帅 王欣 辛伟 译
出版日期 : 2015-05-27
ISBN : 978-7-111-50107-7
定价 : 99.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 472
开本 : 16
原书名 : Security Patterns in Practice: Designing Secure Architectures Using Software Patterns
原出版社: John Wiley & Sons(UK)
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书介绍安全技术系统性的构建方法,强调安全防护是软件生命周期内不可分割的一部分,与稳定性和其他衡量质量的因素同样重要。应该把程序和运行平台统一设计,平台和程序的类型要匹配。所有安全性和稳定性的约束要定义在应用程序级别,并传递到低层设计架构中。提出了安全模式的相关知识与最佳实践,对那些想要理解如何构建可靠系统的软件工程师来说,本书可以提供最新的具体指导。

图书特色

本书由世界顶级安全专家撰写,全面总结软件开发领域的各类安全模式,涉及软件生命周期中的各个阶段,从概念到设计,再到实现和逆向工程,提供了内容丰富的安全模式列表,包含详细的实现建议和UML图。
本书分为三部分:第一部分(第1~3章)描述使用安全模式的动机、经验,以及本书所面向的对象,并且展示了作者的安全开发方法论;第二部分(第4~15章)详细介绍各种常用的安全模式,包括计算机系统不同体系结构层次的模式,如身份管理模式、身份认证模式、访问控制模式、安全进程管理模式、安全执行模式和文件管理模式、安全操作系统体系结构和管理模式、网络安全模式、Web服务安全模式、Web服务密码学模式、安全中间件模式、误用模式、云计算架构模式;第三部分(第16~17章)展示的是一些模式应用的示例、模式表,并且指出了今后可能的研究方向。

世界顶级安全专家亲笔撰写,从软件架构视角,全面总结软件开发领域的各类安全模式,覆盖现代安全问题,包含大量真实案例
从概念到设计,再到实现和逆向工程,详细讲解安全模式在开发安全软件过程中的应用,提供详细的实现建议和UML图


随着信息技术的飞速发展,互联网日益成为人们生活中不可缺少的一部分,社交网络、微博、移动互联网、云计算、物联网等各种新技术、新应用层出不穷,我们所面临的安全问题也日益凸显。虽然每年在系统安全方面投入巨大,但全球网站和数据库遭受攻击的数量和范围依然在持续不断地增长。
显然,计算机开发早期所使用的防火墙、密码等传统方法已无法有效应对现在的网络攻击,我们需要一种更加系统的方法来保证软件安全。这种系统的方法是一种整体的、基于实例的方法,以最坏的实践和针对全系列现代安全威胁的可证明的解决方案为基础。本书作者是全球安全领域顶尖级专家,为读者提供这样一种系统的安全开发方法。他通过大量真实案例,系统讲解了如何使用安全模式将安全融入软件生命周期中的各个阶段——从概念到设计,再到实现和逆向工程。
本书还提供了内容丰富的安全模式列表,包含详细的实现建议和UML描述,全面覆盖现代安全问题,包括:
身份管理
访问控制
网络安全和Web服务安全
云计算安全
身份验证
过程管理
Web服务加密
构建安全架构
本书涵盖了优良开发或逆向最安全的应用所需的各项内容,访问www.wiley.com/go/securitypatterns 可以获得更多的安全模式。

作者简介



爱德华多 B. 费尔南德斯(Eduardo B. Fernandez)美国佛罗里达大西洋大学计算机科学与工程系教授。他在授权访问模型、面向对象分析与设计、安全模式等方面发表了大量的论文,并多次在全球性的学术和产业会议上发表演讲,目前主要关注安全模式、网络服务、云计算安全与容错等技术。他在普渡大学获得电气工程理学硕士学位,在加州大学洛杉矶分校获得计算机科学博士学位。他的个人主页是www.cse.fau.edu/~ed。

图书前言

一个人只有大量地阅读,各处去周游,才能够见多识广。
——米格尔德塞万提斯《堂吉诃德》
我在加入IBM后,进行了近九年的安全技术工作。在IBM工作期间,我与人合著了一本关于数据库安全的书,那是最早关注这方面主题的书籍之一。后来,我意识到大量的安全知识被浪费掉了,因为从业者没有读过此类书籍和论文;他们始终在重复着相同的错误。特别是软件开发者对于安全性知之甚少。再后来,我参加了一个关于模式的会议,意识到将安全知识以模式形式进行陈述将是传播这种知识的有效途径。在那段时间里,Yoder和Barcalow[Yod97]发表了一篇使用模式形式陈述安全方法的论文,这让我更加深信,这是一个好的方向。再再后来,我发现安全模式除了向没有经验的开发者传播安全知识之外,对安全专家也十分有用,可以帮助他们以一种系统级的方法应用安全知识去开发新的应用程序或者产品,理解复杂的标准,审计复杂的应用程序和重新开发遗留系统。于是我与人合著了一本书,该书介绍了2005年之前发布的绝大部分安全模式类型。然而,自从那本书出版后,出现了更多的模式。
我已经写了超过80个模式,大多数都会在本书中介绍。其他作者也发表了一些模式,完善了本书(参见第1章)。我已经在每个模式的“参见”小节中列出了这些补充内容。需要注意的是别人使用的符号或者模式格式可能与我们有所不同。
我不想过度阐述,所以可能会遗漏一些有价值的模式。希望能够在本书英文版的网站:http://www.wiley.com/go/securitypatterns 或者是在新版本中,将那些未来发现的模式不断完善进来,模式可以在使用或者更好地理解之后进行完善。本书中的一部分模式是在15年前完成的,而其他的模式仍处于发展阶段。当审视这些相对较早的模式时,我意识到现在可以把它们写得更好一些,这也就延迟了本书的定稿时间。本书不是2006年出版的书籍[Sch06b]的第二卷或者升级版,而是体现了我这些年的工作成果。为了保证完整性,一些来自于我的更早书籍的模式也加入本书中;我希望最终能够做出一个完整的目录,虽然现在还没有成功。其他作者也写出了一些好的模式,这样就会有一批高质量的模式供开发者和研究人员使用。我的读者大部分都是希望把安全性整合在产品中的软件开发者,然而,本书也适合研究人员、计算机科学专业的学生和对系统安全感兴趣的人参考。
我们工作中的一个难点就是用了很长的时间来统一图形风格。书中描述的所有模式要么是在模式会议上讨论过,要么是在研究会议上展示过。然而,为了本书的出版,我对它们重新进行了修改,有的部分改动还比较大。我仍然非常积极地接受那些提供最初想法的原始版本,阅读每一行并完善它们的内容。换句话说,本书是我全新的创作,而不仅仅是过去工作的编辑或者我学生作品的展示。
仅有模式还是不够的:我们的最终目标是建立安全的系统。为了这个目标,我一直都在研究使用模式创建安全系统的方法论,本书中也会演示几个例子。严格意义上来说,我使用的方法是一种工程方法。但这不意味着不会谈到理论,但我会尽量只在必要的时候提出理论;同样,也不意味着使用代码:尽管我会给一些代码示例,但大多时候会使用模型进行举例。为了能够支持现在系统的复杂度,我们需要对模型进行抽象。模式的重要作用就是引导我们进行系统级的思考。一个系统不仅仅是它各个部分的组合,因此,单单关注孤立的代码和硬件只是一种微观视角,无法带来安全的系统。
每个模式可以用一页来介绍理念,也可以用30页来描述细节,我选择的是一种介于两者之间的中间层次。目标是让读者通过足够的细节描述理解模式的意义,并且评估它们的可行性。我发现这种层次的细节描述在我的工作中最为有效。我已经忍住了添加安全背景相关资料的冲动:这些已经在好几本书中进行过介绍(见第1章)。
因为我在大学里工作,所以被多次指责“不注重实践性”。其实我在企业里工作了十年左右,并且为很多公司做过顾问,所以有一些产业界的经验。当我编写这些模式时,我的那些已经在企业界工作的学生也提供了一些重要的产业视角。在某种程度上,本书是一本跨学科的书籍,将安全性与软件体系结构联系起来了。
我很希望听到对本书的建议和批评意见。虽然这些模式包括了计算机系统体系结构的所有范围,但我也确信在某些方面我的理解并不正确。我对安全模式在实际项目中的使用特别感兴趣。如果有任何建议,请发送邮件给我:ed@cse.fau.edu。Markus Schumacher和我会在securitypatterns.org上发布有关模式的评论。
本书结构
本书分为三部分。第一部分描述使用模式的动机、经验,以及本书的目标,并且展示了作者的安全开发方法论。第二部分是安全模式的详细介绍,包括计算机系统不同体系结构层次的模式。第三部分展示了一些模式的应用、模式表,并且指出了今后可能的研究方向。
致谢
本书是我在安全方面研究多年的成果。在这个过程中,我参加了多个安全模式会议,与全球各地从事这项工作的同行进行交流,倾听他们的意见,他们均对本书的完成做出了贡献。特别要感谢的是我的学生们,尤其是Nelly Delessy、Keiko Hashizume、Ola Ajaj、Juan C. Pelaez和Ajoy Kumar,他们撰写了这些模式中的几个版本。我的同事Maria M. Larrondo-Petrie和Mike Van Hilst与我协作发布了一些模式。我还有如下一些国际合作者:Nobukazu Yoshioka和Hironori Washizaki (Japan)、Günther Pernul (German)、David LaRed (Argentina)、Anton Uzunow (Australia)、Fabricio Braz (Brazil)、Jaime Muoz Arteaga (Mexico)和Antonio Maa (Spain)。
模式语言会议(PLoP、EUROPLoP、AsianOLOP和LatinAmerican PLOP)的指导专家和研讨会参与人员都给予了非常有价值的建议,特别是Joe Yoder、Fabio Kon、Richard Gabriel、Rosana Braga、Ralph Johnson、Lior Schachtert等。Craig Heath进行了前三章的注释工作。
Wiley英国出版社的编辑人员Ellie Scott、Birgit Gruber和Sara Shlaer,以及WordMongers的Steve Rickaby,都给予了非常多的帮助和支持。Markus Schumacher是一个非常称职的指导者,他能够找到严重的错误和遗漏的内容。在这里,我向他们表示诚挚的感谢!

上架指导

计算机\安全

封底文字

随着信息技术的飞速发展,互联网日益成为人们生活中不可缺少的一部分,社交网络、微博、移动互联网、云计算、物联网等各种新技术、新应用层出不穷,我们所面临的安全问题也日益凸显。虽然每年在系统安全方面投入巨大,但全球网站和数据库遭受攻击的数量和范围依然持续不断的增长。
显然,计算机开发早期所使用的防火墙、密码等传统方法已无法有效应对现在的网络攻击,我们需要一种更加系统的方法来保证软件安全。这种系统的方法是一种整体的、基于实例的方法,以最坏的实践和针对全系列现代安全威胁的可证明的解决方案为基础。本书作者是全球安全领域顶尖级专家,为读者提供这样一种系统的安全开发方法。他通过大量真实案例,系统讲解了如何使用安全模式将安全融入软件生命周期中的各个阶段——从概念到设计,再到实现和逆向工程。
本书还提供了内容丰富的安全模式列表,包含详细的实现建议和UML描述,全面覆盖现代安全问题,包括:
? 身份管理
? 访问控制
? 网络安全和Web服务安全
? 云计算安全
? 身份验证
? 过程管理
? Web服务加密
? 构建安全架构
本书涵盖了优良开发或逆向最安全的应用所需的各项内容,访问www.wiley.com/go/securitypatterns 可以获得更多的模式。

作者简介

[美]爱德华多 B. 费尔南德斯(Eduardo B. Fernandez) 著:暂无简介

译者简介

董国伟 张普含 宋晓龙 刘晓舟 邵帅 王欣 辛伟 译:暂无简介

译者序

随着信息技术的飞速发展,互联网日益成为人们生活中不可缺少的一部分,社交网络、微博、移动互联网、云计算、物联网等各种新技术、新应用层出不穷。但不管是Facebook、Twitter等新兴互联网公司的迅速崛起,还是Android日益成为智能手机市场的主流操作系统,信息安全一直都是永恒的话题。
安全模式是在给定的场景中,为控制、阻止或消减一组特定的威胁而采取的通用解决方案。在信息系统和软件设计中使用安全模式,可以有效地增强信息系统和软件的架构安全性,降低其安全风险。本书系统全面地阐述了安全模式的由来、基本概念、重要作用和主要应用,尤其是详细描述了大量具体安全模式的实例,对信息系统和软件架构设计与分析人员有重要的参考价值。对于每一个安全模式实例,本书均描述其应用场景,并针对应用场景所面临的威胁和亟需解决的问题,提出对应的解决方案(即模式),再通过直观的UML图说明模式的具体实现、优点和已知应用。由于作者采用了“提出问题→分析问题→解决问题→总结”的思路,即使读者对安全模式知之甚少,只要有一定的架构设计和信息安全基础,都能很快理解某一安全模式并加以应用。此外,本书内容翔实、图文并茂,非常适合架构设计和分析人员快速掌握安全模式,从本书“按图索骥”。
本书得到国家自然科学基金项目(61100047、61272493)的支持。参与本书翻译的人员有:董国伟、张普含、宋晓龙、刘晓舟、邵帅、王欣、辛伟,在此真诚感谢特约编辑朱筱丹女士,她对本书提出了许多建设性意见,为内容质量的提升付出了大量心血。由于时间和水平有限,书中错漏在所难免,敬请广大读者批评指正。

董国伟
2015年2月

图书目录

译者序

前言
第一部分 概  述
第1章 动机与目标 2
1.1 为什么需要安全模式 2
1.2 基本定义 4
1.3 安全模式的历史 6
1.4 安全模式的工业级应用 6
1.5 其他建设安全系统的方法 6
第2章 模式与安全模式 8
2.1 什么是安全模式 8
2.2 安全模式的性质 9
2.3 模式的描述与目录 11
2.4 安全模式的剖析 12
2.5 模式图 16
2.6 如何对安全模式分类 17
2.7 模式挖掘 19
2.8 安全模式的应用 19
2.9 如何评估安全模式及其对安全的影响 20
2.10 威胁建模和滥用模式 21
2.11 容错模式 21
第3章 安全系统开发方法 22
3.1 为模式增加信息 22
3.2 基于生命周期的方法 23
3.3 采用模型驱动的工程方法 25
第二部分 模  式
第4章 身份管理模式 28
4.1 概述 28
4.2 信任环 30
4.3 身份提供者 32
4.4 身份联合 34
4.5 自由联盟身份联合 39
第5章 身份认证模式 45
5.1 概述 45
5.2 认证器 46
5.3 远程认证器/授权者 50
5.4 凭据 55
第6章 访问控制模式 62
6.1 概述 62
6.2 授权 65
6.3 基于角色的访问控制 68
6.4 多级安全 71
6.5 基于策略的访问控制 74
6.6 访问控制列表 79
6.7 权能 83
6.8 具体化的引用监控器 87
6.9 受控的访问会话 90
6.10 基于会话和角色的访问控制 93
6.11 安全日志和审计 97
第7章 安全进程管理模式 101
7.1 概述 101
7.2 安全进程/线程 104
7.3 受控进程创建器 109
7.4 受控对象工厂 111
7.5 受控对象监控器 114
7.6 受保护的入口点 117
7.7 保护环 120
第8章 安全执行模式和文件管理模式 126
8.1 概述 126
8.2 虚拟地址空间访问控制 127
8.3 执行域 129
8.4 受控执行域 131
8.5 虚拟地址空间结构选择 135
第9章 安全操作系统体系结构和管理模式 141
9.1 概述 141
9.2 模块化操作系统体系结构 143
9.3 分层操作系统体系结构 146
9.4 微内核操作系统体系结构 150
9.5 虚拟机操作系统体系结构 155
9.6 管理员分级 158
9.7 文件访问控制 162
第10章 网络安全模式 166
10.1 概述 166
10.2 抽象虚拟专用网 168
10.3 IPSec虚拟专用网 172
10.4 传输层安全虚拟专用网 174
10.5 传输层安全 176
10.6 抽象入侵检测系统 184
10.7 基于签名的入侵检测系统 189
10.8 基于行为的入侵检测系统 193
第11章 Web服务安全模式 198
11.1 概述 198
11.2 应用防火墙 200
11.3 XML防火墙 207
11.4 XACML授权 212
11.5 XACML访问控制评估 217
11.6 Web服务策略语言 221
11.7 WS策略 224
11.8 WS信任 231
11.9 SAML断言 238
第12章 Web服务密码学模式 243
12.1 概述 243
12.2 对称加密 246
12.3 非对称加密 252
12.4 运用散列法的数字签名 257
12.5 XML加密 263
12.6 XML签名 271
12.7 WS安全 279
第13章 安全中间件模式 285
13.1 概述 285
13.2 安全经纪人 287
13.3 安全管道和过滤器 293
13.4 安全黑板 299
13.5 安全适配器 303
13.6 安全的三层结构 307
13.7 安全企业服务总线 310
13.8 安全的分布式发布/订购 315
13.9 安全的“模型–视图–控制器” 319
第14章 误用模式 324
14.1 概述 324
14.2 蠕虫 330
14.3 VoIP中的拒绝服务 336
14.4 Web服务欺骗 341
第15章 云计算架构模式 347
15.1 简介 347
15.2 基础设施即服务 349
15.3 平台即服务 357
15.4 软件即服务 364
第三部分 模 式 应 用
第16章 构建安全的架构 372
16.1 列举威胁 373
16.2 分析阶段 375
16.3 设计阶段 378
16.4 法律案例的安全处理 381
16.5 SCADA系统 387
16.6 医疗应用 392
16.6.1 医疗记录及其规程 393
16.6.2 病人治疗记录模式 394
16.6.3 病人记录模式 395
16.7 环境辅助生活 397
16.8 无线网络安全 399
16.9 本章小结 402
第17章 安全模式总结及安全模式的未来 403
17.1 安全模式总结 403
17.2 安全模式的未来研究方向 412
17.3 安全原则 414
17.4 未来展望 415
附录A XACML访问控制评估的伪代码 416
术语表 418
参考文献 423

教学资源推荐
作者: 庞建民 陶红伟 刘晓楠 岳峰 编著
作者: 曾凡平 编著
作者: [美] 威廉·斯托林斯(William Stallings)[澳] 劳里·布朗(Lawrie Brown) 著
参考读物推荐
作者: 大学霸IT达人 编著
作者: [美]苏西尔?贾乔迪亚(Sushil Jajodia) V.S.苏夫拉曼尼( V.S. Subrahmanian) 维平?斯沃尔( Vipin Swarup) 克利夫?王(Cliff Wang) 著
作者: (美)Andrew Hoog Katie Strzempka 著
作者: 子芽 著