monitoring: cierra el formulario local de Grafana

Con el SSO ya funcionando (379af6d), a la web sólo se entra por Authentik.
Ayer se dejó abierto a propósito porque el SSO acababa de estar 15 días roto en
silencio y no quería quedarme sin puerta; hoy, verificado que funciona, se
cierra.

Lo que NO cierra, y es lo que importa: la auth básica de la API sigue abierta.
De ella cuelgan los dos sidecars —que es exactamente lo que se rompió mudo el
21 y dejó de recargar dashboards y datasources— y la puerta de emergencia con
la contraseña del secret grafana-admin.

Sí desaparece la otra: el POST /login pasa a devolver 400. Comprobado antes y
después, porque era la salida que uno supondría disponible y ya no lo está.
El procedimiento de rescate queda escrito junto al valor: la API con
grafana-admin, y disable_login_form: false + helm upgrade para recuperar el
formulario en un minuto.

Verificado: SSO entra como akadmin; la auth básica entra como admin;
disableLoginForm=true y authProxyEnabled=true en /api/frontend/settings; desde
fuera sigue el 302 a Authentik; y los DOS sidecars probados con ConfigMaps
reales, con 200 OK y el dashboard de prueba llegando de verdad a Grafana (y
desapareciendo al retirar el ConfigMap). 0 errores en el arranque.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-22 09:56:48 +00:00
co-authored by Claude Opus 4.8
parent 72395ecc0e
commit 33f429e412
3 changed files with 16 additions and 5 deletions
@@ -3,6 +3,8 @@ data:
grafana.ini: |
[analytics]
check_for_updates = true
[auth]
disable_login_form = true
[auth.proxy]
auto_sign_up = true
enabled = true
@@ -2,7 +2,6 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
deployment.kubernetes.io/revision: '17'
meta.helm.sh/release-name: kube-prometheus-stack
meta.helm.sh/release-namespace: monitoring
labels:
@@ -29,10 +28,9 @@ spec:
template:
metadata:
annotations:
checksum/config: a6301dce6c406cc2f76aa94d5b1ea97e65ba7ab52b6cd5b7c57ee4787a91977a
checksum/config: a7d11f09c8d1845579310ceaad050350fe99b00a81b24756ce6a8e27827adf7a
checksum/sc-dashboard-provider-config: e70bf6a851099d385178a76de9757bb0bef8299da6d8443602590e44f05fdf24
kubectl.kubernetes.io/default-container: grafana
kubectl.kubernetes.io/restartedAt: '2026-07-22T08:00:01Z'
labels:
app.kubernetes.io/instance: kube-prometheus-stack
app.kubernetes.io/name: grafana
+13 -2
View File
@@ -74,8 +74,19 @@ grafana:
# fíe de esa cabecera y no vuelva a pedir credenciales. Sin este bloque el
# SSO queda a medias: Authentik te deja pasar y Grafana te enseña SU
# formulario. auto_sign_up crea el usuario (así nació akadmin).
# El formulario local se deja habilitado a propósito, como puerta de
# emergencia: la contraseña vive en el secret grafana-admin.
# disable_login_form cierra el formulario local: por la web sólo se entra
# por Authentik. NO cierra la auth básica de la API, que es de donde cuelgan
# los dos sidecars y la puerta de emergencia.
#
# SI EL SSO SE CAE Y NO PUEDES ENTRAR POR LA WEB:
# 1. La API sigue abierta con la contraseña del secret grafana-admin:
# kubectl get secret grafana-admin -n monitoring \
# -o jsonpath='{.data.admin-password}' | base64 -d; echo
# y contra localhost:3000 dentro del pod, o por port-forward.
# 2. Para recuperar el formulario, poner disable_login_form: false aquí y
# helm upgrade. Tarda un minuto y no pierde nada.
auth:
disable_login_form: true
auth.proxy:
auto_sign_up: true
enabled: true