Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Support DIGEST-MD5 / delegation token authentication for HMS

Geschlossen
#3,145 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
45/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
hadoop, python
Bereich
backend, databases

Rechercherichtung

Beginne mit _HiveClient und dem bestehenden hive.kerberos-authentication-Pfad, untersuche anschließend, wie TSaslClientTransport konfiguriert wird. Die Arbeit ist abgeschlossen, wenn DIGEST-MD5 die Hadoop Writable credentials aus $HADOOP_TOKEN_FILE_LOCATION liest und die Token-ID sowie das Passwort für die HMS-Authentifizierung verwendet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

stale
Feature Request / Improvement
Summary

PyIceberg's HiveCatalog supports Kerberos (GSSAPI) authentication via hive.kerberos-authentication, but does not support DIGEST-MD5 SASL authentication with Hadoop delegation tokens. In many production Hadoop environments, pods/containers authenticate to HMS using delegation tokens (read from $HADOOP_TOKEN_FILE_LOCATION) rather than Kerberos keytabs. This means PyIceberg's Hive catalog cannot be used in these environments without building a custom client.

Proposed Enhancement

Extend _HiveClient to support DIGEST-MD5 delegation token auth:

  1. Add a new config property (e.g. hive.metastore.authentication=DIGEST-MD5)
  2. When DIGEST-MD5 is configured, read credentials from $HADOOP_TOKEN_FILE_LOCATION (Hadoop Writable credentials format)
  3. Use TSaslClientTransport with mechanism=DIGEST-MD5 and the extracted token identifier/password
Vorherrschende Sprache
Python
Sterne
1.1k
Forks
589
Ø Merge
1 T. 20 Std.
Gemergte PRs (30 T.)
68

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus apache/iceberg-python

Alle Issues in apache/iceberg-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.