本文主要是介绍DataGrip 连接 Kerberos 认证的 hive 报 Hive JDBC Kerberose Authentication Error: GSS initiate failed 错误,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
版本:hive-3.1.2
问题描述:
使用工具连接 hive 时,报如下错误:
The specified database user/password combination is rejected: [ 08S01] Could not open client transport with JDBC Uri: jdbc:hive2://singlenode:10000/;principal=hive/singlenode@EXAMPLE.COM: GSS initiate failed org.apache.thrift.transport.TTransportException: GSS initiate failed
解决方法:
确保添加了如下参数:
-Djava.security.krb5.conf="C:\\ProgramData\\MIT\\Kerberos5\\krb5.ini"
-Djava.security.auth.login.config="C:\\ProgramData\\MIT\\Kerberos5\\yhf.conf"
-Djavax.security.auth.useSubjectCredsOnly=false
其中 yhf.conf:
com.sun.security.jgss.initiate{com.sun.security.auth.module.Krb5LoginModule requireduseKeyTab=trueuseTicketCache=falsekeyTab="C:\\ProgramData\\MIT\\Kerberos5\\yhf.keytab"principal="yhf@EXAMPLE.COM";
};
导出 keytab 文件至 yhf.conf 中 keyTab 指定路径:
kadmin.local -q"xst -norandkey -k /home/yhf/yhf.keytab yhf"
修改客户端的 krb5.ini 文件:
例如:C:\ProgramData\MIT\Kerberos5\krb5.ini
[libdefaults]dns_lookup_realm = falseticket_lifetime = 24hforwardable = truerdns = falsedefault_realm = EXAMPLE.COMudp_preference_limit = 1 # 添加这一项
重新测试链接显示成功!
这篇关于DataGrip 连接 Kerberos 认证的 hive 报 Hive JDBC Kerberose Authentication Error: GSS initiate failed 错误的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!