// el problema
Nadie sabe quién tiene el kubeconfig de admin.
Lo habitual es un kubeconfig de admin que pasa de mano en mano, o una ServiceAccount creada a mano para cada persona. Nadie sabe quién la usa ni cuándo caduca. kubelatch pone un dueño, una caducidad y un registro detrás de cada credencial.
Sin kubelatch
admin.conf
# compartido en #platform, copiado en cinco portátiles
users:
- name: kubernetes-admin
user:
client-certificate-data: LS0tLS1CRUdJTi…
client-key-data: LS0tLS1CRUdJTiBSU0Eg…
- Nadie sabe quién tiene una copia.
- Vale lo que dure su certificado: un año o más.
- El API server ve
kubernetes-admin para todos.
- Quitarlo obliga a rotar credenciales en todo el cluster.
Con kubelatch
credenciales
dueño nombre cluster caduca último uso
ana portátil prod-eu en 12 d hace 2 min
luis k9s todos en 27 d hace 1 h
bot:shop-api github-actions prod-eu en 58 min ahora
- Cada credencial tiene dueño y nombre.
- Caduca sola, en días, no en años.
- Cada petición queda registrada a nombre de esa persona.
- Revócala y el siguiente
kubectl recibe 401.
// qué obtienes
Accesos que puedes explicar en una auditoría.
Una credencial propia
Un token klt_ con su kubeconfig para cada persona o pipeline, con caducidad y revocable al instante. Los workflows de GitHub Actions obtienen el suyo sin guardar ningún secreto en GitHub.
kubeconfig · klt_3fQ9… · caduca en 30 d
Permisos por niveles
Seis niveles fijos sobre un namespace o un cluster entero. kubelatch mantiene el RBAC de cada cluster, así que nadie escribe un RoleBinding a mano.
viewer · developer · debugger · secrets-reader · admin · cluster-admin
Inventario
De quién es cada credencial, a qué clusters llega, hasta cuándo vale y cuándo se usó por última vez.
ana · portátil · quedan 12 d · usada hace 2 min
Auditoría por petición
Cada petición al API server con quién, qué, dónde y el resultado, incluidos exec y port-forward.
ana exec web-7f9c (shop) 101
Cualquier cluster
Gestionado o autogestionado, funciona igual: kubelatch solo usa la API estándar de Kubernetes.
EKS · GKE · AKS · kubeadm · k3s · RKE2 · Talos
Un binario y Postgres
Una interfaz web, una API, el proxy y el reconciliador de RBAC en un solo binario de Go. Se entra con GitHub o con cuentas locales.
kubelatch + postgres
// cómo funciona
kubectl habla con kubelatch. kubelatch habla con tu cluster como tú.
-
Un admin concede un nivel
Por ejemplo developer en el namespace shop de prod-eu, con caducidad si debe terminar.
-
Entras y obtienes un kubeconfig
Emite una credencial en la interfaz web y úsala con kubectl, k9s, Lens o Helm. No hay nada que instalar.
-
Cada petición pasa por kubelatch
Comprueba el token, reenvía la petición al cluster suplantándote y la registra.
kubectl, k9s, Helm, CItoken klt_
credencial propia
kubelatchproxy · RBAC · auditoría
actúa como tú
Tus clustersAPI de Kubernetes
funciona con
EKSGKEAKSkubeadmk3sRKE2Talos