我们有一个启用Kerberos的phoenix服务。我们也有一个同时支持kerberos的数据虚拟化服务器(基于Tomcat)(Denodo服务器)。我们希望让Denodo连接到Phoenix,以便Denodo用户可以从Phoenix获得数据。我们对于需要使用的语法感到困惑。在JDBC个人客户端(DBeaver和Squirrel)中,我们可以使用以下语法,并且可以正确连接:
jdbc:phoenix:myserver.mycompany.com:2181:/ hbase-secure:user.name@MYCOMPANY.COM:/Users/user.name/krb5cc_user.name
现在,当我们尝试从Denodo服务器进行连接时,我们将无法使用个人密钥表。因此,我们尝试使用这种格式:
jdbc:phoenix:myserver.mycompany.com:2181:/ hbase-secure:HTTP/myserver.mycompany.com@MYCOMPANY.COM:/etc/security/keytabs/myservice.keytab
那没有用,我们得到了这个错误:
错误103(08004):无法建立连接。 从keytab /etc/security/keytabs/myservice.keytab中HTTP/myserver.mycompany.com@MYCOMPANY.COM的登录失败:javax.security.auth.login.LoginException:无法从用户获取密码
经过大量的Google搜索,我们尝试了对该主体进行不同的迭代以
hbase/hdpopst@MYCOMPANY.COM
,并且总是以相同的错误结尾。因此,我有两个问题:凤凰城是否有关于该主题的官方文档?我们没有找到它。通过JDBC连接这两个服务的语法正确吗?