得意犹堪夸世俗,诏黄新湿字如鸦。这篇文章主要讲述在Glassfish Application Server中导入SSL证书相关的知识,希望能为你提供帮助。
我正在尝试在Netbeans IDE上的项目上启用SSL并使用Glassfish应用程序服务器。
对于SSL;
我按照下面的程序。
- 生成密钥库>
keytool -genkey -alias client_keystore -keyalg RSA -keystore client_keystore.jks -keysize 2048
- 生成CSR>
keytool -certreq -alias client_keystore -file yourcsrname.csr -keystore client_keystore.jks
- 将CSR提交给另一方。
- 从聚会上收到三张.pem证书。我将.pem转换为.crt为
openssl x509 -outform der -in your-cert.pem -out your-cert.crt
- 将证书导入我的密钥库,如下所示;
keytool -import -trustcacerts -alias intermediate-file GoDaddy_Intermediate.crt -keystore client_keystore.jks
keytool -import -trustcacerts -alias root -file GoDaddy_Root.crt -keystore client_keystore.jks
【在Glassfish Application Server中导入SSL证书】
keytool -import -trustcacerts -alias BizSwitch -file BizSwitch.crt -keystore client_keystore.jks
- 将密钥库导入默认的glassfish密钥库>
keytool -importkeystore -srckeystore ~/Downloads/ipay/client_keystore.jks -destkeystore keystore.jks
- 重启glassfish服务器。
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
例外。重新启动时,从glassfish日志中我看不到加载的证书。
我错过了什么吗?
答案你的密钥库是在/ domains / domain1 / config文件夹中吗?
看起来像glassfish没有指向正确的密钥库,因为您正确导入了证书。
另一答案您在别名
client_keystore
下创建了密钥对条目,因此您需要将服务器证书导入该别名和条目。假设BizSwitch是您的服务器名称,您需要-importcert -file BizSwitch.crt -alias client_keystore -keystore client_keystore.jks
。如果你弄错了那个命令的输出应该是Certificate reply was installed
NOT Certificate was added
。 (后者适用于单独的CA证书,但不适用于服务器证书。)此外,您不需要转换为DER。
keytool
(或者更确切地说是CertificateFactory
)已经能够阅读PEM证书超过十年,甚至是自2012年j7以来的PEM-comments评论。(对于其他一些加密对象,例如私钥,情况并非如此。)另一答案Yous还应该将证书导入JVM的信任库......
参考:Resolving javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed Error?
推荐阅读
- 无声安装PFX到Android系统可信CA用户密钥库
- 改进HTTPS连接无法在Android中运行
- Android(自动选择调试/发布Maps v2 api密钥())
- 用于过滤用例的AppSync DynamoDB解析器
- 将App Engine URL分派给Compute Engine实例
- 我可以在不使用gradle的情况下使用Xamarin.Android中的Android数据绑定库吗(不是MVVM for dotnet)
- 如何在android中获取cognito中的其他用户数据
- 保护REST API以供Android客户端使用
- 关闭xp默认共享的小攻略