Web Service安全(一)——Basic验证

最简单的WebService安全要求,就是要求HTTP传输层的Basic验证。

在WebLogic中,只要你设置你的WebService只向个别角色或者用户开放,那么,客户端就必须提供某种验证资料,例如用户名和密码。

服务端的做法有两种:

一:在代码上设置这个安全要求

importweblogic.jws.security.RolesAllowed;

importweblogic.jws.security.SecurityRole;

@RolesAllowed({

@SecurityRole(role=”Adminstrators”,mapToPrincipals{“weblogic”}),

})

@WebService

publicclassMyService{...}

二:在AdminConsole上设置安全要求

点击你的WebService,选择Security->Policy设置你的具体要求。

一般来说,方法二更加灵活,它跟代码无关,可以动态修改。

客户端的做法也简单,JAX-WS的写法类似如下:

MyServiceservice=newMyServiceService().getMyServicePort();

BindingProviderbp=(BindingProvider)service;

Map<String,Object>context=bp.getRequestContext();

context.put(BindingProvider.USERNAME_PROPERTY,"myusername");

context.put(BindingProvider.PASSWORD_PROPERTY,"mypassword");

转载:http://www.java123.net/JavaEE/Web_Serviceanquan_yi___Basicyanzheng_51025.html

相关推荐