《云计算开发与安全》主要论述云计算开发与安全的基本概念、思想、方法和实例。全书主要由9个部分组成,内容涉及相关支撑技术、云计算概念和开发技术、云的应用、云计算安全、云计算与安全的教育和研究等相关技术及其实例、实验系统等。
《云计算开发与安全》是一本不可多得的将云计算开发与安全紧密结合的图书。通过风趣且智慧的语言讲解抽象的概念,用实例和插图帮助读者理解其中的含义,同时又不失论述的严谨性,使读者易于理解和掌握。
尽管云计算平台和应用的使用程度迅速扩大,但大多数关于这一主题的著作都集中在高层次的概念上。长期以来一直缺少一本为如何开发安全的云提供详细指导的图书。
《云计算开发与安全》提供了云计算技术的全面概述,并填补了这方面的空白。它提出了关于如何开发和保护云计算平台和Web服务的分步指导,深入浅出地论述了相关支持技术。
本书介绍了实现安全的云计算框架以及云服务支持技术,如Web服务和安全性。同时也详细介绍了云计算框架的各个层次,包括虚拟机监控和管理程序、云数据存储、云数据管理和虚拟网络监控。它还给出了云产品和原型的几个实例,包括私有云、公有云和美国政府云。
本书回顾了云计算的新发展,阐述了开发和保护当前云计算平台和应用的基本概念、问题和挑战;审查验证了作者及其团队在得克萨斯大学达拉斯分校开发的云计算实验系统上构建的原型。
《云计算开发与安全》适合工业、政府和学术界的读者阅读。通过本书,技术人员将会领会怎样为特定的云应用选择合适的工具;开发人员将会发现实施云的更多设计方案;管理人员将会理解好的方案是建立自己的云还是外包出去。
背景
随着信息系统技术的不断发展,许多业务领域的各种应用日益趋于计算机化。在许多组织机构中,数据已经成为其关键资源。有效地访问数据、共享数据以及从数据中提取信息并利用信息已经成为迫切的需要。因此,我们不仅需要努力整合分散在多个站点上的各种数据源,而且从这些数据库中提取信息模式和趋势也显得十分重要。这些数据源可以是由数据库管理系统所管理的数据库,也可以是来自于多种数据源的在数据仓库中存储的数据。
20世纪90年代中期,随着万维网(World Wide Web,WWW)的发展,对数据、信息和知识的有效管理产生了更大需求。在这个阶段,消费者书籍销售商的概念已通过网络进行了数字化体现。按照这种方式,许多服务有了网络的支持,消费者可以通过服务提供商的网站请求服务,而服务提供商提供被请求的服务。这种服务可以是从航空公司预订机票或者是从书籍销售商那里购买一本书,这种由网络支持的服务被称为网络服务。需要注意的是,这种服务不一定必须通过网络提供。消费者可以向服务提供商发送电子邮件请求服务。这种服务就是计算机支持的服务,由计算机支持的服务大部分工作都集中在网络服务上。
这种服务模式已经演变成提供计算服务的基础设施、软件、数据库以及各种应用。例如,像从电力公司获得供电服务一样,我们也可以从服务提供商那里获得计算服务,这种能力就产生了云计算的概念。正如美国国家标准与技术研究院对云计算的定义:云计算是实现无处不在、方便、按需网络访问共享的可配置计算资源池(如网络、服务器、存储、应用程序和服务) 的模型,可以通过最少的管理努力或服务提供商的交互来快速地提供和发布。
在过去5年中,云计算的发展迅速,目前已经有好几家公司提供基础设施软件、应用程序和计算平台作为服务。
随着对数据和信息管理需求的不断增加,维护数据库、应用程序和信息系统的安全性至关重要,因此必须保护数据和信息免受未经授权的访问以及恶意破坏。随着云计算的出现,由于云数据通常是由第三方管理,所以保护数据和信息尤为重要,因此需要有效的机制来保护云计算安全。
《云计算开发与安全》将回顾云计算的发展情况,并讨论云计算安全中的概念、问题和挑战。此外,还将讨论我们在得克萨斯大学达拉斯分校(The University of Texas at Dallas,UTD)开发的在云计算和云计算安全方面的实验系统、基础设施和教育项目。
《云计算开发与安全》组织结构
《云计算开发与安全》共分为9个部分,每个部分分别描述和云计算开发与安全相关的一些方面。本书重点将是云计算查询处理以及周边安全问题。此外,本书也将讨论利用云计算的应用安全性,例如恶意软件检测、信息共享安全、内部威胁检测等。
《云计算开发与安全》第1章为引言。
第一部分由3章(第2~4章)组成,主要介绍云计算的支撑技术。这部分包括第2章所讨论的计算系统的演进,第3章讨论的安全技术,第4章讨论的数据、信息以及知识的管理技术。
第二部分由3章(第5~7章) 组成,讨论服务和安全服务技术中的概念。其中,第5章讨论SOA(Service Oriented Architecture,面向服务的架构)和Web服务,面向服务的设计与分析以及安全服务。第6章将讨论语义Web服务和相关安全问题,在第7章将讨论专用的Web服务,如信息和知识管理服务。
第三部分由5章(第8~12章)组成,将讨论云计算中的核心课题。在第8章中,将讨论云计算的基本概念以及我们实现的一个云计算架构。在第9章,将对云计算功能进行讨论,包括虚拟化、数据存储管理、数据管理。接下来将用整个第10章来介绍云数据管理,针对云数据管理开发了许多原型。第11章讨论应用程序。第12章讨论各种云产品和安全提供商。
第四部分由3章(第13~15章)组成,讨论在实验云计算系统上开发的原型。首先将在第13章讨论云查询处理系统原型,其次将在第14章讨论云计算中的社交网络,最后在第15章讨论云计算中的本体管理。
第五部分由6章(第16~21章)组成,讨论云计算安全。第16章讨论云计算的安全性。第17章讨论云计算安全的主要功能,例如安全虚拟化、存储和数据管理以及云取证。由于我们大部分工作都是集中在云数据安全管理上,所以将用整个第18章来讨论这个课题。第19章给出了云计算安全指南。第20章讨论安全作为服务的概念。第21章讨论关于云计算安全的各种标准和产品。
第六部分由3章(第22~24章) 组成,讨论在云计算上开发系统的安全性。第22章讨论的主题是使用关系数据的安全云查询处理系统,第23章将讨论使用语义Web数据的查询处理安全,第24章将讨论亚马逊网络服务和信息集成的安全性。
第七部分由4章(第25~28章) 组成,介绍云计算在安全应用中的使用。第25章介绍使用云计算对恶意软件检测,第26章将讨论基于云的内部威胁检测,第27章讨论基于云计算的信息共享保障,第28章讨论基于语义云的信息共享,我们将语义云定义为使用语义Web技术的云。
第八部分由3章(第29~31章) 组成,描述了关于开发可信赖云的思路。第29章将讨论云服务的信任管理,第30章对云服务的隐私问题
Bhavani Thuraisingham博士是得克萨斯大学达拉斯分校(UTD)埃里克乔森工程与计算机科学学院 Louis A.Beecherl,Jr杰出教授,以及UTD网络安全研究和教育研究所执行董事。她目前从事的是网络安全、云计算和大数据分析的集成法研究。在2004年10月加入UTD之前,她在MITR公司工作了16年,其中担任了3 年国家科学基金会(National Science Foundation,NSF)项目主任。在 MITRE公司中,她领导团队努力开发安全数据管理系统和数据挖掘工具。她在NSF发起了数据和应用安全计划,并成为网络信任主题研究的一部分。在进入MITRE公司之前,她在商业行业中工作了6年,从事数据安全、数据管理和分布式系统的研究工作。
Thuraisingham博士是许多奖项的获得者,包括IEEE计算机学会1997年技术成就奖、ACM SIGSAC2010年度杰出贡献奖、IEEE SMC和社会交通系统2010年度智力与安全信息学领导联合奖、社会设计和过程科学(SDPS)2012年度金融和计算机科学与社会科学跨学科研究金奖,以及 2013年 IBM学院奖。她是美国电气电子工程师学会(IEEE)、美国科学促进会(AAAS)和 英国计算机学会的会士(Fellow)。她发表过100余篇期刊论文、200余篇会议论文,出版过12本图书,完成超过100场主旨演讲。她已经拥有 8项专利(3项待定),并且是知识与安全分析有限责任公司的创始人。Thuraisingham博士在威尔士大学获得了计算理论博士学位。由于在数据安全方面所做的贡献,她获得了英国布里斯托大学博士学位(工程博士)。
译者序
原书前言
关于作者
第1章 引言1
1.1 关于本书1
1.2 支撑技术2
1.2.1 从主机到云2
1.2.2 安全技术2
1.2.3 数据、信息和知识管理3
1.3 服务安全技术4
1.3.1 服务安全技术4
1.3.2 语义服务安全5
1.3.3 专用服务安全5
1.4 云计算概念6
1.5 云计算实验系统7
1.6 云计算安全7
1.7 云计算安全实验系统8
1.8 面向安全应用的云计算实验8
1.9 迈向可信赖的云9
1.10 面向云安全建立基础设施、教育项目和研究计划9
1.11 本书的结构10
1.12 后续13
参考文献14
第一部分 支撑技术15
第2章 从主机到云16
2.1 概述16
2.2 早期计算系统16
2.3 分布式计算17
2.4 万维网18
2.5 云计算18
2.6 总结和展望19
参考文献19
第3章 可信赖的系统20
3.1 概述20
3.2 安全系统20
3.2.1 简介20
3.2.2 访问控制和其他安全概念21
3.2.3 安全系统的类型22
3.2.4 安全操作系统23
3.2.5 安全数据库系统23
3.2.6 安全的网络24
3.2.7 新兴趋势25
3.2.8 网络的影响26
3.2.9 构建安全系统的步骤26
3.3 可靠的系统27
3.3.1 简介27
3.3.2 信任管理28
3.3.3 数字版权管理28
3.3.4 隐私29
3.3.5 完整性、数据质量和高度保障29
3.4 安全威胁和解决方案30
3.5 通过不可信赖的组件构建安全系统32
3.6 总结和展望33
参考文献33
第4章 数据、信息和知识管理35
4.1 概述35
4.2 数据管理35
4.2.1 数据管理35
4.2.1.1 数据模型35
4.2.1.2 功能36
4.2.1.3 数据分布36
4.2.1.4 Web数据管理36
4.2.2 复杂数据管理37
4.2.2.1 多媒体数据系统37
4.2.2.2 地理空间数据管理38
4.3 信息管理38
4.3.1 数据仓库和数据挖掘39
4.3.2 信息检索40
4.3.3 搜索引擎41
4.4 知识管理42
4.5 活动管理43
4.5.1 电子商务和电子贸易43
4.5.2 协作与工作流43
4.5.3 信息集成45
4.5.4 信息共享45
4.5.5 社交网络46
4.5.6 供应链管理47
4.6 总结和展望47
参考文献48
第一部分总结49
第二部分 服务安全技术50
第5章 面向服务的计算和安全51
5.1 概述51
5.2 面向服务的计算52
5.2.1 服务模式52
5.2.1.1 SOA和Web服务53
5.2.1.2 SOA及其设计53
5.2.2 SOA和Web服务54
5.2.2.1 WS模型55
5.2.2.2 WS的构成56
5.2.2.3 WS协议57
5.2.2.4 REST 59
5.2.3 SOAD 59
5.2.3.1 IBMSOAD 61
5.2.3.2 面向服务的建模框架62
5.2.3.3 服务型UML 62
5.3 面向服务计算的安全62
5.3.1 服务范式的安全62
5.3.2 安全的SOA和WS 65
5.3.2.1 WS-Security 65
5.3.2.2 WS-*Security 66
5.3.3 安全的SOAD 69
5.3.3.1 安全的SOMA 71
5.3.3.2 安全的SOMF 72
5.3.3.3 用于服务的安全UML 72
5.3.4 WS访问控制72
5.3.4.1 SAML 72
5.3.4.2 可扩展访问控制标记语言73
5.3.5 数字身份管理75
5.3.5.1 OpenID 76
5.3.5.2 Shibboleth 76
5.3.5.3 自由联盟78
5.3.6 WS安全模型78
5.3.6.1 授权模型79
5.3.6.2 信息流模型79
5.3.6.3 多级安全WS 81
5.4 总结和展望81
参考文献82
第6章 语义Web服务和安全85
6.1 概述85
6.2 语义Web 86
6.2.1 分层技术栈86
6.2.2 XML 87
6.2.2.1 XML语句和元素87
6.2.2.2 XML属性87
6.2.2.3 XMLDTD 87
6.2.2.4 XML模式87
6.2.2.5 XML命名空间88
6.2.2.6 XML联合/分开88
6.2.2.7 XML-QL、XQuery、XPath、XSLT 88
6.2.3 RDF 88
6.2.3.1 RDF基础89
6.2.3.2 RDF容器模型89
6.2.3.3 RDF规范89
6.2.3.4 RDF模式90
6.2.3.5 RDF公理语义学90
6.2.3.6 RDF推断法90
6.2.3.7 RDF查询91
6.2.3.8 SPARQL 91
6.2.4 本体91
6.2.5 Web规则和SWRL 92
6.2.5.1 Web规则92
6.2.5.2 SWRL 93
6.2.6 语义Web服务94
6.3 安全的语义Web服务95
6.3.1 语义Web的安全性95
6.3.2 XML安全性96
6.3.3 RDF安全性96
6.3.4 安全性和本体97
6.3.5 安全查询和规则处理97
6.3.6 语义Web的隐私和信任97
6.3.7 安全的语义Web和WS 99
6.4 总结和展望100
参考文献101
第7章 专用的Web服务和安全103
7.1 概述103
7.2 专用Web服务103
7.2.1 总述103
7.2.2 数据管理的Web服务104
7.2.3 复杂的数据管理Web服务104
7.2.4 信息管理的Web服务106
7.2.5 知识管理的Web服务106
7.2.6 活动管理的Web服务107
7.2.6.1 电子商务107
7.2.6.2 协作与工作流108
7.2.6.3 信息集成108
7.2.6.4 其他活动109
7.2.7 领域Web服务109
7.2.7.1 防御109
7.2.7.2 医疗保健与生命科学110
7.2.7.3 金融110
7.2.7