Discord: Tutorial – Rechtemanagement leicht gemacht
Das Discord Rechtesystem ist ein mächtiges Werkzeug, wenn man weiß, wie man es richtig konfiguriert. Dieses Tutorial soll Dir helfen deinen Server nicht in einem Berechtigungswirrwar versinken zu lassen, bei dem man im schlimmsten Fall am Ende selbst nicht mehr durchblickt.
In jedem Falle sollte man sich bei dem Einstellen der Berechtigungen Zeit nehmen. Die richtige Konfiguration ist keine Sache, von der man erwarten sollte, dass sie in wenigen Minuten abgeschlossen ist.
Zunächst sollte man sich ein Konzept überlegen, wie der Server aufgebaut sein soll und welche Nutzergruppe in welchem Channel welche Rechte bekommen soll.
Danach kann man mit der Umsetzung beginnen.
Zum grundlegenden Verständnis der Funktionsweise der Rechteverwaltung.
Auf der untersten Ebene stehen die Basisberechtigungen jeder Rolle. Diese findet ihr in der Rollenverwaltung.
Hier könnt ihr mittels „Schaltern“ einer Nutzergruppe die grundlegenden Berechtigungen gewähren.
Man muss wissen, dass diese Berechtigungen auf einander aufbauen. Das Fundament bietet hier immer die „everyone“ Rolle. Das sind die Berechtigungen, die jedem zur Verfügung stehen.
Möchte man nun zum Beispiel verschiedenen Nutzern eine spezielle Rolle für eine Farbe zuweisen, die aber nicht mehr können soll, als ohnehin jeder schon kann, muss man bei dieser Rolle keinerlei Rechte aktivieren, da die Nutzer ja schon von der „everyone“ Rolle die nötigen Rechte haben.
Diese Vorgehensweise kann ich nur wärmmstens empfehlen. Bei der Rechteverwaltung gibt es in meinen Augen eine wichtige Regel: „Weniger ist meh“.
Man muss keine Berechtigungen mehrfach zuweisen. Das hat einen Hintergrund. Will man die Rechte irgendwann mal begrenzen, muss man nur die niedrigste Ebene dieser Rechte aufrufen und den Schalter umlegen.
Hat man diese Rechte allerdings in allen Rollen erneut vergeben, muss man jede Rolle prüfen, ob die Rechte aktiv sind oder nicht.
Das ist extrem unnötige Arbeit und kann durchaus bei sehr komplexen Rollengeflechten, sehr unübersichtlich werden.
Macht diesen Schritt wirklich gewissenhaft, denn er bietet das Fundamen für alle weiteren Rechtevergaben.
Overwrites, wenn das Chaos meist beginnt.
Wie es in der Überschrift schon steht sind Overwrites meist der Punkt, an dem viele Serverbesitzer so richtig Chaos stiften und am Ende selbst nicht mehr durchblicken.
Auch hier gilt die Regel, weniger ist mehr. Ein kkleines Beispiel, was auf sehr vielen Servern der Fall ist. Man möchte die Channel zunächst für neue Nutzer verstecken, bis diese die Regeln des Servers akzeptiert haben.
Was ich sehr oft gesehen habe is folgendes Vorgehen:
Zunächst wird die Channel Struktur angelegt, dann denken sich die Serverbesitzer Gut, nun möchte ich von meinen 10 Channels 9 verstecken, nur 1 Channel soll sichtbar bleiben, in denen ich die Regeln veröffentliche.
Sie gehen also in die Overwrites der besagten 9 Channels, was ja zunächst nicht grundlegend falsc ist, aber dann geht es meist los:
Es soll ja alle Nutzer betreffen, logisch ist die „everyone“ Rolle. Perfekt, das war ja einfach, weiter geht’s. Was soll der Nutzer nicht können? Ok schauen wir mal:
- Channels soll er nicht sehen
-
Schreiben soll er nicht dürfen
- Ach ja, den Nachrichtenverlauf soll er auch nicht lesen dürfen
- Und zu Sprachkanälen verbinden schonmal gar nicht!
- Und …
STOP!!!!!!
Genau so beginnt das Chaos! Denn genau das ist falsch.
Wie ich bereits sagte, denkt minimalistisch und möglichst so, dass man ohne viele Handgriffe Dinge ändern kann.
Was wollt ihr also? 9 von 10 Channels verstecken, OK. Wo setzt man dafür an? An der „everyone“ Rolle, das war im Beispiel korrekt.
Dennoch, warum in 9 Channels Overwrites einrichten, wenn man die „View Channels“ Rechte auch global in der „everyone“ Rolle entfernen kann und dann EINEN overwrite für den Regeln Channel einrichtet, der nur dort die Sichtbarkeit zulässt.
Warum außerdem Schreiben, Lesen, Sprechen, etc verbieten? Das ist absolut unnötig! Wie soll man diese Rechte nutzen, wenn man die Channels gar nicht sehen kann?
Um das Szenario im Beispiel simpel zu lösen wäen also folgende Schritte nötig:
- Man nimmt der „everyone“ Rolle global die „View Channels“ Rechte
- Man erstellt im Regel Channel einen Overwrite, der der „everyone“ Rolle NUR die „View Channels“ Rechte gibt (und vielleicht die Schreibrechte verbietet, denn man möchte dort ja sicher keinen Chat)
- Man erstellt eine „Regel akzeptiert“ Rolle, die als Basis die „View Channels“ Rechte hat (und zwar NUR diese, denn alle anderen Reche bekommen die Nutzer ja über die „everyone“ Rolle)
- Man installiert einen Bot der Wahl, der beim Akzeptieren der Regeln die entsprechende Rolle vergibt.
Fertig. Einfach und übersichtlich.
Doch was passiert hier im Detail?
Wie bereits erwähnt sind die Rechte der „everyone“ Rolle die Basisrechte, die Jeder Nutzer unabhängig von Zusatzrollen hat.
Durch das Deaktivieren der „View Channels“ Rechte nimmt man zunächst jedem Nutzer die Möglichkeit irgend einen Channel zu sehen.
Alles Andere kann wie gesagt bestehen bleiben, denn ohne sichtbare Channels nutzen die Rechte zunächst nichts.
Da neue User aber den Regel Channel sehen sollen, brauchen wir diesen kleinen Channelspezifischen Overwrite, der die Basisrechte der Rolle überschreibt.
Was soll der everyone Nutzer nun im Regelchannel abweichend tun können? Er soll ihn 1. sehen können und 2. nicht schreiben dürfen. Mehr nicht.
Als nächstes kommt die Zusatzrolle „Regeln akzeptiert“. Was soll diese zusätzlich gewähren? Eigentlich nur die Channels sichtbar machen, denn alles Andere bekommen die Nutzer ja schon von der „everyone“ Rolle.
Nun hat man ohne viele Verstrickungen und ohne Doppelvergaben von Rechten, das Ziel erreicht.
Solltet ihr selbst vor der Herausvorderung eines eigenen Servers stehen und nicht ganz sicher sein, wie ihr diesen am besten einrichtet, zögert nicht mich zu kontaktieren, Wenn ich Zeit habe, stehe ich gerne helfend zur Seite.
Kontaktiert mich einfach in den Kommentaren oder auf meinem Server.