Db2 发生连接授权失败。原因:GSSAPI服务器凭据无效。ERRORCODE=-4214,SQLSTATE=28000

Db2 发生连接授权失败。原因:GSSAPI服务器凭据无效。ERRORCODE=-4214,SQLSTATE=28000,db2,ibm-cloud,db2-luw,dashdb,Db2,Ibm Cloud,Db2 Luw,Dashdb,我希望使用JDBC和IBMid/Password连接到一个db2warehouseonfloud(db2woc)服务器,前提是在数据库实例上启用了IAM。它是在我的DB2WOC服务器上启用的。下面是我正在尝试连接的一段代码(描述了此方法): import com.ibm.db2.jcc.db2simpledasource val数据源:db2simpledasource=new db2simpledasource() dataSource.setDriverType(4) dataSource.

我希望使用JDBC和IBMid/Password连接到一个db2warehouseonfloud(db2woc)服务器,前提是在数据库实例上启用了IAM。它是在我的DB2WOC服务器上启用的。下面是我正在尝试连接的一段代码(描述了此方法):

import com.ibm.db2.jcc.db2simpledasource
val数据源:db2simpledasource=new db2simpledasource()
dataSource.setDriverType(4)
dataSource.setDatabaseName(“BLUDB”)
dataSource.setServerName(“”)
dataSource.setPortNumber(50001)
dataSource.setSslConnection(true)
setSecurityMechanism(com.ibm.db2.jcc.DB2BaseDataSource.PLUGIN_SECURITY)
dataSource.setPluginName(“IBMIAMauth”)
val conn=dataSource.getConnection(“,”)
尝试使用这种方式连接时,出现了一个错误
连接授权失败。原因:GSSAPI服务器凭据无效。ERRORCODE=-4214,SQLSTATE=28000
。在互联网上搜索这个错误让我一无所获。为什么会这样?(我的服务器URL是正确的)

编辑:我使用的是db2jcc4.jar驱动程序版本4.26.14,我正在本地系统上运行这段代码,试图连接到
服务器url

这不是一个真正的答案,但这太大了,无法发表评论

您可以在不使用CLPPlus的情况下排除连接问题,因为驱动程序本身包含一个嵌入式测试程序,您可以这样调用该程序:

java-cp/path/to/db2jcc4.jar com.ibm.db2.jcc.DB2Jcc\
-url“jdbc:db2://whatever.bluemix.net:50001/BLUDB:sslConnection=true;sslCertLocation=/path/to/DigiCertGlobalRootCA.crt;”\
-用户名称-密码“secret”
请注意对服务器证书的引用


以上内容适用于JDBC 3.0驱动程序
db2jcc.jar
(现在已折旧),以及JDBC 4.0驱动程序
db2jcc4.jar

编辑您的问题以添加您正在使用的JDBC驱动程序的确切版本,以及该驱动程序本身是否在本地运行,我正在尝试通过本地系统运行代码,我使用的是db2jcc4驱动程序版本4.26.14。您是否也可以进行编辑以将(修订的)条目包含在db2dsdriver.cfg中?嗨,我使用的是IBM cloud提供的。我不确定如何访问您提到的云上的文件。这是本地工作站上的XML文件,除非由用户操作创建,否则不存在。可以使用db2cli命令行工具创建和编辑它,也可以手动编辑。建议在您使用IAM的userid/password尝试自己的java程序之前,首先让名为CLPPlus的ibm工具(它是一个java程序)在每个文档中使用相同的凭据,当CLPPlus使用这些凭据工作时,然后在您的jdbc上工作,它们共享相同的配置。