Security
Ecosistema completo para organización y gestión de contenido con interfaces espaciales
Librería Security (Core)
Propósito: proporcionar autenticación JWT y autorización RBAC básica para aplicaciones Angular 20 multitenant.
Estado actual
- Ruta de importación:
@libs-core/security - Versión: 0.0.1 (PoC)
- Estado: 🔄 EN DESARROLLO - Prueba de concepto
Funcionalidad básica (PoC)
1. Autenticación JWT
- AuthService: login/logout con JWT
- TokenService: almacenamiento de tokens
- Guard básico de autenticación
2. Multitenancy básico
- ContextService: selección y gestión de contexto de tenant
- Guard de validación de contexto
3. Autorización RBAC simple
- PermissionService: verificación de permisos (
resource:action) - RoleService: verificación de roles (
admin,user) - Guard de permisos básico
4. Interceptores HTTP
- AuthInterceptor: inyección de token JWT
- ContextInterceptor: inyección de tenant-id
5. Directivas básicas
*hasPermission: mostrar/ocultar por permiso*hasRole: mostrar/ocultar por rol
Estructura simple
libs/core/security/
├── src/lib/
│ ├── auth/ # AuthService, TokenService
│ ├── multitenancy/ # ContextService
│ ├── authorization/ # PermissionService, RoleService
│ ├── guards/ # authGuard, contextGuard, permissionGuard
│ ├── interceptors/ # AuthInterceptor, ContextInterceptor
│ └── directives/ # hasPermission, hasRole
└── index.ts
Flujo de autenticación básico
- Login → obtener JWT + contextos disponibles
- Seleccionar contexto → obtener permisos del tenant
- Navegar con guards y permisos
Integración
Dependencias:
@libs-core/shared-models: tipos básicos- Angular 20: HttpClient, Router, Signals
Usado por:
@libs-core/module-integrator: validación de permisos de módulos
Comandos
npx nx test security
npx nx build security
Alcance del PoC
Incluido:
- ✅ Login/logout JWT básico
- ✅ Contexto de tenant
- ✅ Permisos simples (resource:action)
- ✅ Roles básicos
- ✅ Guards funcionales
- ✅ 2 interceptores esenciales
- ✅ 2 directivas básicas
Excluido (futuro):
- ❌ Refresh de tokens
- ❌ Session management
- ❌ CSRF protection
- ❌ Security headers
- ❌ Rate limiting
- ❌ Biometric auth
- ❌ 2FA/MFA
- ❌ OAuth/OIDC