I started using the MVC pattern a half year ago, and I still have some misunderstandings.
Now I want to implement a role based access control in my application. However, my question is not about RBAC, it is about MVC.
My implementation of RBAC is this: user->role->permission so every user (ex. userA) can have many roles (ex. reader, editor, admin), and every role can have many permissions (read, update, delete, etc.).
MySQL tables
- users (list of users)
- roles (list of roles)
- permissions (list of permission)
- roles_permissions (list of roles->permissions connections. ex. editor->update)
- users_roles (list of users->roles connections. ex. userA->editor)
Now my question is How should I implement this in MVC? Have a separate model for: users, roles, permissions, roles_permissions, users_roles, than have an authManager class that creates users, roles, permission, roles_permissions, and user_roles? Is this way correct? Is there a better, maybe more elegant way?