证书登陆问题
来源:互联网 发布:淘宝开直通车有用吗 编辑:程序博客网 时间:2024/05/05 03:10
>> ZC程序迁移到linux仍不能使用证书登陆,经过同吉大、oracle近一个月的交流,大概发现问题的原因:在linux下(只在linux+weblogic9X以上存在该问题)pmiToolkits.INI参数名称不能变动否则,吉大接口读取的时候会以为没有配置接口,直接读取默认地址,导致证书无法获取权限,需要研发配合如下工作:
>>1、按吉大的要求使用pmitookits.INI文件,例如:某某ServerIP使用某某IP名称;
>>2、zc接口按标准pmitookits.INI文件取参数名字。(附近pmitookits.INI参数名为ZC系统正在使用的需要修改)
>>> 经过研究分析,Weblogic9.x及后续版本中,在服务器端,对获取的客户证书时,采用了不兼容中文的编码格式。
>>>因此,需要对获取到的证书进行转码处理,处理方式关键代码如下(参照一些代码,修改中间件改造代码即可):
>>> //gaX509Cert为从request中获取到的证书对象。
>>> ByteArrayInputStream bais = new ByteArrayInputStream(gaX509Cert.getEncoded());
>>>//构建一个CertificateFactory 对象。
>>> CertificateFactory cf = CertificateFactory.getInstance("X.509");
>>>//重新构建证书对象。
>>> gaX509Cert = (X509Certificate)cf.generateCertificate(bais);
>>>//关闭流。
>>> bais.close();
>>>
>>>//然后,重新获取证书DN、扩展域值时,即可消除中文乱码。
>>>String certDN = gaX509Cert.getSubjectDN().toString();
>>>//...
>>>注意,需要在页面或Java代码中import相应的包。
>>>java.security.cert.CertificateFactory
>>>java.io.ByteArrayInputStream
>>1、按吉大的要求使用pmitookits.INI文件,例如:某某ServerIP使用某某IP名称;
>>2、zc接口按标准pmitookits.INI文件取参数名字。(附近pmitookits.INI参数名为ZC系统正在使用的需要修改)
>>> 经过研究分析,Weblogic9.x及后续版本中,在服务器端,对获取的客户证书时,采用了不兼容中文的编码格式。
>>>因此,需要对获取到的证书进行转码处理,处理方式关键代码如下(参照一些代码,修改中间件改造代码即可):
>>> //gaX509Cert为从request中获取到的证书对象。
>>> ByteArrayInputStream bais = new ByteArrayInputStream(gaX509Cert.getEncoded());
>>>//构建一个CertificateFactory 对象。
>>> CertificateFactory cf = CertificateFactory.getInstance("X.509");
>>>//重新构建证书对象。
>>> gaX509Cert = (X509Certificate)cf.generateCertificate(bais);
>>>//关闭流。
>>> bais.close();
>>>
>>>//然后,重新获取证书DN、扩展域值时,即可消除中文乱码。
>>>String certDN = gaX509Cert.getSubjectDN().toString();
>>>//...
>>>注意,需要在页面或Java代码中import相应的包。
>>>java.security.cert.CertificateFactory
>>>java.io.ByteArrayInputStream
0 0
- 证书登陆问题
- 关于oracle 登陆ie信任证书问题
- Putty证书登陆出现server refused our key问题
- ssh证书登陆
- ssh证书登陆部署
- ssh证书登陆
- ssh 证书登陆
- SSH证书登陆配置详解
- SSL证书SOCKET登陆JAVA
- 证书问题
- 证书问题
- 登陆问题
- 使用SSH证书登陆远程服务器
- hrome登陆12306跳过证书下载
- SSH证书登陆(简单解释)
- Linux开启SSL证书登陆方式(测试正常登陆)
- 关于双证书问题
- ie证书问题
- 黑马程序员 C#序列化和反序列化简介
- Andriod 从源码的角度详解View,ViewGroup的Touch事件的分发机制
- myBatis中$和#区别
- Machine learning in 10 pictures
- 数据挖掘 算法小结 1
- 证书登陆问题
- Dalvik、JVM学习笔记
- SVN命令使用详解
- OpenCV在Qt中显示视频的两种方法
- 题目1191:矩阵最大值
- VI编辑器常用技巧
- s:if的用法
- webrtc中BEGIN_PROXY_MAP代码功能介绍
- C语言sin和cos函数的实现