安全性是较为宽泛的概念,涉及到从端点(服务器和最终用户的 PC 等)到核心的所有网络层。某些人可能认为既然 SOA 是应用级实施,那么,我们只需确保应用服务器和端点提供适当的验证和授权功能以及端到端的安全传输(如SSL)即可。然而实际情况是,安全的应用服务器不足以保护并保证业务数据始终如一的可用性,也不能解决企业在日常工作中遇到的所有安全问题,如外部黑客、DOS 攻击、基于协议的攻击和后门利用等。关于前 10 大 web 应用的安全性问题,请访问:http://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project。
缓冲器溢出、应用 DOS 及访问控制都榜上有名。为了全面防御这些安全威胁,我们需要多层(应用层和网络层)的端到端安全产品。下面,我们将介绍 4 个领域的主要安全战略– 网络、访问、端点和数据中心。
网络安全性
谈到网络安全性,我们首先想到的是防火墙。然而,随着端口 80/443 传输越来越多的 web 流量,基于 L3/4 防火墙的传统网络安全方法虽然仍有存在的必要,但却不足以提供全面的保护。我们需要深层检测并保护这些端口中的流量。因此,我们需要部署“应用层”(例如Juniper Networks SSG 系列产品等提供应用/内容层智能的下一代智能防火墙)或 Juniper Networks IDP(入侵检测与防御)等专用的应用层安全产品来补充网络防火墙,以便为网络和应用层提供最大的保护。这些产品可检测到恶意用户或恶意代码(如蠕虫)创建的模式(攻击签名)或异常流量及/或协议,以防它们利用应用的安全漏洞,从而在攻击到达目的地之前阻断它们。应用层防火墙可保护多类打包或定制的客户端-服务器以及基于 Web 的应用。
Juniper 统一访问控制解决方案(UAC)等客户端安全系统允许安全经理了解客户请求的信息处在系统中的哪个位置,甚至能够察看客户端系统清单并基于多个信息来控制 web 应用访问(如是否已经安装了所需的安全软件以及安全软件是否是最新版本等),从而执行制度遵从计划。管理员应能够基于各种变量设置访问策略。例如,财务部门的授权用户有权全面访问Oracle 金融应用,而营销等其它部门的用户则无权访问这个应用,即便从网络层也不可以,以防他们发动任何攻击或通过特殊技术猜测出密码。这种能力对于必须确保制度遵从以及负责处理个人数据的机构尤其重要,可防止将个人数据用作身份盗用的工具。
数据中心安全性
无论您是否正在使用 SOA,您的数据中心都需要通过防火墙和 IDP 等技术得到适当保护,这一点勿容置疑。如果您部署的 SOA 大量使用 web 服务交易,将给您带来更繁重的 SSL 加密负担(https)。服务器通常能够处理所有的 SSL 连接,但是,在加密/解密以及对 SSL 交易进行密钥处理时,将生成大量的 cpu 处理杂务,对 CPU 利用率产生负面影响,进而影响性能和可扩展性。Juniper DX 等 SSL 卸载产品能够解决可扩展性问题并加密整个应用交易。对于需要端到端加密的环境,SSL 产品能够从客户端加密/解密连接,还能重新加密与后端服务器之间的连接,这对负载平衡器和广域网加速器等需要纯文本数据才能运行的其它网络服务至关重要。
总而言之,SOA 的安全风险同时来自内外部。企业中使用 Web 服务进行互操作的系统对于内外部攻击的防御能力越来越差。当这些系统使用的 Web 服务由供应商和业务伙伴等外部机构提供时,SOA 和 web 服务的部署工作将变得更加复杂。您应全面考虑上述所有因素并谨慎部署最新的安全解决方案,如应用级防火墙、IDP、 SSL VPN 和 SSL 卸载产品等,以便为企业中的 SOA 环境提供安全保护。