Skip to content

Multi Tenancy

Binod edited this page Mar 12, 2019 · 7 revisions

Different Companies/Sites/Users share different level of roles for giving different layer of permissions. And those roles are as follows:

  1. Super Admin
  2. Admin
  3. Manager
  4. User
  5. Guest

Architecture
Fig (1): Multi-Tenant Architecture

We can view the architecture from two different angle: A. Company B. User


A. Company

Company wise, we categories three level of companies.

1. Super Admin

  • Super Admin is us at Nube iO

2. Admin

  • Admin is the Nube iO client (Vendor)
  • Associates on Super Admin company

3. Manager

  • Manager is our client’s client
  • Associates on Admin company

B. User

1. Super Admin

  • Super Admin user is the user which is associated with Super Admin company and has role Super Admin
  • User with role Super Admin has all read/write/delete for its child descendants on the hierarchy and can read/write(partial) own values

2. Admin

  • Associates with it's respective company having role Admin
  • User with role Admin has all read/write/delete for its child descendants on the hierarchy and can read/write(partial) own values

3. Manager

  • Associates with Admin company with role Manager
  • User with role Manager has all read/write/delete for its child descendants on the hierarchy and can read/write(partial) own values

4. User

  • Users will typically have read and write permissions
  • Associates with Manager company with role User
  • Limited on read/write(partial) own values

5. Guest

  • Guests will typically only have read permissions
  • Associates with Manager company with role Guest
  • Limited on read/write(partial) own values

To achieve that requirements we have following schemas:

  1. company
  2. site
  3. user
  4. user_group

Clone this wiki locally