apache / apache/iceberg-python

Support DIGEST-MD5 / delegation token authentication for HMS

Aberta
#3,145 1 comentário 0 reações 0 responsáveis Ver no GitHub
stale
Linguagem predominante
Python
Estrelas
1.1k
Forks
581
Merge médio
1d 17h
PRs com merge (30d)
78

Descrição

### 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

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece por _HiveClient e pelo caminho hive.kerberos-authentication existente; em seguida, inspecione como TSaslClientTransport é configurado. O trabalho estará concluído quando DIGEST-MD5 ler as Hadoop Writable credentials de $HADOOP_TOKEN_FILE_LOCATION e usar o identificador do token e a senha para a autenticação HMS.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
hadoop, python
Domínio
backend, databases
Tipo de issue
Funcionalidade
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Ativa
Clareza
Razoavelmente clara
Facilidade para iniciantes
45/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.