Saltar a contenido

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)

Referencias