Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javax.net.ssl.trustStore是否覆盖或添加到cacerts_Java_Amazon S3_Ssl Certificate_Truststore - Fatal编程技术网

javax.net.ssl.trustStore是否覆盖或添加到cacerts

javax.net.ssl.trustStore是否覆盖或添加到cacerts,java,amazon-s3,ssl-certificate,truststore,Java,Amazon S3,Ssl Certificate,Truststore,有点麻烦,我很难找到设置javax.net.ssl.trustStore是添加还是覆盖默认JDK cacerts的详细信息 我的应用程序正在使用: -Djavax.net.ssl.trustStore=my-truststore.jks 以及为AWS S3设置客户端(默认情况下,不明确告知其使用任何特定证书): 如果javax.net.ssl.trustStore添加到默认的JDK证书中,那么我应该可以,因为我相信它已经包含了我需要的证书,但是我的信任库没有。 (AWS CA已添加到jdk

有点麻烦,我很难找到设置
javax.net.ssl.trustStore
是添加还是覆盖默认JDK cacerts的详细信息

我的应用程序正在使用:

-Djavax.net.ssl.trustStore=my-truststore.jks
以及为AWS S3设置客户端(默认情况下,不明确告知其使用任何特定证书):


如果
javax.net.ssl.trustStore
添加到默认的JDK证书中,那么我应该可以,因为我相信它已经包含了我需要的证书,但是我的信任库没有。
(AWS CA已添加到jdk:)

如果自定义信任存储由
javax.net.ssl.trustStore
指定,则不会使用默认的信任存储(默认jdk cacerts)

不确定此处术语“覆盖”是否100%正确。defauldjdkcacerts仍然存在,您不需要更新它或其他东西。但是你的定制版已经使用了

我认为不建议您修改默认的信任存储,因为它随JVM一起提供,并将随JVM一起更新

相反,您可以制作一个副本并将证书添加到副本中,并将此副本设置为自定义副本(使用
javax.net.ssl.trustStore

例如:

  • 复制默认文件(只需复制文件)

  • 使用keytool向副本中添加一些特定证书

    keytool -import -file /path/to/certificate.pem -alias NameYouWantToGiveOfYourCertificate -keystore /path/to/copy/of/default/truststore.jks -storepass changeit
    

  • 这只是一个例子。您可能想使用其他工具,但希望想法很清楚:)

    谢谢,这就澄清了很多问题!
    keytool -import -file /path/to/certificate.pem -alias NameYouWantToGiveOfYourCertificate -keystore /path/to/copy/of/default/truststore.jks -storepass changeit