jax_ws

jax-ws之webservice security(安全)续

旧街凉风 提交于 2019-12-05 21:36:23
前言: 第一天里说了如何用jax-ws去结合ssh框架。 在今天的教程中将会向大家详细讲述一个ws-security中的一个传统的”基于handler”来认证客户端传来的用户名密码的webservice. 客户端传过来一对用户名和密码,服务端进行认证。 当然,我们此处说这个用户名和密码的传送,那可不是用下面的这种形式来传送的哦: http://xxx.do?username=xxx&password=xxx 。 我们这个用户名和密码是带在soap报文中的, jax-ws用一个handler专门用于处理soap报文的。 一、书写Handler 1. 1 handler类 package ctsjavacoe.ws.fromjava; import java.util.*; import javax.servlet.http.HttpServletRequest; import javax.xml.namespace.QName; import javax.xml.soap.*; import javax.xml.ws.handler.MessageContext; import javax.xml.ws.handler.soap.*; import javax.xml.ws.soap.SOAPFaultException; import org.apache.cxf

jax-ws之webservice security(安全)

只谈情不闲聊 提交于 2019-12-05 21:36:10
前言: 在今天的学习中,我们讲开始过渡到一个真正的websecurity例子。 第二天中我们知道了如何使用handler来处理客户端提交上来的用户名与密码,而在今天的学习中,我们将会使用服务端预先配置的用户名与密码来authenticate客户端提交上来的值。 相对于第二天的学习,如果客户端提交的用户名与密码输错,但还是能够与服务端建立http连接来说,第三天中的例子的安 全性则更高,当客户端提交上来的用户名与密码错误则更本不可能和服务端建立起有效的http连接。该例子同时适用于一切J2EE AppServer,比如说:IBMWAS, ORACLE WEBLOGIC。 同时,通过该例子将讲述ws-security与相关的ws-policy进而一步步过渡到QoS。 一、配置服务端的相关角色 1.1 配置J2EE AppServer中的相关用户名与密码 打开tomcat下的cnof/tomcat-user.xml文件: <?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="operator"/> <user username="tomcatws" password="123456" roles="operator"/> </tomcat-users> 通过上述配置

jax-ws之webservice security(安全)续

一世执手 提交于 2019-12-05 00:31:17
前言: 在前面的“5天学会jaxws-webservice教程”,我们讲了基本的jax-ws的使用。 Jax-ws是业界公认的标准的webservice,它已经成为了一个行业界标准,包括cxf,其实cxf也是调用的jax-ws为标准的基于spring的webservice框架。 同时,大家都知道世界上除了j2ee体系外,还存在.net体系,同时有过相关经验的同事们也知道用ws-security无非就是涉及到“加密”,“解密”,而JAVA的x509所涉及到的证书,公钥,私钥与.net体系之间是无法通用的。 但是webservice是因该属于无所谓语言的一个标准,因此为了让j2ee的webservice与.net的webservice能够互相调用(当然包括ws-security里的加密解密),SUN与微软联合推出了一个:WCF。 WCF是Windows Communication Foundation的缩写,原来代号为Indigo,它是MS为SOA(Service Oriented Architecture 面向服务架构)而设计的一套完整的技术框架。利用它能够开发出分布式(Distributed)应用程序,而且开发难度相比以前 的.NETRemoting和ASP.NETXML Web Service等都有了大幅度的降低。 那么搞J2EE的人如何去支持这个WCF呢?我们不可能去用