我想从Java应用程序更新Active Directory密码,但它需要在Java客户端计算机上导入受信任的根证书。如何导出Microsoft证书服务器颁发的根证书?
答案 0 :(得分:0)
要添加证书,您可以使用位于JRE根目录的keytool.exe
文件夹中的bin
。例如,JRE根文件夹是c:\Program Files\Java\jdk1.8.0\jre
。然后命令行到导入将是:
"c:\Program Files\Java\jdk1.8.0\jre\bin\keytool.exe" -keystore "c:\Program Files\Java\jdk1.8.0\jre\lib\security\cacerts" -storepass changeit -importcert -file "c:\temp\startssl.crt" -alias startssl
-keystore "c:\Program Files\Java\jdk1.8.0\jre\lib\security\cacerts"
表示计算机上密钥库的默认路径。
-storepass changeit
表示商店的密码。默认为changeit
。
-importcert
表示您要导入新证书。
-file "c:\temp\startssl.crt"
证书文件的路径。
-alias startssl
表示startssl
将存储证书的名称。您可以选择任何唯一名称。
从商店导出证书:
"c:\Program Files\Java\jdk1.8.0\jre\bin\keytool.exe" -keystore "c:\Program Files\Java\jdk1.8.0\jre\lib\security\cacerts" -storepass changeit -exportcert -rfc -file "c:\temp\startssl_exp.crt" -alias root
-exportcert
表示您想要导出证书。
-alias root
证书的名称。根证书默认名称为root
-file "c:\temp\startssl_exp.crt"
,文件名,您要保存证书的位置。
-rfc
表示该证书将以可打印的RFC格式输出。
要删除已导入的证书,您可以使用下一个命令:
"c:\Program Files\Java\jre1.8.0\bin\keytool.exe" -keystore "c:\Program Files\Java\jre1.8.0\lib\security\cacerts" -storepass changeit -delete -alias startssl
-delete
表示您要删除证书。
-alias startssl
证书名称,您要删除。
适用于Windows的此示例,但Linux将以相同的方式工作。完整文档you can find here。希望,这会有所帮助。
答案 1 :(得分:0)
在服务器计算机上执行以下操作:
另见: