ADR-014: Authentik como proveedor de identidad centralizado¶
Estado: aceptado Fecha: 2026-05-17
Contexto¶
SmallCountry tiene ~70 servicios que requieren autenticación. Sin un SSO centralizado, cada servicio necesitaría credenciales independientes, haciendo el sistema inmanejable para una familia y los operadores de la finca. Se necesita: single sign-on, autenticación en dos pasos (2FA), segmentación por roles (familia, finca, empresa, admin), y self-hosting sin dependencia de proveedores externos.
Decisión¶
Authentik como proveedor de identidad centralizado con OAuth2/OIDC para todos los servicios internos, 2FA obligatorio, y RBAC granular por grupo.
Alternativas consideradas¶
| Opción | Por qué se descartó |
|---|---|
| Keycloak | Más complejo de operar. Mayor consumo de recursos. Sobrecargado para este caso de uso |
| Authelia | Solo autenticación, sin interfaz de usuario para gestión de usuarios. Sin RBAC avanzado |
| Ory (Hydra + Kratos) | Arquitectura de microservicios demasiado compleja para single-host. Mayor coste operativo |
| LDAP puro | Sin interfaz web moderna. Sin soporte OIDC nativo. Difícil de mantener |
| Google/Microsoft SSO | Dependencia externa. Viola soberanía. Datos de autenticación fuera de la finca |
Consecuencias¶
- ✅ Un solo usuario y contraseña para 70+ servicios
- ✅ 2FA obligatorio para todos los usuarios
- ✅ RBAC granular: roles segmentados (familia, finca, admin, consulta)
- ✅ Self-hosted, sin dependencia externa. Funciona en modo isla
- ✅ Interfaz de administración web para gestión de usuarios y políticas
- ❌ Consumo de recursos moderado (512 MB RAM). Punto único de fallo para la autenticación
- ❌ Si Authentik cae, ningún servicio es accesible (Tier A)