欢迎来到天天文库
浏览记录
ID:45919853
大小:171.29 KB
页数:10页
时间:2019-11-19
《如何创建安全的Web Service》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、如何创建安全的WebService 我们在使用WebService的过程中很多情况是需要对webservice请求做认证的对于运行在web容器里的应用程序来说可能会比较简单一些通常可以通过filter来做一些处理但是其实CXF本身也提供了对webservice认证的方式 1.首先是一个简单pojo package.googlecode.garbagecan.cxfstudy.security; publicclassUser{ privateStringid; privateStringname; private
2、Stringpassword; publicStringgetId(){ returnid; } publicvoidsetId(Stringid){ this.id=id; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicStringgetPassword(){ returnpassword; } publicvoids
3、etPassword(Stringpassword){ this.password=password; } } 2.WebService接口 package.googlecode.garbagecan.cxfstudy.security; importjava.util.List; importjavax.jws.WebMethod; importjavax.jws.WebResult; importjavax.jws.WebService; @WebService publicinter
4、faceUserService{ @WebMethod @WebResultListlist(); } 3.WebService实现类 package.googlecode.garbagecan.cxfstudy.security; importjava.util.ArrayList; importjava.util.List; publicclassUserServiceImplimplementsUserService{ publicListlist(){ Listusers=newArra
5、yList(); for(inti=0;i<10;i++){ Useruser=newUser(); user.setId(+i); user.setName(user+i); user.setPassword(password+i); users.add(user); } returnusers; } } 4.Server端Handler其中使用了一个Map来存放用户信息真是应用中可以使用数据库或者其它方式获取用户和密码 package.googlecode.garbagecan.
6、cxfstudy.security; importjava.io.IOException; importjava.util.HashMap; importjava.util.Map; importjavax.security.auth.callback.Callback; importjavax.security.auth.callback.CallbackHandler; importjavax.security.auth.callback.UnsupportedCallbackException; impor
7、torg.apache.ws.security.WSPasswordCallback; publicclassServerUsernamePasswordHandlerimplementsCallbackHandler{ //keyisusername,valueispassword privateMapusers; publicServerUsernamePasswordHandler(){ users=newHashMap(); users.put(admin,admin); } publicvoidh
8、andle(Callback[]callbacks)throwsIOExcept
此文档下载收益归作者所有