← Blog

Equipo PEVENDE ·

CRM multiempresa: roles y separación de datos

Una selección de empresa en pantalla no es una autorización. El servidor debe comprobar quién actúa, a qué empresa pertenece y qué operación tiene permitida en cada solicitud.

Definir permisos antes de invitar

Crear una matriz simple: propietario administra la empresa, administrador gestiona equipo y operador trabaja con registros autorizados. El rol de consulta no debe poder modificar. Los nombres de roles no bastan; documentar operaciones concretas.

Comprobar cada solicitud

OWASP recomienda denegar por defecto y verificar permisos en cada solicitud. Un identificador de empresa enviado por el navegador no prueba membresía. Las búsquedas, exportaciones y acciones masivas necesitan los mismos límites que la edición individual.

Prueba negativa

Ejercicio hipotético: una persona pertenece a la empresa A, no a B. Cambiar en una solicitud el identificador de un contacto de A por uno de B debe fallar sin revelar datos. Repetir la prueba en lectura, edición y exportación.

Salir también requiere proceso

Al retirar una membresía, comprobar sesiones, asignaciones, credenciales e integraciones delegadas. Registrar quién autorizó el cambio. No conservar acceso por comodidad cuando una persona deja de operar para la empresa. Revisar también enlaces directos y archivos adjuntos. Ocultar una opción en la interfaz no basta cuando un usuario puede repetir una solicitud o reutilizar una URL obtenida antes de perder acceso.

Checklist para aplicar

  1. Documentar acciones permitidas por rol.
  2. Probar acceso cruzado y denegación por defecto.
  3. Revisar accesos al retirar una membresía.

Fuentes primarias

Consultadas el 2 de octubre de 2026. Las políticas y los productos pueden cambiar; revisar la fuente antes de implementar.