【问题标题】:Tomcat web app needs to work with SSL Client authentication?Tomcat Web 应用程序需要使用 SSL 客户端身份验证吗?
【发布时间】:2016-04-15 11:36:25
【问题描述】:

我遇到了一个我无法解决的问题。

我在 tomcat 中运行一个 java web 应用程序。我需要这个应用程序向第 3 方网络服务发出 get 请求(应该很简单,我可以通过大量其他服务来完成此操作)。

但是,此第 3 方服务使用 .pk12 SSL 证书将我作为客户端进行身份验证。我已获得 .pk12 证书文件和密码。如果我在 Windows 机器上使用它们,这将有效。

我已经阅读了类似的问题,并且指南接缝是关于如何使用 SSL auth 作为服务器来设置 tomcat。当服务器请求时,不作为客户端提供 SSL 证书。

对此的任何帮助/建议将不胜感激。

【问题讨论】:

  • 顺便说一句,我尝试将 .pk12 导入 java 信任库,并确认用户证书存在。我已经重新启动了 tomcat 并测试了这不起作用仍然收到 401 错误,因为 tomcat 没有提供 SSL 客户端证书来进行身份验证。

标签: java tomcat ssl


【解决方案1】:
<Connector
       protocol="org.apache.coyote.http11.Http11AprProtocol"
       port="8443" maxThreads="200"
       scheme="https" secure="true" SSLEnabled="true"
       SSLCertificateFile="/usr/local/ssl/server.crt"
       SSLCertificateKeyFile="/usr/local/ssl/server.pem"
       SSLVerifyClient="optional" SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"/>

了解更多信息 https://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html

【讨论】:

  • 这不是基本上将tomcat设置为在SSL上可用吗?如果是这样,我已经有了。我所有的服务都是 SSL,只有我们不做 HTTP。
  • 您的网址将是 https:localhost:8443/appsname
  • 你的tomcat配置是什么?什么是浏览器响应?
  • 我的应用程序已经可以通过 SSL 使用,这不是我想要实现的,无需了解业务特定细节。基本上,我们这边的应用程序会获取客户详细信息,然后会多次致电第三方数据提供商。这些提供者将返回一个 XML 响应,然后我们会相应地解析和更新我们的记录。通常所有其他提供商都使用 API 密钥等。这个新的提供商需要我们向我们的用户出示 SSL 证书。这不是我们服务器的 SSL 证书。 link
猜你喜欢
  • 2010-12-05
  • 1970-01-01
  • 1970-01-01
  • 2011-04-30
  • 2012-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-29
相关资源
最近更新 更多