证书已导入。但无法列出它们

问题描述 投票:0回答:1

在我的新 Windows 10 笔记本电脑中,我成功导入了一些证书:

 C:\windows\system32>keytool -import -trustcacerts -storepass changeit -noprompt -alias <cert name> -file C:/ca-certs/<cert name>.crt -cacerts -v
Certificate was added to keystore
[Storing C:\Program Files\Zulu\zulu-17\lib\security\cacerts]

然后我尝试列出它们。但我遇到了这个例外:

    C:\windows\system32>keytool -list
keytool error: java.lang.Exception: Keystore file does not exist: C:\Users\tester\.keystore

-import 命令将证书导入到 cacerts 文件中。但 -list 命令尝试从 .keystore 文件中找到它。 我是否错过了任何配置。 我记得我在旧笔记本电脑上做了同样的事情,但没有遇到问题。

java keytool
1个回答
0
投票

“keytool”程序默认为您的主目录中名为“.keystore”的密钥库,而不是您刚刚创建的密钥库。

默认情况下,keytool 将在用户的主目录中生成密钥库(Linux/macOS:

$HOME/.keystore
,Windows:
$env:USERPROFILE/.keystore
)。使用
-keystore
参数指定自定义路径。

添加“-keystore”选项以指定您创建的密钥库文件的位置。

C:\windows\system32> keytool -list -keystore "C:/ca-certs/<cert name>.crt"
Enter keystore password: <YourPasswordHere>

这将列出所有内容,但如果需要,您可以通过别名过滤它:

C:\windows\system32> keytool -list -keystore "C:/ca-certs/<cert name>.crt" -alias "<cert name>"
Enter keystore password: <YourPasswordHere>

更多 keytool 命令示例位于 最常见的 Java Keytool 密钥库命令

© www.soinside.com 2019 - 2024. All rights reserved.