【问题标题】:Use a different keystore per every webapp in tomcat (one JVM)在 tomcat(一个 JVM)中为每个 webapp 使用不同的密钥库
【发布时间】:2013-05-14 19:19:08
【问题描述】:

我有一个带有许多 web 应用程序的 tomcat 实例。其中一些需要自己的独立密钥库才能通过 SSL 调用外部 Web 服务。到目前为止,我发现使用提供的密钥库的唯一方法是使用:

System.setProperty("javax.net.ssl.trustStore", "mykeystore.jks");
System.setProperty("javax.net.ssl.trustStorePassword","mypwd");

但是这种方式的问题是系统属性的范围是每个 java 进程,(tomcat 为所有 webapps 共享相同的 JVM),这会影响所有其他 webapps。对吧?

如何在我的 tomcat 实例中为每个 webapp 使用特定的密钥库,并将其限制为特定的 Web 服务调用?

我使用 Axis(1) WS 客户端可能很重要。

【问题讨论】:

  • This 可能会有所帮助。
  • Axis(1) 的解决方案是code.google.com/p/axis-ssl
  • 为什么不能使用单个组合信任库?信任库只是您信任的一组证书签名者。为什么不同的服务会有不同?
  • 因为我们有一个基于组件的架构并且想要模块化。此外,我们不想在每个环境或服务器中配置证书。

标签: java tomcat ssl keystore truststore


【解决方案1】:

我对 Axis 不是很熟悉,但应该有一种方法可以在 Axis 中配置密钥库或信任库,以用于它用于 Web 服务调用的 HTTP 客户端。

正如您已经发现的那样,在 Tomcat 级别配置密钥库不是可行的方法。

【讨论】:

猜你喜欢
  • 2010-12-20
  • 2015-10-07
  • 1970-01-01
  • 1970-01-01
  • 2020-07-18
  • 2012-01-18
  • 1970-01-01
  • 2012-09-02
  • 1970-01-01
相关资源
最近更新 更多