# US-MGN-002-003-001: Asignar Usuarios a Empresas (Multi-Company Access) **RF Asociado:** [RF-MGN-002-003](../../02-modelado/requerimientos-funcionales/mgn-002/RF-MGN-002-003-asignacion-usuarios-empresas.md) **Módulo:** MGN-002 - Empresas y Organizaciones **Epic:** Multi-Empresa **Prioridad:** P0 (MVP) **Story Points:** 5 **Sprint:** Sprint 4 **Fecha:** 2025-11-24 --- ## User Story **Como** administrador, **Quiero** asignar usuarios a una o múltiples empresas, **Para** controlar a qué datos empresariales tiene acceso cada usuario. --- ## Criterios de Aceptación ### Escenario 1: Asignar usuario a empresa **Cuando** asigno usuario a empresa A, **Entonces** usuario puede ver/editar datos de empresa A según sus permisos. ### Escenario 2: Usuario multi-empresa **Cuando** asigno usuario a empresas A y B, **Entonces** usuario puede cambiar contexto entre empresas (company switcher). ### Escenario 3: Revocar acceso a empresa **Cuando** elimino asignación de empresa, **Entonces** usuario ya no ve datos de esa empresa. --- ## Reglas de Negocio - **RN-1:** Un usuario puede tener acceso a múltiples empresas del mismo tenant - **RN-2:** Usuario debe tener al menos 1 empresa asignada - **RN-3:** Queries filtran por company_id de empresa activa - **RN-4:** Al login, establecer empresa por defecto --- ## Tareas Técnicas - [ ] POST /api/v1/users/:id/companies - Asignar empresa - [ ] DELETE /api/v1/users/:id/companies/:companyId - Revocar - [ ] GET /api/v1/users/:id/companies - Listar empresas del usuario - [ ] Tabla: org.user_companies (user_id, company_id, is_default) - [ ] Tests --- ## Estimación: 5 SP --- ## Referencias - [RF-MGN-002-003](../../02-modelado/requerimientos-funcionales/mgn-002/RF-MGN-002-003-asignacion-usuarios-empresas.md)