`
michael152630
  • 浏览: 5959 次
  • 性别: 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

分享到:
评论

相关推荐

    apache+weblogic 9

    - **位置**:BEA的插件模块位于WebLogic 9.X的安装目录中,例如`weblogic91\server\plugin`。 - **复制插件**:根据操作系统的类型和所需的功能(如SSL加密级别),选择相应的插件文件(如`mod_wl_20.so`或`mod_wl...

    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面试题大全(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、...

    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...

Global site tag (gtag.js) - Google Analytics