Hive JDBC Kerberose身份验证错误:GSS启动失败

时间:2016-11-03 18:48:36

标签: java jdbc hive

我正在尝试使用以下连接字符串通过JDBC连接到Hive:

Class.forName("org.apache.hive.jdbc.HiveDriver")

hiveConString = "jdbc:hive2://localhost:10000/default;principal=hive/_HOST@HADOOP.LOCALDOMAIN"

虽然我遇到以下错误:

Exception in thread "main" java.sql.SQLException: Could not open client transport with JDBC Uri:jdbc:hive2://localhost:10000/default;principal=hive/_HOST@HADOOP.LOCALDOMAIN:GSS initiate failed

我已经检查了hive-site.xml以确保遵循kerbersoe身份验证。 XML文件包括:

<property>
   <name>hive.server2.authentication.kerberos.principal</name>
   <value>hive/_HOST@HADOOP.LOCALDOMAIN</value>
</property>

我还确保包含所有必需的Maven存储库。

此外,我正在使用Eclipse在VM上运行代码。

1 个答案:

答案 0 :(得分:0)

如果使用具有kerberos身份验证的VM并且您的身份验证尚未过期,则需要在运行Java代码时指定以下VM参数:

-Djava.security.krb5.debug=true 
-Djava.security.krb5.conf="/etc/krb5.conf"
-Djavax.security.auth.useSubjectCredsOnly=false