Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过SSL使用Oracle数据库的Tomcat JDBCRealm(协议=TCPS)_Oracle_Tomcat_Ssl_Jdbcrealm - Fatal编程技术网

通过SSL使用Oracle数据库的Tomcat JDBCRealm(协议=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)))

我试图在tomcat中实现JDBCRealm(如中所述),以检查Oracle数据库中的凭据。问题是,我希望数据库通过SSL进行通信。所以我将侦听器配置为使用TCPS。就像这样:

  (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>