My Database
Groups:
GroupId,Name
Modules:
ModuleId,Name
ModulePermissions:
ModulePermissionId,ModuleId,PermissionValue,PermissionKey
Approach 1:
GroupModule:
GroupModuleId,GroupId,ModuleId,Permissions(varchar)
Approach 2:
GroupModule:
GroupModuleId,GroupId,ModulePermissionId,isAllowed
Actually i am going to develop a user authentication system for a cms.I am developing an interface where the rights of modules are issued against every Group.
Now i want to know the best practices for the database design for this scenario, since this module would be used for authentication throughout the application , so the application is greatly dependent on these tables.
Let me know if you need more explanation