`
michael152630
  • 浏览: 5797 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

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 Trust Custom Identity and Custom Trust Custom Identity and Java Standard Trust Demo 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:选择 Keystores Files 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 Requested Client Certs Requested But Not Enforced Client 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

分享到:
评论

相关推荐

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    1.4.2 WebLogic的基本配置 25 1.4.3 修改WebLogic的服务端口 29 1.4.4 部署Web应用 30 1.5 NetBeans的安装和使用 32 1.5.1 NetBeans的下载和安装 32 1.5.2 使用NetBeans开发Java EE应用 33 1.5.3 打开NetBeans项目 ...

    java面试题

    76.6. 如何在weblogic中进行ssl配置与客户端的认证配置或说说j2ee(标准)进行ssl的配置 87 76.7. 如何查看在weblogic中已经发布的EJB? 87 76.8. 说说在weblogic中开发消息Bean时的persistent与non-persisten的差别 87...

    最新Java面试宝典pdf版

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java面试笔试资料大全

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    JAVA面试宝典2010

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java面试宝典-经典

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java面试宝典2010版

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    java面试题大全(2012版)

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java面试宝典2012版

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java面试宝典2012新版

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    java面试宝典2012

    91 4、请写出用于校验HTML文本框中输入的内容全部为数字的javascript代码 92 5、说说你用过那些ajax技术和框架,说说它们的区别 92 四. Java web部分 93 1、Tomcat的优化经验 93 2、HTTP请求的GET与POST方式的区别 ...

    超级有影响力霸气的Java面试题大全文档

    但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理, EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。 24、...

    java 面试题 总结

    但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。 21、...

    h_JAVA 2应用编程150例.rar

    实例145 安装配置WebLogic 529 实例146 整合Tomcat与IIS 531 实例147 整合Tomcat与Apache 532 实例148 整合JBuilder与WebLocig 533 实例149 安装、编译和执行一个MIDlet 535 实例150 构造Jsp/javabean开发和发布环境...

    java应用软件程序设计

    525 实例143 安装配置Tomcat 526 实例144 安装配置Apache 528 实例145 安装配置WebLogic 529 实例146 整合Tomcat与IIS 531 实例147 整合Tomcat与Apache 532 实例148 整合JBuilder与WebLocig 533...

    Java 面试宝典

    一. Java 基础部分..................................................................................................................... 7 1、一个".java"源文件中是否可以包括多个类(不是内部类)?...

Global site tag (gtag.js) - Google Analytics