(Tomcat)Java WAR通过SSL连接到MySQL

时间:2015-09-08 13:59:11

标签: java mysql tomcat ssl

如何告诉tomcat为其运行的应用程序使用某个密钥库?

我有一个Java Web应用程序需要通过SSL连接到MySQL数据库。

我使用自签名CA签署所有正在使用的证书& 已将CA添加到密钥库(〜/ mystore.jks)

我已确认MySQL的正确配置用于远程连接,并使用命令行测试远程连接。 Here is a link to my previous stackoverflow post that details the MySQL remote connection.

我看过很多博客,说明如何在命令行执行程序时通过设置以下选项来告诉Java使用哪个密钥库:

-Djavax.net.ssl.keyStore=path_to_keystore_file
-Djavax.net.ssl.keyStorePassword=password
-Djavax.net.ssl.trustStore=path_to_truststore_file
-Djavax.net.ssl.trustStorePassword=password

但是,如何告诉tomcat引用密钥库以获取其应用程序试图尝试的SSL连接?

备注:我现在还将Tomcat配置为仅限SSL,并且它也引用了密钥库,但我发现/确定 密钥库是在协商SSL连接时,各个应用程序都没有引用它们。

我真的很感激这里的一些帮助。事实证明这比我预期的要麻烦得多......

2 个答案:

答案 0 :(得分:0)

您可以为Tomcat提供表达命令行java选项的功能。它将在Java执行其webapps时为Java提供这些选项。 I found this very helpful post describing the process

您需要将以下行添加到 $ CATALINA_HOME / bin / catalina.sh (Unix)

Java Options Specifying the keystore/truststore and passwords

然后,重启Tomcat。

当Tomcat旋转时,它通过catalina.sh

完成

它将为Java提供这些选项,你会很高兴!

答案 1 :(得分:-1)

有关如何在Jira文档中通过SSL配置tomcat-mysql连接的指南。

http://bit.ly/1QnNAuK