java - 密钥库证书
问题描述
我想将证书添加到我的 JRE 文件夹中,这是与服务器建立受信任的 HTPPS 连接所必需的。我将证书导入到目标文件夹,它只要求输入密码并完成。由于它仍然无效,我想将其删除并重新添加,但我无法弄清楚 Keystore 的名称。
我尝试使用 cmd Keystore -list -v 列出密钥库值,它列出了我的密钥库证书详细信息以及别名、密钥库类型、提供者等,但没有列出密钥库的文件名。我尝试将 .keystore 作为默认文件名,但它会引发“文件不存在”错误。请帮助我找出我的密钥库的文件名,以便我可以删除它并重新添加。
C:\Program Files\Java\jre8\bin>keytool -list -v
Enter keystore password:
Keystore type: jks
Keystore provider: SUN
您的密钥库包含 1 个条目
别名:mykey 创建日期:2019 年 8 月 1 日 条目类型:trustedCertEntry
需要找到keystore文件名并删除。
解决方案
如果您有证书,您可以将它们重新导入特定文件,然后使用该文件。
例子:
keytool -importcert -file certificate.cer -keystore keystore.jks -alias "Alias"
这会将 certificate.cer 文件导入到密钥库名称“keystore.jks”中,并将证书保存在别名“Alias”下。通常,这将是您要放入您要信任的站点的密钥库中的 CA 证书。
然后,您可以将此信任库传递给 java 应用程序,以便它能够验证您要连接到的站点/应用程序提供的服务器证书(假设它由您刚刚导入的 CA 证书签名)。
注意:查看以jks
jre8/bin 目录结尾的文件,看看您是否能够看到您今天创建的文件。那应该是你的文件。
要设置信任库,请使用此启动 java 进程-Djavax.net.ssl.trustStore=path/to/new/truststore and -Djava.net.ssl.trustStorePassword=...
推荐阅读
- php - 在 Woocommerce 中显示基于发货国家/地区的交货日期范围
- c# - 处理 ListView 内 Html Button 的 onclick 事件
- javascript - 所需的属性不适用于克隆的元素
- powershell - 在不使用其他按钮的情况下激活单选按钮
- css - 加载组件时使用css隐藏/显示类
- javascript - JavaScript 按标签显示/隐藏元素
- ruby-on-rails - RABL 集合在模板中显示为空,但在控制器中不显示
- python - 如何避免 if 条件的重复代码块?
- dataflow - 数据流管道python依赖安装但无法导入
- r - 用 R 中的矩阵列表编写一个文本文件