8.3 KiB
Requerimientos Funcionales - PMC-007 Admin
Módulo: Admin Versión: 1.0.0 Fecha: 2025-12-08
Gestión de Usuarios
RF-PMC-007-001: Listar Usuarios
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-001 |
| Nombre | Listar Usuarios |
| Prioridad | P1 |
| Actor | Tenant Admin |
Datos de salida:
- Lista de usuarios del tenant
- Status, rol, último login
- Filtros por status y rol
Criterios de aceptación:
- Solo usuarios del tenant
- Paginación funciona
- Búsqueda por nombre/email
RF-PMC-007-002: Invitar Usuario
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-002 |
| Nombre | Invitar Usuario |
| Prioridad | P1 |
| Actor | Tenant Admin |
Datos de entrada:
- email: string (requerido)
- role_id: UUID (requerido)
- message: text (opcional)
Flujo:
- Admin ingresa email y selecciona rol
- Sistema verifica email no existe en tenant
- Sistema crea invitación con token único
- Sistema envía email con link
- Invitación expira en 7 días
Criterios de aceptación:
- Email de invitación enviado
- Token único generado
- Invitación listada como pendiente
RF-PMC-007-003: Aceptar Invitación
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-003 |
| Nombre | Aceptar Invitación |
| Prioridad | P1 |
| Actor | Usuario invitado |
Datos de entrada:
- token: string (del link)
- first_name: string
- last_name: string
- password: string
Criterios de aceptación:
- Usuario creado con rol asignado
- Password hasheado
- Invitación marcada como aceptada
- Usuario puede hacer login
RF-PMC-007-004: Editar Usuario
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-004 |
| Nombre | Editar Usuario |
| Prioridad | P1 |
| Actor | Tenant Admin |
Datos editables:
- first_name, last_name
- role_id
- status
Criterios de aceptación:
- Campos se actualizan
- Cambio de rol aplica inmediatamente
- Audit log registra cambios
RF-PMC-007-005: Suspender Usuario
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-005 |
| Nombre | Suspender Usuario |
| Prioridad | P2 |
| Actor | Tenant Admin |
Descripción: Bloquear acceso de un usuario temporalmente.
Criterios de aceptación:
- Status cambia a "suspended"
- Sesiones invalidadas
- Usuario no puede hacer login
- Admin no puede suspenderse a sí mismo
RF-PMC-007-006: Reactivar Usuario
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-006 |
| Nombre | Reactivar Usuario |
| Prioridad | P2 |
| Actor | Tenant Admin |
Criterios de aceptación:
- Status cambia a "active"
- Usuario puede hacer login
RF-PMC-007-007: Eliminar Usuario
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-007 |
| Nombre | Eliminar Usuario |
| Prioridad | P2 |
| Actor | Tenant Admin |
Criterios de aceptación:
- Status cambia a "deactivated"
- Soft delete
- Datos preservados (para auditoría)
- No puede ser el último admin
RF-PMC-007-008: Reenviar Invitación
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-008 |
| Nombre | Reenviar Invitación |
| Prioridad | P2 |
| Actor | Tenant Admin |
Criterios de aceptación:
- Nuevo email enviado
- Token regenerado
- Expiry extendido
Gestión de Roles
RF-PMC-007-009: Listar Roles
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-009 |
| Nombre | Listar Roles |
| Prioridad | P1 |
| Actor | Tenant Admin |
Datos de salida:
- Roles de sistema
- Roles custom del tenant
- Usuarios por rol
Criterios de aceptación:
- Todos los roles listados
- Identificación clara de roles de sistema
RF-PMC-007-010: Ver Permisos de Rol
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-010 |
| Nombre | Ver Permisos de Rol |
| Prioridad | P1 |
| Actor | Tenant Admin |
Datos de salida:
- Lista de permisos agrupados por módulo
- Checkbox de cada permiso
Criterios de aceptación:
- Permisos organizados por módulo
- Visual claro de lo que puede/no puede hacer
RF-PMC-007-011: Crear Rol Custom
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-011 |
| Nombre | Crear Rol Custom |
| Prioridad | P2 |
| Actor | Tenant Admin |
Datos de entrada:
- name: string
- description: text
- permissions: array[string]
Criterios de aceptación:
- Rol creado con is_system=false
- Permisos asignados
- Disponible para asignar a usuarios
RF-PMC-007-012: Editar Rol Custom
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-012 |
| Nombre | Editar Rol Custom |
| Prioridad | P2 |
| Actor | Tenant Admin |
Restricciones:
- Roles de sistema no editables
Criterios de aceptación:
- Permisos actualizables
- Cambios aplican inmediatamente a usuarios
RF-PMC-007-013: Eliminar Rol Custom
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-013 |
| Nombre | Eliminar Rol Custom |
| Prioridad | P3 |
| Actor | Tenant Admin |
Restricciones:
- No puede tener usuarios asignados
- Roles de sistema no eliminables
Criterios de aceptación:
- Validación de usuarios previo a eliminar
- Error si tiene usuarios
Configuración
RF-PMC-007-014: Ver Configuración del Tenant
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-014 |
| Nombre | Ver Configuración del Tenant |
| Prioridad | P1 |
| Actor | Tenant Admin |
Secciones:
- General (nombre, timezone, idioma)
- Branding
- Generación (defaults)
- Integraciones
- Notificaciones
Criterios de aceptación:
- Todas las secciones accesibles
- Valores actuales mostrados
RF-PMC-007-015: Editar Configuración General
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-015 |
| Nombre | Editar Configuración General |
| Prioridad | P1 |
| Actor | Tenant Admin |
Datos editables:
- Nombre del tenant
- Timezone
- Idioma por defecto
- Formato de fecha
Criterios de aceptación:
- Cambios guardados
- Aplican a nuevos usuarios
- Usuarios existentes pueden tener preferencia propia
RF-PMC-007-016: Configurar Integraciones
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-016 |
| Nombre | Configurar Integraciones |
| Prioridad | P2 |
| Actor | Tenant Admin |
Integraciones configurables:
- n8n webhook URL
- Slack webhook
- SMTP custom (opcional)
- CRM externo URL
Criterios de aceptación:
- URLs validadas
- Test de conexión disponible
- Secrets seguros
Auditoría
RF-PMC-007-017: Ver Logs de Auditoría
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-017 |
| Nombre | Ver Logs de Auditoría |
| Prioridad | P2 |
| Actor | Tenant Admin |
Filtros:
- Usuario
- Acción
- Entidad
- Fecha
Criterios de aceptación:
- Logs listados con paginación
- Filtros combinables
- Detalle expandible
RF-PMC-007-018: Exportar Logs de Auditoría
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-018 |
| Nombre | Exportar Logs de Auditoría |
| Prioridad | P3 |
| Actor | Tenant Admin |
Formatos:
- CSV
- JSON
Criterios de aceptación:
- Filtros aplicados en export
- Archivo descargable generado
Sistema (Super Admin)
RF-PMC-007-019: Ver Estado del Sistema
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-019 |
| Nombre | Ver Estado del Sistema |
| Prioridad | P2 |
| Actor | Super Admin |
Métricas:
- Estado de servicios (API, ComfyUI, Redis, DB)
- Uso de GPU
- Cola de generación
- Storage total
Criterios de aceptación:
- Dashboard de salud
- Alertas en problemas
RF-PMC-007-020: Ver Uso por Tenant
| Campo | Valor |
|---|---|
| ID | RF-PMC-007-020 |
| Nombre | Ver Uso por Tenant |
| Prioridad | P2 |
| Actor | Super Admin |
Métricas por tenant:
- Generaciones
- Storage
- Usuarios activos
- API calls
Criterios de aceptación:
- Comparativa entre tenants
- Exportable
Resumen
| Prioridad | Cantidad |
|---|---|
| P1 | 8 |
| P2 | 10 |
| P3 | 2 |
| Total | 20 |
Documento generado por: Requirements-Analyst Fecha: 2025-12-08