通过SSL使用Oracle数据库的Tomcat JDBCRealm(协议=TCPS)
我试图在tomcat中实现JDBCRealm(如中所述),以检查Oracle数据库中的凭据。问题是,我希望数据库通过SSL进行通信。所以我将侦听器配置为使用TCPS。就像这样:通过SSL使用Oracle数据库的Tomcat JDBCRealm(协议=TCPS),oracle,tomcat,ssl,jdbcrealm,Oracle,Tomcat,Ssl,Jdbcrealm,我试图在tomcat中实现JDBCRealm(如中所述),以检查Oracle数据库中的凭据。问题是,我希望数据库通过SSL进行通信。所以我将侦听器配置为使用TCPS。就像这样: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<hostname>)(PORT=1521)))<br> (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=<hostname>)(PORT=1512)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<hostname>)(PORT=1521)))<br>
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=<hostname>)(PORT=1512)))
我在JKS存储中导入了证书,我在Tomcat中对其进行了如下配置:
没有成功
我不是Tomcat的专业人员(更多的是数据库)。我将感谢任何帮助或为我指明正确方向。提前谢谢 错误似乎表明SSL证书不受信任 我建议验证您的信任存储中是否确实有证书(JDK中有一个命令行工具来列出信任存储内容,您可以用谷歌搜索),然后在Tomcat启动脚本中添加以下参数:
javax.net.ssl.trustStore=<path to trust store>
javax.net.ssl.trustStore=
谢谢,这对我来说是一个巨大的飞跃:)现在我有以下错误:java.sql.SQLRecoverableException:IO错误:网络适配器无法建立连接oracle.net.ns.NetException:无法初始化ssl上下文。oracle.net.ns.NetException:无法初始化信任存储。java.io.IOException:密钥库被篡改,或密码不正确java.security.UnrecoverableKeyException:密码验证失败
,但信任库的密码在catalina.sh-Djavax.net.ssl.trustStore=-Djavax.net.ssl.keystrepassword=
中是正确的,这帮了大忙!只需要添加javax.net.ssl.trustStorePassword=在上一篇文章中错误地添加了密钥库。再次感谢!嗯,另一件困扰我的事情是进程列表中可见的密码。尝试将其设置为-Doptionsfile=但未成功。看起来Tomcat不认识它?
javax.net.ssl.trustStore=<path to trust store>