校车发车管理制度:Tomcat+Axis2 WebService配置SSL单向验证
来源:百度文库 编辑:偶看新闻 时间:2024/05/03 03:27:45
Tomcat+Axis2 WebService配置SSL单向验证
分类: Java 2010-12-13 15:01 713人阅读 评论(0) 收藏 举报为了使客户端能够通过https 访问webService,需要给tomcat和axis2配置ssl.分别在服务器端和客户端做配置:
服务器端:
1. 在服务器端生成证书
建立文件夹c:/crt,在dos窗口中执行以下命令。
view plaincopy to clipboardprint?
- cd c:/ crt
- keytool -genkey -keyalg RSA -dname "cn=Jim,ou=sango,o=none,l=china,st=beijing,c=us" -alias server -keypass Aa1234 -keystore server.jks -storepass Aa1234 -validity 3650
在c:/crt 文件夹下生成证书:server.jks
keytool是JDK自带的证书管理命令。
2. 配置Tomcat的SSL
编辑C:/apache-tomcat-6.0.29/conf/server.xml, 添加以下代码:
view plaincopy to clipboardprint?
- maxThreads="150" scheme="https" secure="true"
keystoreFile是证书的位置,keystorePass是生成证书时指定的密码。
验证配置:https://localhost:8443/
3. 配置Axis2的SSL
编辑C:/apache-tomcat-6.0.29/webapps/axis2/WEB-INF/web.xml,添加以下代码:
view plaincopy to clipboardprint?
-
8443
客户端,这里所说的客户端不是浏览器,而是程序中调用WebService的程序
1. 导入服务器端的证书
在客户端建立文件夹c:/crt,把服务器端生成的证书server.jks拷贝到c:/crt,在dos窗口中分别执行以下命令。
view plaincopy to clipboardprint?
- cd c:/ crt
- keytool -export -alias server -keystore server.jks -file server.cer
- cd C:/Program Files/Java/jdk1.6.0_20/jre/lib/security/
- keytool -import -trustcacerts -alias server -keystore cacerts -file c:/crt/server.cer -storepass changeit
上个命令中的C:/Program Files/Java/jdk1.6.0_20/jre/lib/security/cacerts 必须指向运行时使用的JRE的对应文件夹。
2. 在程序中添加代码指定证书位置,在xxxxFactory类的getXXXStub方法中调用客户端的代码之前加上: view plaincopy to clipboardprint?
- System.setProperty("javax.net.ssl.trustStore"," C:/Program Files/Java/jdk1.6.0_20/jre/lib/security/cacerts" );
- System.setProperty("javax.net.ssl.trustStorePassword","Aa1234");
这样配置好后,就可以通过https调用客户端了。生成客户端的时候,可以用http生成。http和https生成的客户端是一样的。
原文地址:http://blog.csdn.net/honglei915/archive/2010/12/13/6073290.aspx
分享到: