Error connecting to Kerberos using pyHive
andret8 opened this issue · comments
Hi,
I get this error while connecting to Hive via Kerberos:
thrift.transport.TTransport.TTransportException: Could not start SASL: b'Error in sasl_client_start (-1) SASL(-1): generic failure: GSSAPI Error: Unspecified GSS failure. Minor code may provide more information (Server krbtgt/LOCAL.IT@EXAMPLE.IT not found in Kerberos database)'
I am able to connect to Kerberos using "kinit -kt user user.keytab", and also via Hive ODBC driver. I use the same krb5.conf file, with Default Realm = EXAMPLE.IT.
With kinit, I obtain, correctly:
Default principal: user@EXAMPLE.IT
Valid starting Expires Service principal
09/28/23 11:05:16 09/28/23 11:05:16 krbtgt/EXAMPLE.IT@EXAMPLE.IT
The error is only using pyHive library. In the error, the library uses the domain LOCAL.IT instead of the one specified in krb5.conf, that is EXAMPLE.IT
My connection in pyHive:
conn = hive.Connection(host="host.domain.it",
port=10000,
auth="KERBEROS",
database="db_123",
kerberos_service_name="hive")
Note that LOCAL.IT is equal to domain.it.
Can you help me?
Thank you
Andrea