WebLogic Server 10.3 SSL配置及SSL协议传输的WebSevice调用

 WebLogic Server 10.3.2.0   SSL 配置及 SSL 协议传输的 WebSevice 调用

作 者: 風 絮

 

 2010-7-24
Version : 1.0


博客地址:
http://xiejin2008.iteye.com/

 

 

 

目录
1.1 文档介绍 ....................................................................................................................... 2
1.1.1 文档目的 ........................................................................................................... 2
1.1.2 文档范围 ........................................................................................................... 2
1.2 环境说明 ....................................................................................................................... 3
1.3 通过keytool 工具生成建立密钥对(标识密钥库) ................................................ 3
1.4 生成证书签发请求*.pem 文件(私有密钥) ............................................................ 3
1.5 拷贝密匙库和私密文件到域目录 ............................................................................... 3
1.6 启动weblogic,进入管理控制台 ............................................................................... 4
1.7 配置密匙库信息 ........................................................................................................... 4
1.8 配置SSL 信息 ............................................................................................................... 5
1.9 启用SSL 监听 ............................................................................................................... 6
1.10 SSL 协议测试 ................................................................................................................ 7
1.11 客户调用WebService 程序 ...................................................................................... 7
1.12 导出服务段的证书文件 ........................................................................................... 8
1.13 给服务端证书,创建客户端密匙库 ..................................................................... 12
1.14 可能发生的警告 ..................................................................................................... 13

 

1.1 文档介绍
1.1.1 文档目的
介绍WebLogic Server 10.3.2.0 的SSL 配置,单向配置,即客户端验证服务端。
以及WebService 在SSL 安全协议的传输下,客户端是怎样调用的。
1.1.2 文档范围
相关技术:
keytool 工具的使用,Weblogic 常见配置与管理,WebService 通过Xfire 框架技术进行调用,
SSL 协议通信传输流程,非对称信加密,数字签名等概念。
读者对象:
想掌握WeblogicServer SSL 配置的人员。本文默认读者已经了解以上相关技术。

 

1.2 环境说明
本文测试的环境:
Weblogic Server 版本: WebLogic Server 10.3.2.0
操作系统 :WindowXP SP2
JDK 版本:1.6.
客户端IE 版本: IE8.0

 

1.3 通过keytool 工具生成密钥对(标识密钥库)
Dos command :
keytool -genkey -v -alias weblogictest -keyalg RSA -keysize 512 -keypass xiejin -dname
"CN=127.0.0.1,OU=潇洒倜傥,O=风絮国际,L=完美City,ST=北京,C=CN" -validity 365 -keystore
D:/SSL/weblogic/weblogic_identity.jks -storepass xiejin
在命令提示符界面输入上面命令,存放路径自选(我选择的是D:/SSL/weblogic/),jks 文件名
称、alias 名称、keypass、storepass、validity time 自选。 即在D:/SSL/weblogic/ 中生成
weblogic_identity.jks 文件

 

1.4 生成证书签发请求*.pem 文件(私有密钥)
Dos command:
keytool -certreq -v -alias weblogictest -file D:/SSL/weblogic/cert_request.pem -keypass xiejin  

 -storepass xiejin -keystore D:/SSL/weblogic/weblogic_identity.jks
在D:/SSL/weblogic/目录中生成 了cert_request.pem 文件.(证书中的密钥对的私有密钥文件)

 

1.5 拷贝密匙库和私密文件到域目录
将生成的 weblogic_identity.jks 和 cert_request.pem 文件拷贝到weblogic domain 文件夹下
(我的是:C:\Oracle\Middleware\user_projects\domains\lcjptdomain)。

 

1.6 启动weblogic,进入管理控制台

 

1.7 配置密匙库信息
选择一个需要使用的server,点击进入,选择 密匙库(keystores) ,填写相应的信息。
密匙库: 选择 定制标识和定制信任
定制标识密匙库: weblogic_identity.jks
定制标识密钥库类型: jks
定制标识密钥库密码短语: xiejin
确认定制标识密钥库密码短语: xiejin
定制信任密钥库: weblogic_identity.jks
定制信任密钥库类型: jks
定制信任密钥库密码短语: xiejin
确认定制信任密钥库密码短语: xiejin
密匙库选项卡.

图一:

 

 

1.8 配置SSL 信息

选择SSL 选项卡,输入相应的信息。
SSL 选项卡
图二:

 

 

