SOA安全:未来将会变得越来越好

 
   | |

导读:本文介绍了安全性是让我们远离面向服务架构的理由,虽然完全成熟的面向服务架构安全还没有来临,但目前有30%的企业使用面向服务架构来保持与用户及合作伙伴的外部互联。

关键词:安全 面向服务架构 漏洞 SOA SOAP

 
正在加载数据...

  安全性是让我们远离面向服务架构的理由。虽然完全成熟的面向服务架构安全还没有来临,但目前有30%的企业使用面向服务架构来保持与用户及合作伙伴的外部互联。对于使用SOAP的标准网络服务来说,WS-Security作为基础性标准获得了临界物质。另一方面,先进的面向服务架构安全涉及合作伙伴之间的联合,认可和多重服务执行标准范围内的用户身份复制,目前它还处在发展的初期阶段。为了从目前安全状态过渡到未来的高级面向服务架构安全,需要考虑的事项包括:建立可以推动面向服务架构发展的重复设计流程来满足目前和未来的安全需求,新兴的行业标准,另外还要和面向服务架构安全的功能以及定制安全集成的可能性结合在一起。

  面向服务架构的基本定义和解决方案

  作为设计面向服务架构安全的基础,保证面向服务架构需求和反馈安全的最简单方法就是把他们放置在虚拟私人网络中。对于外部面向服务架构安全的最常用方法是使用双向安全套接协议层(简称SSL),双向服务套接协议层:1)可以允许每个互相联络的合作伙伴相互识别,2)为安全设置门槛:黑客甚至无法连接上以面向服务架构为基础的服务,除非他们从服务用户处窃取了证书和密钥。虽然虚拟个人网络建立起来相对容易,但是以虚拟个人网络为基础的面向服务架构安全比较粗糙,也无法支持高级功能,比如说在服务执行过程中对多层套接协议层内的用户身份进行复制;多重安全域的协调和联合;以及严格的认可。目前证书的管理也是一种管理上的负担。

  虽然面向服务架构安全的其他主要选择还包括Java或.NET应用软件平台中现有的面向服务架构安全特性和面向服务架构专业产品中包含的面向服务架构安全,这些产品有企业服务总线,面向服务和网络服务管理解决方案,面向服务架构安全服务器或者面向服务架构应用工具。应用工具能为面向服务架构安全提供最简单也最专业的解决方案,但是在用户建立完整的面向服务架构平台时要考虑这些面向服务架构产品就显得太过复杂。

  对于应用软件服务器和面向服务架构专业产品中出现的新特性,简单的面向服务架构安全解决方案更加引人瞩目。从历史经验来看,企业用户在应对高级应用软件安全需求的困难时通常表现的不够积极。随着面向服务架构安全执行的成熟和安全联盟体系架构的拓宽,这些解决方案在执行高级安全需求方面会变得越来越简单。许多企业用户会发现高级面向服务架构安全成为一种需要,特别是逐渐增长的数据隐私和其他法规需求。虽然这很重要,但在你开始执行简单的面向服务架构安全解决方案时,随着企业需求和面向服务架构安全的成熟,我们需要保持开放的心态和开发更加深入的安全功能。

  Forrester咨询公司强烈推荐你设计一个不需要应用软件研发人员来参与安全代码编写的解决方案。虽然有着强大的指导方针和代码审核,但应用软件代码内置的安全在保持安全的持续性和应用软件安全未来的灵活性方面都存在风险隐患。需要注意的是让研发人员不要参与安全代码编写并不意味着培训应用软件研发人员使用安全代码的需求就没有了。实际上安全代码是应用软件安全实践中一个独立的领域,它要保证应用软件故障不会导致安全漏洞。

  行业标准,产品,集成和安全战略的框架的正确结合是一个重复的过程:

  1.确认你的安全需求。对你的安全需求进行评估。这个过程为设计面向服务架构安全战略和解决方案奠定了基础。企业需求要和面向服务架构解决方案的主要设计焦点相一致。Forrester使用的是一个围绕服务客户,需求反应,服务提供商和安全环境的模型。当你继续面向服务架构设计的重复流程时,你可能要重新考虑所选的需求,了解更多有关标准,产品和企业满足面向服务架构需求方面的能力的信息。

  2.判断面向服务架构安全标准的使用情况。你的面向服务架构安全需求为决定面向服务架构安全标准的范围奠定了基础(这些标准可能都要满足你的需求)。在选择你要使用的实际标准时,你必须了解你基础架构中的产品(包括现有的产品以及将来你可能为面向服务架构采购的产品)能支持那种标准。核心的标准包括WS-Security, WS-I Basic Security Profile, XML Encryption和XML Signature。高级标准包括WS-Trust, WS-SecurityPolicy, WS-Federation, XACML和WS-SecureConversation。

  3.选择能为你提供核心面向服务架构功能的产品。面向服务架构安全解决方案中的许多功能,诸如使用WS-Security抬头进行认证的功能在不同产品分类的多种产品类型中都可以实现。你设计的流程必须考虑到每种选择,选择的产品要为面向服务架构安全提供核心功能。对你的面向服务架构解决方案有用的主要产品分类包括:面向服务架构应用工具,面向服务架构管理解决方案,企业服务总线,面向服务架构安全服务器,应用软件服务器,安全令牌服务器,授权管理服务器和识别及访问管理解决方案。

  4.将产品结合起来共同发挥作用。你可能有各种产品在执行面向服务架构安全功能,这些产品必须能结合在一起共同发挥作用。这种结合可能要通过产品配置选择来完成,但是可能需要使用产品编程界面来创建集成组件。

  5.填充框架中的漏洞。在产品集成完成后,为应用软件研发人员建立助手框架是很用的,这样他们就不必在以面向服务架构为基础的应用软件内编写安全代码。

  Forrester推荐这种重复流程有两个原因。首先并非所有的应用软件都需要满足所有的安全需求:最初的应用软件可能在构建面向服务架构安全解决方案时要求不高,后来的应用软件需要你用额外的特性去补充你的解决方案。其次每次你在重复这些流程时,你都会了解更多有关构建最有效的面向服务架构安全解决方案的知识。

  面向服务架构的领先者仍然在积极的探索着这个领域的最新发展。对一些企业来说,这可能是一种具有高价值的业务方式。这些企业要证明构建高级面向服务架构安全解决方案的价值。这些领先者将推动行业标准的稳固,帮助厂商让他们的产品更加成熟。如果你的企业是迫切需要高级面向服务架构安全的一员,有许多种的产品和标准可以选择,但是需要警惕的是:你应该多花一些时间来为建模,产品调试,实施和扩展测试进行规划。


观点与展望
 选择SOA的原因和时机
 如何将业务需求转转换为IT要求?(一)
 如何将业务需求转转换为IT要求?(二)
 什么是最有价值的IT体系结构技能,如何学习?
 开始采用SOA 最好将哪些软件作为服务实现?(一)
 开始采用SOA 最好将哪些软件作为服务实现?(二)
 SOA安全:未来将会变得越来越好

原文出处:http://safe.zol.com.cn/146/1463494.html
 
来源:中关村在线    
 
 
 
 
 

SOA性能

 
一些较长久的标准组织正在尝试衡量SOA性能。SPEC基准组织有兴趣听取大家关于这一主题的信息。目前SPEC成员包括IBM,Oracle和VMwar正致力……
 
如果改造的中间件不是解决问题的方案,那么什么是呢?答案当然就是架构。但这么说只是问题的一小部分。那我们还按照集成开发者的语言来说……
 
在典型的集成环境中,你首要关心的是数据的移动或者业务逻辑的合并以便完成特别的任务。在这种思想指导下,大多数集成开发者考虑的是输入……
 
Edward R. Murrow曾经说过:“人常说谈话是门失传的艺术;我经常希望真的是那样啊!”对于IT开发商和舆论导向者来说这很正确,这更适用于SOA……
 
数据存储:Android改变了开发者关于数据存储的观点,那就是没有一个普通的文件系统可以被所有应用系统所共享。

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录