[Auditoría] Registrar admin creador en alta de usuarios #6

Closed
opened 2026-04-15 14:19:56 +00:00 by dmolinari · 0 comments
Owner

Origen: UDT-003 (PR #4) — la spec original no exige auditar quién crea cada usuario.

Contexto actual

  • CreateUsuarioCommandHandler inserta el usuario sin registrar el adminId (sub claim) del caller.
  • La tabla dbo.Usuario no tiene columna CreatedBy.

Qué hay que hacer cuando se aterrice auditoría (UDT a definir en Fase 7 / ADM-004)

  • Decisión: ¿columna CreatedBy INT en Usuario o tabla AuditLog centralizada?
  • Si columna directa: migración VXXX__add_usuario_createdby.sql, FK a Usuario.Id, actualizar UsuarioRepository.AddAsync para recibir el adminId.
  • Si audit log: entry {action: "user.create", actorId, targetId, ts, metadata}.
  • Mismo tratamiento en endpoints futuros de edit/deactivate/password-reset.

Acceptance criteria

  • Cada alta de usuario queda registrada con timestamp + admin que la ejecutó.
  • Reporte/endpoint de consulta de auditoría (según decisión de UDT ADM-004).
  • Migración + seed si aplica.

Archivo a consultar al retomar: engram sdd/udt-003-registro-usuarios/archive-report (deuda documentada).

**Origen**: UDT-003 (PR #4) — la spec original no exige auditar quién crea cada usuario. **Contexto actual** - `CreateUsuarioCommandHandler` inserta el usuario sin registrar el `adminId` (sub claim) del caller. - La tabla `dbo.Usuario` no tiene columna `CreatedBy`. **Qué hay que hacer cuando se aterrice auditoría (UDT a definir en Fase 7 / ADM-004)** - Decisión: ¿columna `CreatedBy INT` en `Usuario` o tabla `AuditLog` centralizada? - Si columna directa: migración `VXXX__add_usuario_createdby.sql`, FK a `Usuario.Id`, actualizar `UsuarioRepository.AddAsync` para recibir el `adminId`. - Si audit log: entry `{action: "user.create", actorId, targetId, ts, metadata}`. - Mismo tratamiento en endpoints futuros de edit/deactivate/password-reset. **Acceptance criteria** - [ ] Cada alta de usuario queda registrada con timestamp + admin que la ejecutó. - [ ] Reporte/endpoint de consulta de auditoría (según decisión de UDT ADM-004). - [ ] Migración + seed si aplica. **Archivo a consultar al retomar**: engram `sdd/udt-003-registro-usuarios/archive-report` (deuda documentada).
dmolinari added the followup label 2026-04-15 14:19:56 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dmolinari/SIG-CM2.0#6