首页 文章

如何通过keytool命令删除已导入的证书/别名?

提问于
浏览
6

我试图通过keytool命令删除已导入的证书

keytool -delete -noprompt -alias "initcert" -keystore keycloak.jks

但要低于例外

keytool错误:java.lang.Exception:密钥库文件不存在:keycloak.jks

同样的问题

keytool -delete  -alias "initcert" -keystore keycloak.cer

问题

keytool错误:java.lang.Exception:密钥库文件不存在:keycloak.cer

现在我尝试导入具有相同别名的证书

keytool -import -noprompt -trustcacerts -alias "initcert" -file "C:\Code_Base\keycloak_certificates\keycloak_135.250.138.74_server\keycloak.cer" -keystore "C:\Program Files\Java\jdk1.8.0_152\jre\lib\security\cacerts"

但再次结束

keytool错误:java.lang.Exception:证书未导入,别名已存在

2 回答

  • 3

    您可以使用 KeyStore Explorer 来检查是否存在并轻松管理您的证书,

    KeyStore Explorer Download Link

    只需 open your keystore file 与资源管理器,做你想要的东西并保存回来 .

  • 4

    看来你没有写完整的密钥库路径 . 命令应该是这样的:

    keytool -delete -noprompt -alias "initcert" -keystore "C:\Path\to\your\keystore\keycloak.jks"
    

    关于最后一个错误,正如其他人所指出的那样,“cacerts”与您已经导入证书的keycloak不同 . 您可以使用以下命令检查您的别名是否在那里:

    keytool -list -keystore "C:\Program Files\Java\jdk1.8.0_152\jre\lib\security\cacerts"
    

    并删除它:

    keytool -delete -noprompt -trustcacerts -alias "initcert" -keystore "C:\Program Files\Java\jdk1.8.0_152\jre\lib\security\cacerts"
    

    然后,如果再次导入证书,则不会出现错误 .

    最后,最后一件事,如果有这样的错误

    keytool错误:java.io.FileNotFoundException:C:\ Path \ to \ your \ keystore \ keycloak.jks(Permission denied)

    您应该在管理员模式下执行命令窗口 .

相关问题