我应该使用 cacerts 还是 local trustore 但不能同时使用两者?
Should I use either cacerts or local trustore but not both?
我们有一个本地 truststore.jks 用于我们的应用程序。我们使用 VM 选项将其传递给应用程序,如下所示:
-Djavax.net.ssl.trustStore=<<PATH TO TRUSTSOTRE.JKS>>
如果我们已经在使用这个 truststore.jks 是否有充分的理由将证书导入我们 jdk 的 cacerts 文件?
我们不能将这些证书导入现有的 truststore.jks 吗?
这里没有对错之分,决定取决于您的应用程序、管理安全设置的操作和方法。
就我个人而言,我总是更喜欢使用自定义信任库(正如您已经在做的那样),它只包含您的应用程序所需的端点的信任路径。
这样,您只需维护对您正在使用的端点的信任。
但是,如果应用程序使用来自不同 CA 提供商的证书连接到许多 TLS 端点,则基于 cacerts 的信任库可以使维护更容易 if/when 端点更改颁发者。
在那种情况下,我建议 不要 更改 JRE 中的 cacerts 文件,但要在 上创建自定义信任库文件cacerts 供应用程序使用的文件。
我们有一个本地 truststore.jks 用于我们的应用程序。我们使用 VM 选项将其传递给应用程序,如下所示:
-Djavax.net.ssl.trustStore=<<PATH TO TRUSTSOTRE.JKS>>
如果我们已经在使用这个 truststore.jks 是否有充分的理由将证书导入我们 jdk 的 cacerts 文件?
我们不能将这些证书导入现有的 truststore.jks 吗?
这里没有对错之分,决定取决于您的应用程序、管理安全设置的操作和方法。
就我个人而言,我总是更喜欢使用自定义信任库(正如您已经在做的那样),它只包含您的应用程序所需的端点的信任路径。 这样,您只需维护对您正在使用的端点的信任。
但是,如果应用程序使用来自不同 CA 提供商的证书连接到许多 TLS 端点,则基于 cacerts 的信任库可以使维护更容易 if/when 端点更改颁发者。 在那种情况下,我建议 不要 更改 JRE 中的 cacerts 文件,但要在 上创建自定义信任库文件cacerts 供应用程序使用的文件。