Requisitos
Antes de habilitar el modo multi-tenant:
- Define
MULTI_TENANT_ENABLED=trueyPLUGIN_AUTH_ENABLED=true. Matcher rechaza el arranque multi-tenant sin aplicación de la autorización. - Usa
AUTH_PROVIDER=plugin-auth. - Define
MULTI_TENANT_URLcon una URL HTTPS de solo origen en staging y producción, más unMULTI_TENANT_SERVICE_API_KEYno vacío.MULTI_TENANT_ENVIRONMENTes opcional y recurre aENV_NAMEcuando no se define. Se permitehttpen texto plano para el desarrollo local. En otros entornos también requiere unMULTI_TENANT_ALLOW_INSECURE_HTTP=trueexplícito. - Define
ENVIRONMENT_NAME(oENV_NAME) comostagingoproduction. - Entrega un claim
tenant_idotenantIdválido en las solicitudes autenticadas medianteplugin-auth. - Mantén la base de datos del tenant predeterminado disponible en el pool raíz para las cargas de trabajo del tenant predeterminado y las herramientas operativas.
SET search_path de PostgreSQL. Las credenciales específicas del tenant, los límites de red y la configuración de Tenant Manager siguen siendo parte del límite de aislamiento.
Identidad del tenant
Con
AUTH_PROVIDER=plugin-auth en modo multi-tenant, Matcher deriva la identidad del tenant de un claim JWT tenant_id o tenantId válido. No acepta un selector de tenant controlado por el llamador desde el cuerpo de la solicitud, los parámetros de consulta ni headers arbitrarios. Los despliegues de un solo tenant y los que tienen la autenticación deshabilitada usan el tenant predeterminado configurado.
Controles del pool de conexiones
En los límites configurados, el gestor de pools de tenant de Matcher expulsa un pool inactivo usado menos recientemente cuando resolver un tenant nuevo superaría
MULTI_TENANT_MAX_TENANT_POOLS. El tenant expulsado se vuelve a resolver bajo demanda. Valida el comportamiento de migración y de falla contra la integración de Tenant Manager desplegada.
Infraestructura compartida
Matcher delega la resolución de infraestructura consciente del tenant al servicio de plataforma de multi-tenancy. No supongas un nombre fijo de virtual host de RabbitMQ, una convención de headers de mensaje, un formato de claves de Redis, un TTL de cache ni un prefijo de S3 solo a partir de Matcher. Esas convenciones son específicas del componente y del despliegue. Revisa la documentación de infraestructura y de plataforma correspondiente antes de construir una integración alrededor de ellas.
Habilitar el modo
- Aprovisiona y verifica el tenant predeterminado y los tenants que Matcher debe servir.
- Configura el proveedor de autenticación, Tenant Manager, la conectividad con PostgreSQL y las variables de entorno de bootstrap.
- Arranca Matcher y confirma los health checks y una solicitud autenticada con alcance de tenant.
- Observa el conteo de pools de tenant y el uso de conexiones de base de datos bajo la carga esperada.
- Haz el despliegue solo después de que el comportamiento de aislamiento y de falla se haya ejercitado en el entorno objetivo.
Próximos pasos
Configuración en tiempo de ejecución
Revisa los valores que Matcher puede cambiar mediante Systemplane.
Seguridad
Revisa los controles de autenticación, de aislamiento de tenants y de TLS de dependencias.

