Multi-Tenant
Multi-tenant es cómo el Console organiza múltiples organizaciones (como tu compañía y tus clientes) de una manera que mantiene los datos de todos completamente separados y seguros.
Por Qué Importa el Multi-Tenant
Al usar una plataforma como Console, necesitas asegurar que:
- Los datos de tu compañía estén completamente aislados de otras compañías
- Cada compañía pueda gestionar sus propios usuarios independientemente
- La configuración, permisos y datos se mantengan separados
- Un problema de seguridad en una organización no afecte a otras
Console maneja todo esto automáticamente para ti.
La Jerarquía Organizacional
Console organiza tus datos usando una estructura clara:
Compañía (Tu Organización)
└── Usuarios (Los miembros de tu organización)
└── Grupos → Permisos
Compañía
La Compañía representa tu organización en Console. Es el nivel superior de tu jerarquía.
Cada compañía tiene:
- Un nombre único (ej: "Acme Corporation")
- Un slug usado para iniciar sesión (ej: "acme-corp")
- Configuración de toda la organización
- Completo aislamiento de datos de otras compañías
El slug de tu compañía es lo que los usuarios ingresan al iniciar sesión. Es parte de la identidad de tu organización en Console.
Usuario
Los Usuarios son las personas en tu organización. Cada usuario:
- Tiene una dirección de correo electrónico única (dentro de su compañía)
- Pertenece a uno o más grupos (que definen permisos)
- Tiene un estado:
invited,activeoinactive
Ciclo de Vida del Usuario:
- Invitado - El usuario ha recibido un correo de invitación
- Activo - El usuario ha establecido su contraseña y puede iniciar sesión
- Inactivo - El acceso del usuario ha sido temporalmente deshabilitado
Grupos
Los Grupos son la forma principal de organizar usuarios y controlar permisos dentro de tu compañía. Úsalos para:
- Definir roles (Administradores, Desarrolladores, Visualizadores)
- Organizar por departamento (Ingeniería, Marketing, Ventas)
- Crear niveles de acceso (Solo lectura, Editor, Gerente)
- Gestionar permisos a escala
Los grupos contienen permisos que definen lo que los usuarios pueden hacer en el sistema.
Aislamiento de Datos
Una de las características más importantes de Console es el completo aislamiento de datos entre compañías.
Cómo Funciona
Cuando inicias sesión en Console:
- Te autenticas con el slug de tu compañía
- Console identifica a qué compañía perteneces
- Todos los datos que ves son automáticamente filtrados a tu compañía
- No puedes acceder a datos de otras compañías, incluso si conoces sus IDs
Esto significa:
- Cada compañía ve solo sus propios usuarios
- Los permisos están limitados a tu compañía
- Completa privacidad y seguridad
Lo Que Ves
| Cuando ves... | Solo ves... |
|---|---|
| Usuarios | Usuarios en tu compañía |
| Grupos | Grupos en tu compañía |
| Permisos | Permisos en tu compañía |
| Configuración | La configuración de tu compañía |
Ejemplo Práctico
Veamos cómo funciona esto en la práctica:
Escenario
Compañía: Acme Corp
- Grupo Administradores: Alice (Gerente), Charlie (Tech Lead)
- Grupo Desarrolladores: Bob (Ingeniero), Charlie (también en Desarrolladores), Diana (Ingeniera)
- Grupo Marketing: Eve (Gerente de Marketing)
Lo Que Cada Persona Ve
Alice (Administradora):
- Acceso completo a todos los recursos de la compañía
- Puede gestionar todos los usuarios y grupos
- Puede modificar la configuración de la compañía
Charlie (Administrador + Desarrollador):
- Tiene permisos combinados de ambos grupos
- Puede realizar tareas administrativas
- También puede trabajar con recursos de desarrollo
Bob (Solo Desarrollador):
- Acceso a recursos de desarrollo
- No puede modificar permisos de usuarios
- No puede acceder a funciones administrativas
Eve (Solo Marketing):
- Acceso a recursos de marketing
- No puede ver datos de desarrollo (a menos que los permisos lo permitan)
- No puede realizar tareas administrativas
Mejores Prácticas
1. Usa Grupos para Organización
Organiza tus usuarios con grupos significativos:
Compañía: Acme Corp
├── Grupo Administradores - Acceso completo al sistema
├── Grupo Ingeniería - Recursos de desarrollo
├── Grupo Marketing - Recursos de marketing
└── Grupo Visualizadores - Acceso solo lectura
2. Define Límites de Permisos Claros
Dentro de tu compañía, usa grupos para definir lo que los usuarios pueden hacer:
Grupo Ingeniería
├── Puede gestionar repositorios de código
├── Puede desplegar a staging
└── Puede ver logs de producción
Grupo Marketing
├── Puede gestionar campañas
├── Puede ver analytics
└── No puede acceder a repositorios de código
3. Mantén la Simplicidad
Comienza con una estructura simple y agrega complejidad solo cuando sea necesario:
Fase 1: Grupos básicos (Administradores, Usuarios, Visualizadores)
Fase 2: Agregar grupos específicos por departamento
Fase 3: Agregar grupos de roles especializados según sea necesario
4. Nombra las Cosas Claramente
Usa nombres descriptivos que hagan la estructura obvia:
- ✅ "Departamento de Ingeniería"
- ❌ "Grupo 1"
- ✅ "Visualizadores Solo Lectura"
- ❌ "Grupo A"
Consideraciones de Seguridad
Lo Que Console Garantiza
- Aislamiento completo: Sin acceso a datos entre compañías
- Autenticación segura: Múltiples métodos de autenticación con 2FA opcional
- Registro de auditoría: Todo acceso es registrado
- Filtrado automático: Los datos son filtrados por compañía automáticamente
Lo Que Deberías Hacer
- Revisar acceso regularmente: Verifica quién tiene acceso a qué
- Desactivar prontamente: Elimina el acceso cuando los usuarios se vayan
- Usar grupos apropiados: No des a los usuarios acceso que no necesitan
- Activar 2FA: Requiere autenticación de dos factores para roles sensibles
Próximos Pasos
Ahora que entiendes multi-tenant, aprende sobre:
- Permisos - Controlando lo que los usuarios pueden hacer
- Autenticación - Cómo los usuarios inician sesión de forma segura
- Guía de Gestión de Usuarios - Gestión práctica de usuarios
- Configurando Permisos - Configura el control de acceso
¿Interesado en cómo funciona multi-tenant a nivel de API? Ve los Conceptos de Multi-Tenant de la API para detalles técnicos.