Elternrollen
Eingetragen von psfjkmmmms (4)
am 16.11.2016 - 14:52 Uhr in
am 16.11.2016 - 14:52 Uhr in
Bietet Drupal die Möglichkeit eine weitere Elterntrolle wie "authentifizierter Benutzer" anzulegen, sodass Permissions direkt übernommen werden können ohne weiteren Aufwand?
Oder gibt es die Möglichkeit, dass man die Kindrolle die unter "authentifizierter Benutzer" aufgelistet sind wieder entfernen kann?
Vielen Dank im Voraus.
Gruß
psfjkmmmms
- Anmelden oder Registrieren um Kommentare zu schreiben
Rollen in Drupal wirken
am 16.11.2016 - 19:56 Uhr
Rollen in Drupal wirken additiv. Wenn jemand zwei Rollen gleichzeitig hat, besitzt er damit die Summe aller Rechte aus diesen beiden Rollen. Eine weitere Rolle kann ihm aber keines der vorhandenen Rechte aus Rolle 1 oder Rolle 2 wegnehmen. Also solltest Du die Rollen so aufbauen, daß sie immer als "Erweiterungspaket" wirken. jeder angemeldete Benutzer hat die Rolle "angemeldete Benutzer". Die restlichen Rechte packst Du jetzt in "Rollenpäckchen", so daß immer weitere Rollen hinzugefügt werden können. Damit kommst Du zum Ziel.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Nicht klar
am 18.11.2016 - 16:25 Uhr
Das beantwortet leider nicht meine Frage. Viel mehr möchte ich wissen wie ich eine Elternrolle anlege,
Drupal selbst besitzt zwei vordefinierte Rollen "authenticted User", "Anonymous User", wobei "authenticted User" eine Elternrolle ist.
Genauso eine Elternrolle möchte ich nochmal erstellen um die Zuordnung von Permissions leichter zugänglich zu machen.
Vielen Dank schon einmal.
Vererbung ginge nur künstlich im additiven Rollenspiel
am 18.11.2016 - 18:12 Uhr
Das Vererbungs-Prinzip von Rollen ist bei Drupal zumindest im Standard System nicht vorgesehen. Wie Werner schon richtig dargestellt hat, verhalten sich die Rechte-Zuweisungen über Rollen additiv in Drupal.
Die zwei "Sonder-Rollen" für angemeldete und nicht angemeldete Benutzer sind aber keine Eltern-Rollen, wie Du meinst. Zunächst mal dient die "Gast-Rolle" nur einem einzelnen Benutzer, der quais keine "Persönlichkeit" hat bzw. alle nicht angemeldet Benutzer im Rechte System subsummiert und die User ID 0 hat. Die Rolle "angemeldeter Benutzer" ist hard codiert allen angemeldeten Benutzern zugewiesen und kann auch nicht von Benutzern entfernt werden. User, die z.B. die Rechte einer Rolle Z haben, haben eben immer auch zusätzlich die Rechte der Rolle "angemeldeter Benutzer". Somit können wir im Standard-System Benutzern auch keine speziellen Rechte entziehen (subtrahieren). Wenn wir entsprechende Konzepte umsetzen müssen, müssen wir leider viele zusätzliche Rollen schaffen mit einzelnen oder wenigen Permission-Sets und dafür sorgen, daß diese Permissions außer vllt. bei einer Admin.Rolle (die in Drupal auch künstlich ist) auftauchen. Dann können wir eben über den Entzug einer Rolle, aben auch die dazugehörigen Rechte entziehen, sofern wir bei der zuvor genannten Konfiguration nichts übersehen haben bei anderen evtl. vorhandenen Rollen.
Dies würde dann zu Situationen gehören, bei denen das Rollen- und rechte-System von Drupal nicht gerade einfach ist in der Konfiguration ist. Vor allem bei vielen Rollen und Rechten kann es allein schon bei der Formular-Verarbeitung der Permission-Matrix schnell zu Problemen führen durch Timeouts bei Speichern des Formulars. Das ist einer der Gründe, warum ich bei vielen Systemen das Modul "Faster Permissions" benutze.
Wenn es nur um die Logik geht, neuen Benutzern automatisiert eine oder mehrere Rollen zuzuweisen, dann gibt es auch dafür spezielle Module oder das kann man auch mit Rules steuern. Ein Vererbungs-Prinzip ließe ich dann künstlich herstellen, indem man Benutzern, denen man eine Rolle X zuweise automatisch dann auch die Rolle Y zuweisen würde.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: Tech. Concepts | Security + Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen