El dilema de los tokens abandonados: ¿Cuándo es seguro borrarlos?
Los tokens de acceso que quedan sin usar en infraestructuras CI y despliegues pueden quedar activos indefinidamente. El manejo adecuado de su caducidad o eliminación es clave para la seguridad.
Tokens olvidados en repositorios y CI
El último análisis de un administrador de sistemas reveló que, en sus proyectos paralelos, había cientos de credenciales de máquina sin usar: PATs de GitHub, tokens de despliegue y credenciales de integraciones que ya no son relevantes. No había nada que marcara su obsolescencia, como un registro de salida de personal que normalmente se sincroniza con el control de acceso.
En entornos donde el personal cambia con frecuencia, los tokens pueden seguir siendo válidos hasta que alguien los elimina manualmente. Esto abre una ventana de riesgo considerable, especialmente cuando los tokens están vinculados a flujos de CI/CD que continúan ejecutándose.
¿Qué pasa al eliminar un token?
La práctica más directa, especialmente en entornos de hobby, es simplemente eliminar el token y observar qué se rompe. En sistemas productivos, esto puede desencadenar fallos en pipelines, despliegues y tareas nocturnas que no se recuerdan.
Para mitigar la interrupción, muchos equipos optan por:
- Monitoreo de uso: registrar la última actividad del token y alertar cuando haya un período de inactividad.
- Políticas de caducidad: establecer expiraciones automáticas (por ejemplo, 90 días) y revocar tokens que no hayan sido usados.
- Auditoría de dependencias: mapear cada token a los servicios y procesos que lo consumen antes de eliminarlo.
Configuraciones por defecto
Algunos sistemas de gestión de identidad permiten configurar la caducidad por defecto en nuevas credenciales. Sin embargo, la implementación de expiraciones automáticas puede provocar problemas si los procesos no están preparados para manejar la revocación.
Para evitar interrupciones, es recomendable:
- Actualizar pipelines para que acepten tokens de corta vida.
- Implementar mecanismos de renovación (por ejemplo, OAuth con refresh tokens).
- Probar en entornos de staging antes de aplicar cambios en producción.
Herramientas útiles
- GitHub Actions: permite configurar expiraciones de PATs y revocarlos a través de la API.
- Vault de HashiCorp: gestiona secretos con políticas de expiración y renovación automática.
- AWS Secrets Manager: ofrece rotación automática y expiración de credenciales.
Conclusión
El manejo de tokens de servicio y cuentas de servicio sigue siendo una práctica crítica en la administración de infraestructuras. Establecer políticas de caducidad, auditar dependencias y probar en entornos controlados son pasos esenciales para mantener la seguridad sin afectar la disponibilidad de los sistemas.
El hilo original en Reddit

