问题描述
我正在使用JRE 8u211。而且我在cacerts中添加了很少的证书。但是,当我将JRE升级到8u261时,这些证书没有被导入。因此,现在我想以别名方式以编程方式从8u211的cacerts文件中导出所需的证书,然后将这些证书导入8u261的cacerts文件中。
这是否可能或得到支持?
谢谢。
解决方法
证书只是数据。您绝对可以将其导出到文件中,然后将数据导入其他文件中。
如果您只想将一个信任库文件的数据导入到另一个中,则可以通过以下简单技巧直接使用缓冲区而不将数据存储到中间文件中:
keytool.exe -importkeystore -srckeystore %JAVA_HOME%\lib\security\cacerts -destkeystore \your\file\path\filename
-deststoretype jks
-srcstorepass changeit -deststorepass changeit
-v -noprompt
但是,您可以一个接一个地进行这两个操作。
要导出证书:
keytool -export -alias alias_name -keystore path_to_keystore_file -rfc -file path_to_certificate_file
要导入证书:
keytool -importcert -alias alias_name -file path_to_certificate_file -keystore truststore_file