Der Hive-Identitätswechsel funktioniert nicht mit dem benutzerdefinierten Authentifikatoranbieter

8

Ich habe einen benutzerdefinierten Authentifikator-Provider entwickelt und alles scheint in Bezug auf die Authentifizierung OK: HiveServer2 startet gut und authentifizierte Verbindungen werden ordnungsgemäß validiert. Sogar einfache Hive-Abfragen funktionieren wie show tables .

Das Problem tritt auf, wenn ich versuche, eine Abfrage von einem entfernten Hive-Client auszuführen. Da ich mit der Weitergabe meiner Zugangsdaten (Benutzer + Passwort ... nun, nicht wirklich ein Passwort, es ist ein Token, aber das ist nicht relevant) verbunden war und die Hive-Konfiguration für den Identitätswechsel bereit war (siehe unten), erwartete ich, dass HiveServer2 die Abfrage als mein Benutzer. Dennoch verwendet es den hive -Benutzer, der keine Berechtigungen für meinen HDFS-Benutzerbereich hat.

Zum Beispiel, wenn ich eine Tabelle erstelle:

%Vor%

Bezüglich relevanter Konfigurationsparameter ist dies meine Konfiguration (vereinfacht, nicht XML-ähnlich):

hive-site.xml :

%Vor%

core-site.xml :

%Vor%

Sie können sich den benutzerdefinierten Code des Hive-Authentifizierungsanbieters ansehen hier .

Ich verwende Hive 0.13.0

Kann mir bitte jemand helfen?

    
frb 01.03.2017, 09:45
quelle

1 Antwort

0

Überprüfen Sie, ob "hive.metastore.execute.setugi" in Schritt 1 und Schritt 2 auf "hiveServer2-Hostknoten" bzw. "Hive-Metastore-Hostknoten" auf "true" gesetzt ist. Beachten Sie, dass diese Eigenschaft sowohl auf den Client- / Gateway-Knoten als auch auf den Hostknoten HiverServer2 und Hive Metastore festgelegt werden muss.

Referenz: Ссылка

    
Marco99 09.03.2017 17:39
quelle

Tags und Links