jdbc kerberos oracle身份验证问题

时间:2020-03-02 10:54:46

标签: java oracle jdbc kerberos ojdbc

尝试使用kerberos身份验证连接到oracle时遇到问题。 先前曾报道过类似的问题,但在我的情况下,异常跟踪有所不同-
jdbc kerberos oracle authentication

代码从下面的oracle文档中引用(connectWithDefaultUser())
https://docs.oracle.com/cd/B28359_01/java.111/b31224/clntsec.htm#CIHCIDHF

异常跟踪为- Exception in thread "main" java.lang.NoSuchMethodError: sun.security.krb5.EncryptedData.reset([BZ)[B at oracle.net.ano.AuthenticationService.a(Unknown Source) at oracle.net.ano.AuthenticationService.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at oracle.net.ano.AuthenticationService.h(Unknown Source) at oracle.net.ano.Ano.negotiation(Unknown Source) at oracle.net.ns.NSProtocol.connect(NSProtocol.java:439) at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1102) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:320) at oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:546) at oracle.jdbc.driver.T4CConnection.(T4CConnection.java:236) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521) at java.sql.DriverManager.getConnection(DriverManager.java:664) at java.sql.DriverManager.getConnection(DriverManager.java:208)

我猜想身份验证是成功的,但是服务器端或kerberos设置中缺少一些东西。

我正在使用 jdk1.8 ojdbc6

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

根据@Karthikeyan的评论,将ojdbc升级到版本8可以解决该问题,尽管我不清楚在不进行升级的情况下它如何在Windows环境下工作,如果有人可以对此有所了解,那就太好了:) < / p>

现在它可以正常工作。

相关问题