如何解决密钥库被篡改,或密码不正确 - Java Springboot 应用
我知道这个问题已被问过多次,但我似乎仍然无法解决它。我正在尝试从 SpringBoot 应用程序连接到 Azure-sql
db 并不断遇到此错误:
Caused by: java.io.IOException: Keystore was tampered with,or password was incorrect
at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:783) ~[na:1.8.0_251]
Caused by: java.security.UnrecoverableKeyException: Password verification Failed
我有一个 Rapidssl.jks 文件,我将它添加到应用程序的 VM 参数中以通过类似于 "PKIX path building failed" and "unable to find valid certification path to requested target"
我在 MacBook
并尝试使用以下方法创建自签名证书:
sudo keytool -export -keystore rapidssl-36.1.2.jks -file selfsign.crt
并使用:sudo keytool -import -keystore "cacerts" -file "/Users/Documents/cert/selfsign.crt" -alias rapidssl
在 /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/jre/lib/security
目录中运行导入它。我完成了这些步骤,但仍然无法克服错误。有什么建议/推荐吗?
我使用的是 Java 8 (zulu jdk),SpringBoot:2.0.4-RELEASE,MacBook OS Catalina 10.15.7
解决方法
您命令中的引号似乎是问题所在:
sudo keytool -import -keystore "cacerts" -file "/.../selfsign.crt" ...
密钥库 cacerts
以及 file
不应在引号之间。
您已经在正确的路径 (jre/lib/security) 上执行它,所以试试这个:
sudo keytool -import -keystore cacerts -file /.../selfsign.crt -alias rapidssl
keytool 命令的示例:
,添加以下所有属性:
- server.ssl.key-store
- server.ssl.key-store-type=JKS
- server.ssl.key-store-password
- server.ssl.key-alias
- server.ssl.key-密码
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。