Saltar para o conteúdo principal
Versão Next

Segurança — Trino

O chart tdp-trino suporta autenticação LDAP quando ldap.enabled: true no ficheiro de valores. Comportamento resumido:

  • ldap.enabled: false (padrão): HTTP (porta 8080), sem autenticação obrigatória, sem volumes de certificado extras para esse fluxo.
  • ldap.enabled: true (com values de LDAP): HTTPS (porta 8443), autenticação PASSWORD, certificados e secrets associados.

Recursos opcionais de certificado: trinoCerts.pvc, trinoCerts.secret, trinoCerts.copyJob — ver values.yaml do chart.

Preparação

  • Servidor LDAP acessível a partir do cluster.
  • Keystore/senhas necessários para HTTPS, armazenados em Secrets Kubernetes (não commite valores reais no Git).

Criar Secret com materiais de TLS (exemplo)

Exemplo
kubectl -n <namespace> create secret generic <nome-secret-certificados> \
--from-file=keystore.jks=<caminho-local>/keystore.jks

Ajuste nomes de chaves aos que o chart espera (confira na exportação de valores do Helm).

LDAP habilitado (ilustrativo)

Um arquivo complementar (por exemplo values-ldap.yaml) costuma definir ldap.enabled: true e ajustar trino.server.config (HTTPS, authenticationType, etc.). Substitua hosts, DNs e secrets pelos do seu diretório:

ldap:
enabled: true

trino:
server:
config:
https:
enabled: true
port: 8443
keystore:
path: "/etc/trino/certs/keystore.jks"
authenticationType: "PASSWORD"
# Volumes, mounts e ficheiros adicionais: siga os comentários em helm show values

Instalação ou upgrade:

Exemplo
helm upgrade --install <release> oci://registry.tecnisys.com.br/tdp/charts/tdp-trino \
-n <namespace> --create-namespace \
-f values.yaml \
-f values-ldap.yaml

Conectar com cliente Trino

HTTP (LDAP desabilitado):

kubectl -n <namespace> port-forward service/<release> 8080:8080 &
trino --server http://localhost:8080

HTTPS (LDAP habilitado):

kubectl -n <namespace> port-forward service/<release> 8443:8443 &
trino --server https://localhost:8443 \
--user <usuario-ldap> \
--password \
--insecure

Em produção, prefira validar o certificado em vez de --insecure.

Comparativo rápido

ModoPorta típicaAutenticaçãoHTTPS
ldap.enabled: false8080Nenhuma (padrão chart)Não
ldap.enabled: true8443PASSWORD (LDAP)Sim

Parâmetros principais

ParâmetroLDAP desligadoLDAP ligado
ldap.enabledfalsetrue
trino.server.config.https.enabledfalsetrue
trino.server.config.authenticationType""PASSWORD
trinoCerts.pvc.enabledfalsetrue (típico)
trinoCerts.secret.enabledfalsetrue (típico)

Boas práticas

  • Preferir LDAPS (porta 636) em produção em vez de LDAP simples.
  • Rotacionar senhas de keystore e secrets.
  • Restringir permissões do usuário de bind LDAP.

Resolução de Problemas

ProblemaO que verificar
Pod não sobe com LDAPPaths do keystore, Secret e trinoCerts.*
Falha de loginPadrão de bind/DN e conectividade ao LDAP
Erro de portaCliente usando 8080 vs 8443 conforme modo

Para a lista completa de parâmetros, use helm show values na versão do chart que instalou.