Přeskočit na hlavní obsah

Multitenancy

Overview

Multitenancy is a reference to the mode of operation of software where multiple independent instances of one or multiple applications operate in a shared environment. The instances (tenants) are logically isolated, but physically integrated.

Terms

  • Person - Physical person with name, contacts (email, address, phone number, etc.)
  • User - Authentication entity. User account are login data for users and data for access to tenants, organizations.
  • Tenant - Logical container for data of one Company.
  • Organization - Organization of Company.

Rules

  • One Person can have multiple User accounts.
  • User account always connected with one Person.
  • Tenant contains one or more Organizations.
  • Only one tenant can be selected at a time on User account.
  • Selected Organization can be override by custom headers per request.

Tenant data isolation

One user one Tenant access

Isolation of the user to the database. Two users and each have access to their tenant's data and both have access to common non-tenant data. images/multitenancy_overview.png

One user multiple Tenant access

One user account can have access to multiple tenants. images/multitenancy_overview2.png

Relationships of users, tenants and organizations

images/multitenancy_01.png