Guilda WorkDevelopers

INTEGRACIÓN

Aislamiento multi-cliente

Cómo se garantiza que los datos de un tenant nunca los vea otro.

Guilda Work es multi-tenant: cada cliente (tenant) tiene sus propios usuarios, y sus datos nunca son visibles para otro — tanto en el registro de actividad propio como en cada una de las herramientas conectadas del catálogo. No es una convención de interfaz: cada mecanismo de aislamiento se ha verificado contra la herramienta real antes de darlo por bueno.

Patrones de aislamiento usados

PatrónHerramientasCómo funciona
Instancia compartida + grupo/rol OIDCEspoCRM, Nextcloud, Paperless-ngxUn único despliegue para todos los tenants; el login SSO mapea el Equipo/Grupo/Rol del usuario según su tenant, y la propia herramienta filtra por ese grupo.
Instancia física propia por tenantFacturaScriptsCada tenant tiene su propio contenedor + base de datos — el único caso sin aislamiento lógico posible (el plugin de multiempresa disponible no restringe accesos).
Instancia compartida + token/rol por tenantDocumenso, Baserow, ListmonkUn despliegue compartido; cada tenant tiene su propio token de API o rol con permisos restringidos a sus propios recursos (Equipo/Workspace/Lista según la herramienta).
Instancia compartida + cuenta individualCal.diySin Equipos/SSO en su edición libre — cada tenant tiene su propia cuenta de usuario dentro de la instancia compartida.
Instancia compartida + Tenant/Domain/AccountStalwart (correo propio)Objetos JMAP Tenant/Domain/Account nativos del servidor de correo — verificado en vivo que cruzar el accountId de otro tenant devuelve un 403 forbidden real del servidor, no un filtro de cliente.

Dar de alta un cliente nuevo

Un solo paso desde el backoffice (o python cli.py crear-tenant): el sistema prepara automáticamente el espacio del tenant en cada herramienta conectada que tenga aprovisionamiento automático — sin configuración manual añadida, salvo un puñado de pasos que por diseño de la propia herramienta externa no se pueden hacer por API (p. ej. la clave de API de FacturaScripts se genera a mano una única vez, no hay endpoint para ello). El backoffice también permite asignar usuarios existentes a un tenant y dar de alta a personas nuevas directamente dentro de uno.

El gestor de contraseñas (Vaultwarden) queda excluido a propósito de todo el sistema de aprovisionamiento e IA — es de uso exclusivamente humano, nunca accesible por ninguna automatización ni tool de MCP.