Comments (3)
Hi,
TL;DR: Not right now.
Boring stuff:
In Enso every role is a collection of permissions, and every action that a user can make in the app has a permission associated.
Right now the role-permission system does not allow multiple roles per user.
The reason for this is that we try to focus on developing a system that suits business apps with hundreds of users.We found that its preferable to configure permissions for clusters of users mapped on the business logic, and have tens of roles, instead of having fewer roles and managing every user with its attached ones. It also an easier structure to maintain in the long term.
For clusters of users we have Owners in Enso. Owners can be departments, and can have a set of roles.
For instance, you can have Owners like "Sales", "Procurement", "Logistics", "HR". For each Owner you can design a set of roles. For the "Sales" owner you can have something like:
- Salesman
- Local Sales Coordinator
- Regional Sales Coordinator
- Sales Manager
This way you can divide 50 people from a department under 4 roles, roles that are easy to manage and update, especially when the app is still growing.
Managing the Role-Permissions structure is easy to deal with thanks to the RoleConfigurator component that allows you to assign everything from the interface. You can read more in the docs.
One last thing, for your example it might be preferable to build three roles instead of two, and that roles would be client, supplier, client-supplier.
Cheers.
from enso.
Thanks for the detailed explanation. So if I understand correctly, instead of just one administrator being given access to set ALL roles and permissions on the entire system, the administrator can hand subsets of the permissions off to sub-administrators to manage their own group of users, and be limited in what permissions they can give to those users.
from enso.
That could be a good idea, but unfortunately that's not implemented. Usually the Sales Manager and the Regional Sales Manager, from the example above, do not have the necessary technical knowledge to manage roles themselves. This needs a deeper understanding of what permissions are and how they work. We think that configuring roles is something delicate and should be the developer's responsibility.
In our case wee are building the roles for our customers based on their specifications, and after that, the department managers can test everything in their responsibity by impersonating users with lower roles and checking what those users can see and can do in the app.
Our recommendation is that you keep the System menu for the developer and invoice more ;)
from enso.
Related Issues (20)
- Nuxt HOT 8
- composer.json PHP >=8.0 ? HOT 4
- API Login Request is not working on Cloudflare SSL
- Login component rendered after login on homepage HOT 9
- Vue 3 HOT 1
- 403 after login (instead of homepage) HOT 1
- API Issue after install HOT 4
- These dependencies were not found: @root/routes in ./node_modules/@enso-ui/ui/src/core/services/contexts.js HOT 1
- Component emitted event "edit" but it is neither declared in the emits option nor as an "onEdit" prop. HOT 2
- After update to 4.9.1 /api/broadcasting/auth is called 3 times but every call fails with status 419 and push notifications are not working anymore HOT 2
- "export 'Url' was not found in './Url.vue' || Uncaught TypeError: route is undefined HOT 3
- I am looking to pay for help with my Enso based project HOT 1
- FontAwesome 6.1.1 - upgrade. HOT 2
- composer.json loose version match - PHP 8.1 forced upgrade. HOT 2
- Logout does not do anything if session is expired.
- @enso-ui+companies+5.0.1.patch incompatible with companies 5.0.3
- Broken date-time filters on Value (exact match) for tables (from Enso 5.0.0) HOT 1
- Datetime filters may be misleading on the "time" part. HOT 1
- I am getting 500 error HOT 1
- Table filters when using time interval the calendar month forward/backward button unexpectedly close the filter UI
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from enso.