Saltar al contenido principal

Autenticación y Permisos

Modelo de multitenancy

Cada tenant tiene su propio realm en Keycloak. Los usuarios de un tenant nunca ven datos de otros tenants.

Primer login (BD limpia)

  1. Bootstrap crea tenant default desde .env
  2. Bootstrap crea módulos, permisos y roles
  3. Admin hace login → guard crea el User en BD
  4. Primer usuario del tenant → asignado automáticamente a super_admin
  5. Redis cachea la sesión

Roles disponibles

RolDescripción
super_adminAcceso total al sistema
tenant_adminAdministra su tenant
managerCrea y gestiona expedientes
reviewerRevisa y aprueba
readonlySolo lectura
api_fullM2M — acceso total via API
api_readonlyM2M — solo lectura via API

Permisos granulares

Los permisos son por módulo y acción: dossier.Create, document.Upload, task.List, etc. Se configuran desde el menú Seguridad → Roles.

El sistema tiene actualmente 92 permisos distribuidos en 17 módulos. Fuente de verdad: api/src/bootstrap/permissions.json.