最近这几天都在使用CXF作为webservice的组件,试图将公开的webservice加入到保护的范围内。
添加到保护的方法有三种:
(1)指定地址访问,即指定一些IP地址,只有这些地址的请求我们的接口才处理。
这种方法我在开发中有使用到,可以通过WEB容器中的Filter类来实现,
只需要检查请求的地址是否在我们指定的地址列表中就可以了。
优点:处于请求响应链的前端,响应非常迅速,所以消耗的资源很少。
缺端:使用这种方法只能检查指定地址的请求,通常只能应用的小范围内,如局域网。
另外使用这种验证方法,无法进行权限的检查,一旦通过验证将可以执行所有公开的接口。
(2)用户名/密码对验证,使用指定的用户名密码进行验证
这种方法适合于具体用户的检查,进而可以检查其是否有权限执行其请求的操作.
优点:可以只准确地检查用户,甚至验证权限。
缺点:这种方式不能和WEB应用的登录一样,只需要验证一次就可以了;必须
每个请求都检查,如果需要使用这种方法去做,还需要处理好类似登录/退出机制。
(3)使用HTTPS进行验证,这种方法应该也可以具体的验证证书来自哪个用户,进而检查其权限。
优点:安全更有保证
缺点:配置复杂,对客户端程序员要求很比较高。
注意事项:
使用CXF进行WEBService交互时,特别是进行客户端工作时,最好将服务端和客户端的环境剥离开来。
这几天的工作教会了我这个事情(今天上午在测试客户端代码时出现莫名其妙的错,最后发现是JAR包冲突,
在服务器的环境中运行客户端程序时,程序加载了过时的JAR)。
分享到:
相关推荐
Apache CXF Web Service Development
Apache CXF Web Service Development 源码
实战Web Service 之 CXF 实战Web Service 之 CXF
cxf3.1.4发布restful风格的web service
Spring集成Cxf暴露WebServices示例
Ⅰ)调用CXF提供的wsdl2java工具,根据WSDL文档生成相应的Java代码(任何语言实现web service都要暴露WSDL文档); Ⅱ)找到wsdl2java所生成的类中一个继承了Service的类(该类的实例可当工厂使用); Ⅲ)调用...
在WebSphere发布CXF注意事项
CXF Spring Web Service 程序,希望对大家有用!!
Web Service学习-CXF开发Web Service实例demo(一)
使用CXF开发Web Service,包含服务器端和客户端
Spring MVC、CXF、Web Service
电子书:Apache cxf web service development
Spring CXF Mybatis 发布 Web Service 实例
Springboot整合CXF发布Web service和客户端调用(用户和密码验证)打开及用
web service apache-cxf-2.4.1.rar 框架依赖包
实战Web Service with CXF cxf非常好的ppt教程