OSB Message-Level Custom Security

来源:互联网 发布:影舞者冰川网络vr 编辑:程序博客网 时间:2024/05/16 08:08

本文描述OSB Message-Level Custom Security的实现过程(demo)

1、创建test.wsdl文件,其中包括传递进来用于验证身份的用户名和密码:user,pwd. 如下图所示:这里写图片描述
这里写图片描述

这里写图片描述
这里写图片描述

这里写图片描述

2、创建两个proxyservices:psSyncData.proxy和psStar.proxy

其中psSyncData.proxy主要用于处理业务逻辑和验证身份,psStar.proxy则是为psSyncData.proxy提供验证信息的信息提供者

对于psStar.proxy的设置如下:

1)在Message Flow中设置Routing,Routing的service指向psSyncData.proxy;

2)在Request Action中设置两个insert,向header变量中插入两个参数user和pwd,这俩参数会在psSyncData.proxy的security中被引用;
这里写图片描述

psSyncData.proxy需要做设置如下:

1)Service Type选择:Any Type SOAP Service

2)在security tab中,选择Custom User Name and Password并定义User Name/Password XPath,如下图:

这里写图片描述

3)在Mssage Flow中,调用业务处理所用的businessServices,并将Soap的header替换还原成正确的,否则可能会引起Internal Server Error
这里写图片描述

以上传入的用户名和密码是用weblogic进行验证的,因此用户名和密码需要预先在weblogic的安全域里设置好。

以上为Message -Level Custom Security的简单设置步骤

常见报错:


soapenv:Server
BEA-386101: Missing authentication token

原因为:在ProxyServices中设置的user和password与soap header中设置token不一致。

如在soap header中设置如下:

0 0