Tenant Discovery in Multi-Tenant SaaS Using Event-Driven Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional global tenant discovery systems in multi-tenant SaaS environments face security risks and compliance issues due to the accumulation of personally identifiable information (PII) and the need to maintain data residency across geographies.

Innovation Solution

An event-driven architecture is implemented, utilizing a persistent and durable message bus with publish-subscribe activities, where tenant discovery messages are published without sensitive information on a global event bus, and tenant metadata messages are published regionally, ensuring data privacy and compliance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a global tenant discovery system is used to discover tenants across all instances, then tenant discovery capability is improved, but security risks increase due to accumulation of PII and compliance issues arise due to data residency requirements

Engineering Contradiction:
Improvetenant discovery capabilityVSAvoidsecurity risks and compliance issues
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The system segments the global tenant discovery functionality into regional discovery services, where each region maintains its own event bus and tenant discovery messages are published and consumed only within that region. This segmentation prevents accumulation of PII in a centralized global system while maintaining tenant discovery capability across multiple instances and geographies.

Inventive Principle:
Principle #1Segmentation

2Productivity

If tenant metadata is published globally on a single event bus, then tenant discovery efficiency is improved, but data privacy and compliance with regional data residency regulations deteriorate

Engineering Contradiction:
Improvetenant discovery efficiencyVSAvoiddata privacy and compliance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements local quality by creating region-specific event buses where tenant metadata is published and consumed locally. Each regional event bus handles tenant discovery for its specific region, ensuring that data privacy and compliance requirements are met while maintaining efficient tenant discovery within each region. The local nature of each event bus ensures that sensitive tenant information remains within its designated geographic boundary.

Inventive Principle:
Principle #3Local quality

3Device complexity

If a centralized global event bus is used for tenant discovery, then system complexity is reduced, but security vulnerabilities increase due to centralized storage of tenant information

Engineering Contradiction:
Improvesystem architecture complexityVSAvoidsecurity vulnerabilities
Core Design Contradiction:
Device complexityVSObject-affected harmful factors

Solution Approach 1:

The system extracts tenant metadata from a potential centralized global event bus and places it into separate regional event buses. This extraction removes the security vulnerability of centralized storage while maintaining the event-driven architecture benefits. Each regional event bus independently handles tenant discovery for its region, eliminating the single point of failure and security risk associated with a centralized global event bus.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS20250097312A1Secure and regionally compliant tenant discovery in multi-tenant saas environments using event-driven architecture
Publication Date: 2025.03.20 SALESFORCE INC
  • US20250097312A1 patent drawing
  • US20250097312A1 patent drawing
  • US20250097312A1 patent drawing

AI summary

Disclosed are some implementations of systems, apparatus, methods and computer program products for implementing a bi-level subscription process. A server computing device subscribes to a global topic. The server computing device receives a discovery message published to the global topic, where the discovery message specifies an instance name, a data center, and an instance URL. The server computing device subscribes to a regional topic having the instance name. The server computing device receives a metadata message published to the regional topic having the instance name, where the metadata message includes a tenant identifier, source information pertaining to a source from which events are to be obtained, and destination information pertaining to a destination via which the events are to be transmitted. The server computing device stores the source information and destination information in association with the tenant identifier, obtains events from the source and transmits the events to the destination.