0

I am creating a Multi Tenant application which each individual Tenant will have their own list of users (able to login as well).

As this is the first time I am developing such application I am unsure what is the best practice to store those sub users under every Tenant.

Current design:
Master User Database (stores login credentials of multiple tenants)
Tenant Database (each tenant will have their individual database)

To allow individual Tenant to have their own sub users, I am thinking to add a new Table under individual Tenant Database. Another way is to add a new Table under Master User Database which will store all those information.

Also, the login should be done at a centralized login portal whereby Tenant or sub users will do the login there and will redirected accordingly.

But after logging in, I am unsure if it is best to redirect to Tenant sub domains or a general dashboard.

Anyone have experience in these and can give me some solid suggestions?

EDIT 2017-04-20: On another thought, I think that it might not be advisable for sub users of Tenant to store in Master User Database since it will be exposed? But if users are to be stored in individual Tenant database then how can a centralized login portal works?

Norman
  • 387
  • 2
  • 11
  • This design pattern you are referring to is called `single tenancy`. Wherein there is a 1:1 relationship between tenants and databases. The master can easily make reference to the `tenants` to verify the access, then change the database connection based on the tenant. – Ohgodwhy Apr 20 '17 at 06:23
  • @Ohgodwhy Just to clear some doubts, why is this design single tenancy? From what I know, single tenancy means that the software if only used by that particular tenant. I am designing the database based off multi tenant individual database approach. Every tenant is using the same instance of the application to login. References can be done in Option 3 in this link http://stackoverflow.com/questions/13325383/multi-tenant-php-saas-separate-dbs-for-each-client-or-group-them?rq=1 – Norman Apr 20 '17 at 08:45
  • Hi @Norman, how is your progress? I am developing something very similar and started also about 9 months ago... – lewis4u Feb 13 '20 at 08:40

1 Answers1

0

Very Simple You need to create tenant sub user into master user table as well, then your single login page will work.