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