上一篇提到在NGINX中配置了双向SSL的验证, 签名信息及公私钥对都是用OPENSSL生成. 并且用生成的CLIENT端证书放在浏览器上可正常调用,但WEB-SERVICE方式调用却没有试过. 平常WEB-SERVICE的双向SSL都是用KEYTOOL工具生成公私钥信息及签名信息,所以这次同样试一下用KEYTOOL来处理OPENSSL的证书.
很感谢这篇博文:http://wenku.baidu.com/view/a00daa2a3169a4517723a351.html 给我带来的灵感.
接着上一篇http://lvjun106.iteye.com/blog/1892533 , 我用OPENSSL生成了ca根证书的私钥ca.crt和客户端client.crt.
接着我用KEYTOOL工具把这两个私钥都同时导入到信任库中client.keystore
keytool -import -v -trustcacerts -alias ca_root -file ca.crt -storepass 1111 -keystore client.keystore
keytool -import -v -alias ipclient_private_key -file client.crt -keypass 1111 -storepass 1111 -keystore client.keystore
接着,可以查看一下这个keystore 的详细信息keytool -list -v -keystore client.keystore
JAVA客户端调用SSL WEB SERVICE
System.setProperty("javax.net.ssl.keyStore", "F:/workspace/TemporaryProgram/cert/client02.p12"); System.setProperty("javax.net.ssl.keyStorePassword","client02"); System.setProperty("javax.net.ssl.keyStoreType","PKCS12"); System.setProperty("javax.net.ssl.trustStore", "F:/workspace/TemporaryProgram/cert/client.keystore"); System.setProperty("javax.net.ssl.trustStorePassword","client02"); System.setProperty("javax.net.ssl.trustStoreType", "jks"); String endpointURL = "https://192.168.40.129:8443/XXXX/services/supplier?wsdl";// // Web服务端点地址 Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new java.net.URL(endpointURL)); call.setOperationName(new QName("http://test.com", "getSupplierByCode"));// 设置操作的名称。 call.addParameter("systemSecurityCode", XMLType.XSD_STRING, ParameterMode.IN);// 参数的类型 call.addParameter("code", XMLType.XSD_STRING, ParameterMode.IN);// 参数的类型 call.setReturnType(XMLType.XSD_STRING);// 返回的数据类型 Double ret = (Double) call.invoke(new Object[] { "fdsaf","fdsafdas"});// 执行调用 System.out.println("使用HTTP协议来作为Web服务的传输协议!"); System.out.println("已经成功调用。请参看服务端的输出!");
相关推荐
最近放开了https服务,安全组扫描出新的漏洞,现对原OpenSSL 1.0.1g版本升级到OpenSSL 1.1.0k,同时重新编译OpenSSH及nginx,在此提供升级脚本,仅供参考
通过OpenSSL生成的ssl证书,用于windows下用nginx配置https服务器( OpenSSL创建证书) 无需再下载OpenSSL,配置OpenSSL相关环境,在进行命令生成证书
这是采用调用opessl生成的证书。方法封装在jar包。有些原有的
openssl-1.1.1-stable-SNAP-20190915
使用openssl生成单向ssl证书,此方法生成的证书可以用于基于boost.asio库的SSL通讯测试中。基于基于boost.asio库SSL通讯测试程序可参见本人其他资源。
openssl10
arm 架构的 openssl10
openssl-devel-1.0.1e-57.el6.x86_64.rpm离线安装时的相关依赖库: openssl-devel-packages\e2fsprogs-1.41.12-22.el6.x86_64.rpm openssl-devel-packages\e2fsprogs-libs-1.41.12-22.el6.x86_64.rpm openssl-...
前端开源库-openssl-self-signed-certificateOpenSSL自签名证书,用于开发的自签名证书,使用OpenSSL生成。有效期至4754年(4754-06-06)。
使用openssl生成证书,有详细的步骤说明,亲测可用。还有一些关于证书的一些常用转换操作介绍
openssl-devel-1.1.1o-1.el7.x86_64 openssl-devel openssl openssl rpm包
1.离线安装gcc pcre-devel openssl-devel zlib-devel 下载路径 http://mirrors.163.com/centos/7.4.1708/os/x86_64/Packages/ autogen-libopts-5.18-5.el7.x86_64.rpm cpp-4.8.5-16.el7.x86_64.rpm gcc-4.8.5-16....
210-openssl-1.1.x-compat.patch
文件为 openssl-1.1.1-stable-SNAP-20200323.tar.gz
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装
openssl-otc-pol-devel-0.9.8h-1.1.i586.rpm
文章《将 Rust 程序编译为 WebAssembly》可能用到的资源:Win64OpenSSL-3_1_0.exe
OpenSSL与网络信息安全-基础、结构和指令
下载后,上传到centos中,执行如下命令:rpm -Uvh ./*.rpm --nodeps --force
OpenSSL-for-iPhone-master.zip