Hi,
We have the below scenario -
User A has access to Engagement 1 and 2 and the child(1 to M) entities.
User B only can access Engagement 1 and it's child(1 to M) entities.
Also new Engagements and Projects can be added as needed.
Is above scenario best suited for Multi tenant application?
Best Regards,
Nitin
Hello Nitin,
Multi tenant design is recommended for applications which require data isolation between multiple client organizations or tenants. Segregation of data per user is not an ideal scenario for implementing multi tenancy. You can achieve this in much simpler way by storing proper relationship between user and the engagement data they can access, then implement the logic to fetch and show only that data to user which he has access to based on User-Engagement relationship stored in database for the user.
Imagine you implement multi tenancy in this scenario and there are thousands or even hundreds of users for your application, you would be end up having same number of tenants which are hard to manage and wastage of resources.
Hope it helps!
Junaid
i don't think you need multi tenant for this as Junaid explained above multitenant is if you want to have the same app used by multiple clients. So i would just filter the data by user. This way you could decide what each user has access to. Maybe also create an entity where you define those rules.
Hope this helps.
Lourenco Matalonga
As mentioned, you don't need multi tenant in this scenario. I guess OutSystems Roles and Group concept can help you here easily. For above case there will be two group for engagement 1 and 2 and you can assign this group to user. Also can do same thing at project level also.
regards