WebService系列:为WebService添加安全性

为了保证发布到外网的Web Services不被非法使用,在调用Web Services之前需要进行必要的安全验证。

如前面文章中发布的GreetingWords的Web Service,希望只有授权的用户才具备调用它的权限,

虽然它的wsdl描述文件可以被任何人查看,但是如果不具备相应权限的人则无法通过调用它返回有用的信息。

 

一、设置Web Service安全性认证

 

为了实现这样的功能,按照向导在JDeveloper创建完Web Services后,添加验证信息,步骤如下:

  1. 选择端口,并保证使用“Text Password”验证选项
  2. 左边选择安全下的验证菜单,设置如下图的选项
  3. 从新发布Web Service

选中 Security 项,并选择GreetingWordsSoapHttpPort,按照下图设置选项

选择 Security–>Authentication 项,右边选择GreetingWordsSoapHttpPort,按照下图进行选项的设置

二、测试Web Service

 

上面添加了Web Service的安全性认证发布之后,在浏览器中输入wsdl的端口地址,如:

http://aronezhang:8888/aronehome/GreetingWordsSoapHttpPort

浏览器显示Web Service的测试页面,输入参数,点击Invoke按钮调用Web Services

Web Services执行返回错误,错误代码为:wsse:InvalidSecurity,错误消息为:Missing <wsse:Security> in SOAP Header

这个错误是由于已发布的Web Services添加了安全验证,而调用的时候没有把相关的验证信息发送给它,导致SOAP Header没有包括安全验证需要的信息。

 

我们可以通过测试页面的功能查看到这个时候发送给服务器的消息是:




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值