浅谈SOA实践中面临的安全挑战及相关标准规范
——东方通中间件产品经理:付东普
一、前言
安全已经是个信息领域的老话题了,它几乎是伴随着软件的产生而产生的,特别是随着互联网的飞速发展,安全已经不是某个用户所面临的问题,而是成了全世界所面临的棘手课题。虽然SOA经过近几年的发展,已经由理念逐渐成为越来越多用户的选择和实践,并在国内外厂商相关产品、技术、规范等的推动下,得以迅速发展。但是,传统互联网应用所面临的安全问题,SOA同样不能幸免。
东方通中间件作为国内中间件软件产品领域的领军企业,有幸以长风联盟国内代表企业之一,参加了由OASIS组织举办的Open Standards Forum 2008有关Security Challenges for the Information Society的主题会议。在此次会议上,了解了部分国际上安全领域相关技术、标准及相关产品,感觉到国际上的对互联网应用,特别是SOA应用所面临的安全问题,都非常关注,并且投入了相应的人力和物力去研究这方面的技术和标准。鉴于安全领域涉及的标准和技术太多,下面,笔者只是简单谈谈在SOA应用实践中,我们所面临的安全挑战。
二、SOA面临的安全挑战
SOA的核心是基于网络以标准接口访问提供相应能力的服务,传统互联网领域面临的安全问题,如身份认证、访问授权、传输安全(包括防泄密、防篡改、防抵赖等)及防止恶意攻击等,在SOA应用中,同样存在。但SOA作为新生的事物,相比传统的信息安全解决方案,还略显不足。围绕SOA安全相关标准规范,笔者认为还存在以下不足:
1.标准规范还不完备及有待完善
虽然,近几年围绕Web Service和XML的安全标准规范发展迅速,如WS-Security、WS-SecurityPolicy、WS-Trust、XML Signature、XML Encryption、XML Key Management、SAML、XACML等。但是要满足现实世界的信息安全问题,还远远不够,如隐私管理、个人关系、跨界授权与认证等,国际相关标准组织也认识到了SOA相关安全标准规范的不足,并成立了相应的工作组,已经开始着手对应标准规范的制定。
2.存在重叠和不统一
由于国际上存在多家制定SOA相关标准规范的组织,如W3C、OASIS、WS-I、OMG等,这些组织之间的协调和沟通还存在一定问题,因此,现存的SOA相关安全标准规范中,还存在着重叠问题,如WS-Trust与WS-Federation。另外,由于标准制定涉及到不同厂家的利益,因此现有SOA安全标准规范的定义上,还不能统一,这也是为什么有了标准,还要制定安全的互操作规范的原因之一。
3.应对Web2.0能力不足
Web2.0为用户带来了高效及内容丰富的体验,但是SOA中常用的Web Service,在满足Web2.0的应用中,对应安全标准规范则略显不足。如Web2.0常用REST方式访问后端Web应用或服务,而这方面的标准规范却没有及时补充。
4.解决SOA安全所带来的副作用
要完整解决SOA安全问题,肯定是要付出一定代价的。如投入增加、开发和使用模式的复杂度增加、效率降低、维护成本提高等。正是由于这些副作用,用户在选择SOA解决方案时,通常不会选择全方位的安全解决方案,而是有所取舍。
5.软件厂商支持力度不一
由于安全涉及的内容和层次很多,相关SOA标准规范面临的选择较多,再加上不同厂家的技术实力及涉及自身的利益不同,软件厂商对SOA安全标准规范的支持力度,参差不齐,如WS-Security规范,微软、Oracle、IBM几家的产品支持程度,就有所差别。
三、SOA在实践中解决安全问题
好在SOA安全标准规范已经有了一定的规模,并且在不同层次也基本有了可实现的参考(如内容安全、身份认证、授权、单点登陆、传输安全等方面的标准规范),国际上一些用户和软件厂商,不可能等这些安全标准规范完全完善起来,才去解决业务应用中的信息安全问题,而是进行了大量的实践。
从此次会议来看,国际上对涉及社会、关系、信用等方面的安全比较关注,主要是身份认证和授权方面的标准规范,大家进行了有益的实践与探索,当然,这方面也有一些标准规范可供参考,如XACML、SAML、OpenID等。从介绍的项目及场景来看,国外在医疗、电子政务(e-Gov)、电信方面,基于SOA的安全解决方案,有较多成功的实践。如会场演示的一个基于XACML2.0标准的医疗示范应用,就以可插拔的方式,集成了不同厂家的XACML支持产品,表现了标准的厂商独立性,并保证了用户安全解决方案的可迁移性,从而降低成本,提高了维护效率。
四、东方通中间件产品的安全解决之道
作为国内中间件软件领域的领军企业东方通中间件,在SOA安全领域也进行了有益的探索和实践。基于自身多年实践及积累的用户经验,东方通中间件也提供了相对完整的SOA安全解决方案。如在主流的企业应用开发技术Java EE方面,提供的应用服务器中间件软件TongWeb,支持JAAS、HTTPS等安全标准规范;消息中间件软件TongLINK/Q,支持HTTPS、传输消息加解密及安全出口、节点身份认证等;应用集成中间件软件TongIntegrator提供了较完整的资源权限管理、身份认证、支持Web Service访问的多种安全机制(如支持WS-Security、HTTPS等);在证书认证、授权、加解密等方面,提供了安全认证平台软件TongSEC。
作为独立的安全中间件软件产品,东方通中间件安全认证平台软件TongSEC是以公钥基础设施(PKI)为核心,以数字证书和CA认证为基础,建立在一系列相关国际安全标准之上的一个开放式应用平台和开发平台。东方通中间件安全认证平台软件TongSEC向上为应用系统提供多种安全应用模式和不同封装层次的安全开发接口,向下提供统一的密码算法接口以及各种加密机、加密卡、智能卡等硬件密码设备的调用接口。
基于东方通中间件安全认证平台软件TongSEC可以开发、构建各种应用安全产品或具有强安全机制的应用系统。具体如:互联网(B/S)安全应用系统、强双因子身份认证系统、数据库/文件加解密保护安全系统、CA认证系统、安全电子邮件系统、安全办公自动化(OA)系统、安全网关、动态口令系统、J2EE中的安全部分JAAS系统、虚拟专网(VPN)等。