SOA安全性解决方案
一个设计正确的SOA安全性解决方案可以解决SOA中的绝大部分安全性问题。解决方案本身可以包含多个分别解决SOA安全性中的某个特定方面的子解决方案。根据具体需求和现有的安全性基础架构,不同的企业需要不同的解决方案。
一个设计正确的SOA安全性解决方案可以解决SOA中的绝大部分安全性问题。解决方案本身可以包含多个分别解决SOA安全性中的某个特定方面的子解决方案。根据具体需求和现有的安全性基础架构,不同的企业需要不同的解决方案。
SOAP消息监控
基于SOAP侦听的SOA消息监控是构建高效SOA安全性解决方案基础的一种手段。SOAP侦听
图1 一个用于监控SOAP消息的SOAP拦截器用作这个SOA中的安全性基础。SOAP拦截器分析它监控的SOAP消息的标题头中包含的用户身份,并将其与保存在现有安全性基础架构中的名称相比较。结果就是对SOAP消息发送方和接收方进行了身份验证和授权。
就是在web服务消费者和web服务之间来回传递的SOAP消息的路径中放入一个叫做“SOAP拦截器”的特殊软件块。因为其分类、监控、复制和转发包含大量数据的SOAP消息的能力,SOAP拦截器可以在SOA安全性方面发挥重大作用。如图7所示,一个SOA安全性解决方案“监视”着到达web服务的SOAP调用消息和对这些服务调用的响应。当它“看见”一条消息时,SOA安全性解决方案就会进行检查,以确保发出请求的实体是经过身份验证和授权可以使用web服务的。SOA安全性解决方案通过检查SOAP消息标题头中包含的数据实现了这一点。
在大多数情况下,SOA安全性解决方案是对现有安全性解决方案的扩展,而现有安全性解决方案是在迁移到SOA之前为保护整个企业而部署的。因此,SOA安全性解决方案很可能不得不与现有安全性基础架构进行连接和通信。如图7所示,SOA中的用户身份验证和授权发生在基于企业的授权用户数据库检查用户证书的时候。侦听SOAP消息,并把消息标题头中列出的用户与保存在现有安全性基础架构中的用户进行比较,便可实现身份验证和授权。
SAML和联邦身份验证
当需要对企业外部的SOA用户进行身份验证和授权时,又会怎么样呢?SOA的开放性使得上述情况比以往任何时候都更可能出现。您可能会面临这样一个难题:在一组在现有安全性基础架构中没有记录的用户中,搞清楚每个用户的身份。为了解决保护第三方过程中固有的安全性问题,SOA安全性解决方案可以使用联邦身份验证。联邦身份验证是这样一个过程:通过这个过程,多方可以达成一致,使用一组给定的标准来对一组指定的用户进行身份验证。联邦身份验证方法的使用者可以创建一个联邦身份管理系统(Federated Identity Management System),这是一个已验证用户的库。SOA安全性解决方案可以通过检查联邦身份管理系统来对某个用户进行身份验证。换句话说,一些相互通信的系统的“联邦”,可以一致同意某个用户是合法的。
- 本文关键词:


