Runbook — Rotación del secreto Batuz M2M (S2)
Runbook — Rotación del secreto Batuz M2M (S2)
Severidad: ALTA · Estado: requiere acción operacional (no automatizable desde el repo)
Qué pasó
El fichero de fixture scripts/ticketbai/bizkaia/.env.bizkaia-m2m.test.real contenía
BATUZ_BIZKAIA_M2M_CERTIFICATE_PASSWORD en claro. El fichero ya está:
- Eliminado del índice y del working tree.
- Cubierto por
*.realen.gitignore(ningún*.realvuelve a poder commitearse).
Pero el valor sigue presente en el historial de git (commits af99e62,
c60ab21, 12d4a58). Borrar el fichero del HEAD no lo elimina del historial:
cualquiera con acceso al repo puede recuperarlo con git log -p.
Acción obligatoria (operacional)
- Rotar el certificado/contraseña Batuz M2M en la sede de la Diputación Foral de Bizkaia. La contraseña filtrada debe considerarse comprometida hasta que se emita un certificado nuevo. Esto es lo único que cierra el riesgo real; purgar el historial sin rotar no sirve (el valor pudo copiarse ya).
- Guardar el secreto nuevo solo en el gestor de secretos (no en el repo).
- (Opcional, recomendado) Purgar el valor del historial con
git filter-repoo BFG, y forzar re-clonado a todo el equipo:
Coordinar con el equipo antes: reescribe SHAs y exige re-push forzado.git filter-repo --replace-text <(echo 'BATUZ_BIZKAIA_M2M_CERTIFICATE_PASSWORD==>REDACTED')
Verificación
git ls-files | grep '\.real$'→ vacío.- Nuevo secreto solo accesible vía secret manager en runtime.