Weblogic91下SSL的配置

Weblogic91下SSL的配置

      前段时间公司因业务需要,需在WLS91 下使用CA认证,经过查询大量资料后,终于将其配置成功了,现将详细配置步骤贴出来,

希望对有此需求的同仁有所帮助.

步骤如下:

  

1.       成对的生成私钥(private key)和公钥(public certificate<o:p></o:p>

cmd 下进入jdk/bin目录下执行:<o:p></o:p>

keytool –genkey –alias mykey–keyalg RSA –keysize 1024 –dname “CN=<st1:chsdate isrocdate="False" w:st="on" year="1899" day="30" islunardate="False" month="12">10.8.2</st1:chsdate>.236, OU=soft, O=whty, L=<st1:place w:st="on"><st1:state w:st="on">hubei</st1:state></st1:place>, S=E, C=CN” –keypass 111111 –keystore ./mykey.jks –storepass 111111

此时产生的密钥对有效期为180天,如果要更改其有效期,可在上述命令中加入:

-validity <st1:chmetcnv w:st="on" tcsc="0" unitname="”" sourcevalue="365" negative="False" numbertype="1" hasspace="False">365</st1:chmetcnv>(一年)

<o:p> </o:p>

说明:alias是别名;keyalg指算法,keytool允许2种算法DSARSA,但这里WLS需要RSAkeysize的范围可以是5121024WLS licenses的可导出长度是512dname指可区别的名字用于标识,必须按照一定的格式和顺序,其中(CN,域名或IP,不能有空格,OU:组织中部门的名字,O:组织名,L:城市名,S:省名,C:国家简写);keypass私钥的密码;keystore创建的文件的名字,以及地址(./放在当前目录);storepass keystore的密码

<o:p> </o:p>

2.       证书请求的生成,它用于到CA机构获得证书<o:p></o:p>

keytool –certreq –alias mykey –sigalg “MD5withRSA” –file ./certreq.pem –keypass 111111 –keystore ./mykey.jks –storepass 111111

<o:p> </o:p>

说明:sigalg是签名算法,对于RSA类型的私钥,需要的默认签名算法是MD5withRSAfile是提供CRS文件的位置和名字;keypass是私钥的密码;keystore是指定keystore文件;storepasskeystore的密码

<o:p> </o:p>

3.       登陆CA服务器,申请CA

 

将第二步生成的certreq.pem用记事本打开,用里面的内容到CA服务器上申请CA,申请成功后,将获得两个文件,“server.cer,certnew.p7b

4.       CA token.(注:token为usb key).

5将“server.cer,用记事本打开,另存为”serv.er.pem”,双击“certnew.p7b,如下图:<o:p></o:p>

<v:shape id="_x0000_i1036" style="WIDTH: 415.5pt; HEIGHT: 193.5pt" type="#_x0000_t75"><v:imagedata o:title="get ca step5" src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image017.jpg"></v:imagedata></v:shape>

两次双击右面区域文件夹,右键“IFCP Root CA->所有任务->导出,保存为“rootca.cer,

右键“IFCP Web Logon CA->所有任务->导出,保存为“subrootca.cer

将所生成的“mykey.pem,rootca.cer,subrootca.cercopy jdk/bin/

6.导入到custom trust keystore,使用keytool的标记import,命令如下:<o:p></o:p>

keytool -import -alias rootca -trustcacerts -file ./rootca.cer -keystore ./mykeytrust.jks -storepass 111111<o:p></o:p>

遇到是否信任该证书提示时,输入y

keytool -import -alias subrootca -trustcacerts -file ./subrootca.cer -keystore ./ mykeytrust.jks -storepass 111111<o:p></o:p>

最后将从CA机构获得签名证书mykey.pem导入到custom identity keystore,命令如下:

keytool -import -alias server -file ./server.pem -keypass 111111 -keystore ./mykey.jks -storepass 111111<o:p></o:p>

此时共生成6个文件,它们分别是“mykey.jks, mykeytrust.jks, certreq.pem,mykey.pem,rootca.cer,subrootca.cer,将它们copy weblogic安装目录下<o:p></o:p>

如: bea\weblogic91\samples\domains\wl_server<o:p></o:p>

7.配置weblogic ssl,weblogic默认http端口7001禁用,启用SSL端口7002(SSL Listen Port Enabled,勾选)<o:p></o:p>

8.进入keystores选项,如下图:<o:p></o:p>

<o:p> </o:p>

<v:shape id="_x0000_i1037" style="WIDTH: 414.75pt; HEIGHT: 259.5pt" type="#_x0000_t75"><v:imagedata o:title="get ca step6" src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image019.jpg"></v:imagedata></v:shape><o:p></o:p>

Keystores:选择为:Custom Identity and Command Line TrustCustom Identity and Custom TrustCustom Identity and Java Standard TrustDemo Identity and Demo Trust,

Identity区域<o:p></o:p>

Custom Identity Keystore:输入bea/weblogic91/samples/domains/wl_server/mykey.jks<o:p></o:p>

Custom Identity Keystore Type:输入JKS<o:p></o:p>

Custom Identity Keystore Passphrase:输入密码前几步所设为111111<o:p></o:p>

Trust区域<o:p></o:p>

Custom Trust Keystore: 输入bea/weblogic91/samples/domains/wl_server/ mykeytrust.jks<o:p></o:p>

Custom Trust Keystore Type:输入JKS<o:p></o:p>

Custom Trust Keystore Passphrase:输入密码前几步所设为111111<o:p></o:p>

然后点击“save”按钮,<o:p></o:p>

9.切换到“SSL”选项, 如下图:<o:p></o:p>

<v:shape id="_x0000_i1038" style="WIDTH: 414.75pt; HEIGHT: 259.5pt" type="#_x0000_t75"><v:imagedata o:title="get ca step7" src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image021.jpg"></v:imagedata></v:shape><o:p></o:p>

Identity and Trust Locations:选择KeystoresFiles or Keystore Providers (Deprecated),

Private Key Alias:输入mykey<o:p></o:p>

Private Key Passphrase: 输入密码前几步所设为111111<o:p></o:p>

然后点击“Advanced”,进入下一页面,如下图:<o:p></o:p>

<v:shape id="_x0000_i1039" style="WIDTH: 414.75pt; HEIGHT: 259.5pt" type="#_x0000_t75"><v:imagedata o:title="get ca step8" src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image023.jpg"></v:imagedata></v:shape><o:p></o:p>

Two Way Client Cert Behavior:选择为Client Certs Not RequestedClient Certs Requested But Not EnforcedClient Certs Requested and Enforced,

然后点击“save,至此webloigc sever keystores&SSL已经配置完毕,重启服务器

10.测试<o:p></o:p>

https://10.8.2.236:7002/csc/login_csc.jsp, 如果已经插入token,会提示选择CA ,而后会提示输入PIN,如果pin码正确,会进入login_csc.jsp

注:1.此配置在IE6 ,IE7上测试成功

(此后访问系统是要用https协议, 登录地址:https://10.8.2.236:7002/csc/login_csc.jsp

2.如果改成token直接登录,不用进入login_csc.jsp,而是直接进入业务页面,可作如下更改

在登录的时候,直接读取token中的用户名,无需密码

在登记模块中,添加如下代码:

try{

<o:p> </o:p>

      String certKey="javax.servlet.request.X509Certificate";

Object o = request.getAttribute(certKey);

       java.security.cert.X509Certificate[] cert =null;

         if( o instanceof java.security.cert.X509Certificate[] ){            

              cert = ( java.security.cert.X509Certificate[] )o;

         }

Principal p1= cert[0].getSubjectDN();

String userId = p1.getName();//登录用户名<o:p></o:p>

}

注:因CA服务器不同,第4步有所变化.

E-mail:michael152630@gmail.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值