How to manage user roles in a mobile app?

Viewed 647

I need to create a flutter mobile app (medium scale), that can be used by 3 types of users for eg: Admin, Employee, Customer etc. Each user role has different capabilities. The mobile app will be integrated with the APIs.

Is it a good idea to create 2 mobile apps one for admin & employee, & the other app for the customer or just to create 1 app for all three types of user roles & manage it with role based access.

The reasons behind creating two apps for admin, employee & customer are as follows:

  1. Reducing application weight or size
  2. Reducing the no of updates that would go for the customer

But also I feel that creating 2 mobile apps for the 3 types of user roles have some limitations such as:

  1. Difficulty in maintaining 2 apps
  2. Adding new user roles will be difficult in future, we may have to create another separate app

So which is better, creating 1 app & managing it by role based access or creating 2 different apps for the 3 types of user roles?

Appreciate your support! Thanks in advance.

1 Answers

You really should create two apps. Having admin and employee functionality in a public application is a huge security risk.

You just need to make a mistake with permissions once and one of your customers can wreak havoc.

I would suggest making your Admin app a progressive web app which can still be installed like a native app, but you have the benefit of it updating automatically. And you wouldn't even need to publish it to an app store, which makes it a breeze to push changes to.

Related