There have been many forum discussions and feature requests pertaining to user/role permissions, but I haven't found one (yet) that covers this issue. It may solve many issues if the concept of Role is moved from the User Module into it's own module (likely the Role Module). This would enable more granularity of assignment of user permissions.
For instance, I would like a "second" level administrative user to be able to assign Roles to user accounts, but NOT be able to change the permissions for Roles. The Role Module would have it's own set of permissions. This may be a bit circular for the User Permissions handling, but with some thought it could be handled.
Comments
Comment #1
gpk commentedWhether or not there is a separate role.module is I think not the issue here - it's a question of granularity of permissions, and this is not directly dependent on how core is broken down into modules. Note that we have been getting more granularity with every major release.
Changing the title since this is the only definite feature I can identify in your original post ;) If there are other permissions you believe should be added then feel free to amend.
Also changing version since no new features will be going into 6.x.
Finally, I have a feeling that there may be one or two contributed modules that let you do this sort of thing. If you find any perhaps you could post back here.
Comment #2
Feet commentedI was looking to do the same thing. And after reading this I found http://drupal.org/project/roleassign which does the trick for me.
Comment #3
sun.core commentedComment #4
droplet commentedsub
Comment #5
marcingy commentedAnother start point for core is http://drupal.org/project/role_delegation
Comment #6
josevitalsoutoThis is an important feature for permissions granularity.
Comment #9
dpiSimilar to #151311: Split 'administer permissions' into a new administer roles permissions
Comment #15
mmbkComment #16
mmbkComment #17
eelkeblokNot sure if there are any more issues about similar stuff, but we have an internal module that adds the following permissions:
* Assign (or revoke) specific roles.
* Edit users with specific roles (if a user has a role that another does not have permission for to edit users with the role, the second user does not get to edit them).
* Administer the permissions for specific roles (does not allow assigning permisions the user does not have themselves).
This solves what is in effect a core bug (actually come to think of it, that would probably be lying around somewhere..?), namely that if someone has the administer permissions and/or administer users permissions they basically get to assign themselves absolute power.
Comment #18
eelkeblokFound another related issue, #48544: Do not let grant more permissions than you actually have.