Wir haben in Drupal 7 eine Site eingerichtet, auf der bestimmte Benutzer Zugriff auf die Benutzerverwaltungsseite haben und neue Benutzer erstellen, Rollen zuweisen usw. können. Wir möchten ihnen jedoch keinen Zugriff auf die Seite gewähren Rollen- und Berechtigungsseiten.
Derzeit hat Drupal nur 2 Berechtigungen Administer Permissions
und Administer users
.
Mit dieser Administer users
Berechtigung hat der Benutzer Zugriff auf die Seite Benutzerverwaltung und kann neue Benutzer erstellen, Benutzern jedoch keine Rollen zuweisen.
Wenn der Benutzer über die Administer permissions
Berechtigung verfügt, kann er Benutzern Rollen zuweisen und auch auf die Berechtigungs- und Rollenverwaltungsseiten zugreifen.
Wie würden Sie einem Benutzer das Recht einräumen, Benutzern Rollen zuzuweisen, ihn jedoch daran hindern, auf die Berechtigungsseite zuzugreifen?
Hmmm ... Interessant, dass es dafür keinen eindeutigen Weg zu geben scheint. Dies scheint ein gemeinsames Merkmal für Menschen zu sein. Ich habe ein paar Lösungen gefunden:
http://drupal.org/project/protect_permissions - Dies ist jedoch noch nicht für die Produktion bereit.
Ich denke jedoch, dass Sie mit http://drupal.org/project/permissions_lock erreichen können, was Sie wollen
Sie benötigen außerdem: http://drupal.org/project/user_permissions
Letzteres scheint das Gegenteil von dem zu tun, was Sie wollen, aber Ersteres scheint genau das zu tun, was Sie wollen. Ich habe keines von beiden auf meiner Entwicklungsseite getestet, um sicherzustellen, dass dies zu 100% für Sie funktioniert. Wenn ich auf etwas anderes stoße, werde ich diese Antwort aktualisieren.
quelle
Die Rollendelegation hinterlässt eine Sicherheitslücke. Sie müssen Personen die Administrationsbenutzer zuweisen , damit diese die Administrationsseite und die darin enthaltenen Tools verwenden können.
Wenn Sie dies jedoch tun, kann diese Rolle sogar Superadmin bearbeiten. Eine vollständige Beschreibung finden Sie unter Vorsicht vor der Berechtigung Benutzer verwalten von Drupal .
Meine Lösung ist Rollendelegation + dieser Hook
quelle
In letzter Zeit haben wir das roleassign- Modul verwendet, das genau das tut, was Sie verlangen. Es ist grundsätzlich identisch mit dem Modul role_delegation, könnte aber eine Alternative sein, wenn Sie etwas anderes benötigen.
Ein wesentlicher Unterschied besteht darin, wie Sie entscheiden, welche Rollen zugewiesen werden sollen. Mit roleassign wählen Sie einfach die aus, die Sie zur Verfügung stellen möchten, und es wird nur eine einzige neue Berechtigung zum Zuweisen dieser Rollen hinzugefügt:
Das Modul role_delegation scheint eine neue Berechtigung für jede auf der Site vorhandene Rolle zu erteilen:
Das Modul role_delegation scheint außerdem fast die dreifache Anzahl von Installationen und eine "empfohlene" Drupal 8-Version zu haben. Die Problemwarteschlange scheint auch in einem besseren Zustand zu sein, also ist es wahrscheinlich die bessere Option?
quelle