标识和信任位置: 选择 密匙库
私有密钥别名: weblogictest 第二个步骤中生成*.pem 文件中的别名alias
私有密钥密码短语: xiejin 第二个步骤中的keypass

 

1.9 启用SSL 监听
Select "General" tab,Enable SSL port and set a port value.
点击”一般信息”选项卡, 勾选 已启用 SSL 监听端口,并且设置访问端口号
一般信息选项卡:
图三:

 

 

1.10 SSL 协议测试
然后在浏览器中输入 https://127.0.0.1:7002/console ,进行测试。

 

1.11 客户调用WebService 程序
客户端浏览器版本:IE8
访问服务器WebService 的WSDL 文件. (本文默认已经部署好了一个WebService 到Weblogic)
https://127.0.0.1:7002/Xfire_1.1/services/HelloWorldSimple?wsdl

 

 

1.12 导出服务段的证书文件
单击浏览器输入框右边的小锁图标:

 

 

点击查看证书

 

 

选择选项卡:详细信息

 

 

 

点击按钮 复制到文件

 

 

点击 下一步:

 

 

选择 Base64 编码,其他格式也可以.
点击下一步保存文件:

 

 

 

 

保存文件:

 

 

 

下一步,完成 ,确定。
测试就在D:\SSL\weblogic 文件夹下面生成了myclient.cer 文件 (服务端的证书文件)

 

1.13 给服务端证书,创建客户端密匙库
Dos command:

 

keytool  -import  -noprompt  -trustcacerts  -alias myclient  -file D:/SSL/weblogic/myclient.cer
 -keystore D:/SSL/weblogic/myclient.jks  -storepass 123456
生成的密匙库文件保存在: D:/SSL/weblogic/myclient.jks
Xfire 客户端调用Https 传输的WebService 代码片段:

 

 

public static void ssl_weblogic () {         String url = "https://127.0.0.1:7002/Xfire_1.1/services/HelloWorldSimple";         System.setProperty ( "javax.net.ssl.trustStore", "D:/SSL/weblogic/myclient.jks" ); //关键代码         System.setProperty ( "javax.net.ssl.trustStorePassword", "123456" );    //关键代码         Service serviceModel = new ObjectServiceFactory ().create ( IHelloWorld.class );         try {             IHelloWorld service = (IHelloWorld) new XFireProxyFactory ().create ( serviceModel, url );             String result = service.hello ( "恭喜发财" );             System.out.println ( "result = " + result );             System.out.println ( "========================================" );             Float returnValue = service.add ( new Float ( 3.2 ), new Float ( 2.8 ) );             System.out.println ( "returnValue = " + returnValue );         }         catch (MalformedURLException e) {             e.printStackTrace ();         }     }

 

 
   

 

  

1.14 可能发生的警告
当Weblogic 配置好SSL 后,在浏览器中输入https://127.0.0.1:7002/console
此时浏览器输入框右边,可能没有显示的一把小锁,而是一个“证书错误”红色警告。
警告说:证书不受信任,没有像CA 机构提供申请。
我是这样做的:
点击查看证书,点击安装证书按钮,接下来就按照它的提示操作进行。
这步骤完了之后,我发现还是会有那个警告信息,但是经过我客户端程序测试,并不影响程
序的调用。
接着,我重启一下Weblogic 服务,但是那个警告信息还是出现了,依然没有出现小锁的图

标,但有意思的是:过了几分钟后,再重新去访问https://127.0.0.1:7002/console 到时候,
那个小锁不知道什么时候出现了,红色警告也没了。对此不是很理解,希望看到本文的人,
如果知道原因,可以帮我解惑,我猜可能有个延迟的问题。
另一个需要注意的地方是:在第一个命令中:
keytool  -genkey  -v  -alias weblogictest  -keyalg RSA  -keysize 512  -keypass xiejin  -dname
"CN=127.0.0.1,OU=潇洒倜傥,O=风絮国际,L=完美City,ST=北京,C=CN"  -validity 365  -keystore
D:/SSL/weblogic/weblogic_identity.jks  -storepass xiejin
其中因为配置的CN 为127.0.0.0
所以在浏览器中访问的时候必须为:https://127.0.0.1:7002/console/
否则同样会出现 那个红色警告,说证书错误。
如果你有域名也可以换成域名如:www.xxx.com
则需配置CN=www.xxx.com

 


全文完! 

下面附上PDF和DOC格式文档附件。

 

 

 

你可能感兴趣的:(J2EE)