TeamSpeak 3 Server -- Wie Rechte genau funktionieren

Das Rechtesystem von TeamSpeak 3 ist ziemlich vielseitig und bietet ein flexibles System zur Entscheidung darüber, welcher Benutzer was genau machen darf. Es ist allerdings auch nicht ganz einfach zu durchschauen. Der folgende Text ist eine Übersetzung des mit TeamSpeak 3 mitgelieferten Hilfedokuments, das das Rechtesystem näher beschreibt.

Gleich vorweg: Dieser Text ist nicht ganz einfach zu lesen. Die erhöhte Flexibilität bei der Rechtevergabe des neuen TeamSpeak 3 Servers kommt leider automatisch auch mit einer erhöhten Komplexität. Lasst Euch jedoch nicht entmutigen: Wenn Ihr das System einmal raus habt, werdet Ihr sehen, dass es sehr viele Konfigurationsmöglichkeiten bietet.

Die verschiedenen Arten der Rechte

Boolesche Rechte:

Diese Art von Rechten kann nur einen von zwei Werten annehmen, entweder wahr oder falsch (auf englisch: 'true' und 'false').

Beispiel: b_virtualserver_modify_name

Dass dieses ein boolesches Recht ist, erkennt Ihr zunächst einmal daran, dass es mit einem 'b' beginnt. Danach folgt der Name des Rechts, welcher Euch bereits erahnen lässt, worum es bei diesem Recht geht. In diesem Fall steuert das Recht, ob ein Benutzer den Namen des Virtuellen Servers ändern darf oder nicht.

Ganzzahlen:

Diese Art von Rechten erwartet Ganzzahlen als Werte.

Beispiel: i_channel_max_depth

Hier seht Ihr wieder bereits am ersten Buchstaben, dass dieses Recht eine Ganzzahl erwartet ('i' steht für Integer, englisch für Ganzzahl). Dieses Recht bestimmt, wieviele Channels (Räume), bzw. Subchannels (Unterräume) erstellt werden dürfen.

Ist der Wert für dieses Recht z.B. 0, dann darf kein Subchannel erstellt werden, ab 1 und größer dürfen der Zahl entsprechend viele Subchannels erstellt werden. Enthält dieser Parameter den Wert -1, so gibt es kein Limit, was die Zahl der Subchannels betrifft.

Berechtigung und erforderliche Berechtigung

Diese Art von Rechten sind besondere Ganzzahlrechte. Sie werden immer als Paarwerte erwartet, ein Wert für die Berechtigung und der zweite für die erforderliche Berechtigung. Die entsprechenden Aktionen könnt Ihr nur dann erfolgreich ausführen, wenn der Wert für Eure Berechtigung gleich oder größer dem Wert der erforderlichen Berechtigung ist.

Beispiel: i_client_kick_power und i_client_needed_kick_power

Wenn Ihr einen Benutzer kicken wollt, wird das Rechtesystem den Wert Eurer Berechtigung mit dem Eures "Kickopfers" vergleichen und das Kicken nur dann erlauben, wenn Ihr eine gleiche oder höhere Berechtigung habt als er. Auf diese Weise könnt Ihr "Stufen" von Admins erstellen, sodass bestimmte Admins z.B. nur Gäste kicken können, während andere Admins alle Arten von Benutzern kicken dürfen.

Wie werden Benutzern bestimmte Rechte zugewiesen?

Die Art, wie Benutzer Rechte erhalten, wird durch ein 5-Schichten-System bestimmt. Jede Schicht kann die Rechte der vorherigen Schicht überschreiben. Wenn es in keiner dieser 5 Schichten einen Wert für ein Recht gibt, wird automatisch eine 0, bzw. false (falsch) zugewiesen. Dies sind nun die 5 verschiedenen Schichten:

  1. Servergruppen
  2. Client Rechte
  3. Channel Rechte
  4. Channel Gruppen
  5. Channel Client Rechte


Beispiel: Ihr befindet Euch in der Guest-Gruppe (Schicht 1), bei welcher das Recht b_channel_modify_name auf false gesetzt ist. Gleichzeitig seid Ihr aber auch ein Channel-Admin (Schicht 4), und beim Channel-Admin ist der Parameter b_channel_modify_name auf true gesetzt.

Da sich die Channel Gruppe in einer höheren Schicht als die Servergruppen befindet, dürft Ihr am Ende also den Namen eines Channels ändern (was das Recht besagt), aber nicht den Namen anderer Channels, in denen Ihr kein Channel-Admin seid.

Jetzt folgen die einzelnen Schichten und deren Eigenschaften im Detail.

1. Servergruppen

Jeder Benutzer ist Mitglied einer oder mehrerer Servergruppen. Diese Servergruppen können verschiedene Rechte besitzen, die jeder Benutzer erwirbt, wenn er Mitglied der Gruppe wird.

Da Ihr Mitglieder von mehreren Servergruppen gleichzeitig sein könnt und da dieselben Rechte in veschiedenen Gruppen vergeben werden können, muss es eine Möglichkeit geben, herauszufinden, welches Recht der 1. Schicht nun angewendet wird. Die Logik dahinter ist, dass am Ende der beste, bzw. höchste Wert benutzt wird.

Jedes Recht in einer Servergruppe kann mit 'Negate' oder 'Skip' markiert werden (wird später in diesem Kapitel noch erklärt). Da jeder Benutzer immer Mitglied mindestens einer Servergruppe ist, gibt es eine spezielle Gruppe, die in der Serverkonfiguration eingestellt werden kann, nämlich die Standard-Servergruppe. Wenn ein neuer Benutzer den Server betritt, wird er automatisch ein Mitglied dieser Gruppe. Beim Zuweisen zu einer anderen Gruppe verliert der Benutzer die Zugehörigkeit zur Standard-Servergruppe wieder.

Beispiel: Stellt Euch vor, Ihr seid Mitglieder in drei Servergruppen: Server Admin, Clan Leader und Matchverwalter. Die Server Admin Gruppe hat eine "Kickberechtigung" von i_client_kick_power = 50. Der Clan Leader hat i_client_kick_power = 100, und der Matchverwalter hat überhaupt keine Kickrechte. Am Ende hättet Ihr somit eine Kickberechtigung von 100, da dies der höchste Wert von allen drei Gruppen ist.

Manchmal kann es sein, dass Ihr eine Servergruppe erstellen wollt, die die Benutzer daran hindern soll, bestimmte Aktionen auszuführen; z.B. so, dass Benutzer keine Räume wechseln können oder nicht sprechen können.

Um dies zu erreichen, kann die 'Negate'-Markierung bei den Rechten gesetzt werden. Damit wird bewirkt, dass einem Benutzer das entsprechende Recht unterbunden wird. Solltet Ihr also Mitglied einer Gruppe sein, bei dem ein Recht mit dieser Markierung gesetzt ist, dann ist dieser Wert ausschlaggebend, egal, ob Ihr in anderen Gruppen höhere Werte besitzt.

Beispiel: Ihr erstellt eine Servergruppe namens "Festgenagelt". Sie enthält nur ein Recht, nämlich i_channel_join_power, welches auf -1 gesetzt ist. Ausserdem ist die 'Negate'-Markierung für dieses Recht aktiviert. Wenn Ihr diese Servergruppe jetzt auf einen Benutzer anwendet, dann kann dieser nicht mehr den Channel wechseln.

Das bleibt wirksam, auch wenn beim Benutzer das Recht i_channel_join_power auf einen positiven Wert gesetzt werden sollte, da die 'Negate'-Markierung sicherstellt, dass das Ergebnis aus der 1. Schicht für das Recht i_channel_join_power der niedrigste Wert sein wird, also -1 oder noch weniger.

Der Grund, warum es für den Benutzer nicht mehr möglich ist, den Channel zu wechseln, liegt darin, dass ein Channel normalerweise kein Recht i_channel_needed_join_power (also die benötigte Berechtigung, um einen Raum zu betreten) gesetzt hat, und wenn ein Recht nicht gesetzt ist, bekommt es automatisch den Wert 0. Da -1 kleiner als 0 ist, kann der Benutzer die anderen Räume auch nicht betreten.

Da Servergruppen die erste Schicht der Rechteaufteilung darstellen, kann es vorkommen, dass sie durch die Rechte einer höheren Schicht überstimmt werden. Da es manchmal wünschenswert ist, zu verhindern, dass die Rechte in den Channel Gruppen (Schicht 4) die Rechte einer Servergruppe überschreiben, gibt es die 'Skip'-Markierung.

Wenn ein Recht in der Servergruppe (Schicht 1) oder bei Client Rechte (Schicht 2) die 'Skip'-Markierung aktiviert hat, wird dieses Recht nicht durch überschneidende Rechteeinstellungen in den Channel Gruppen (Schicht 4) verändert.

Beispiel: Als Admin Eures TeamSpeak Servers wollt Ihr nicht, dass die Channel Gruppe Euch in Euren Rechten einschränken kann. Wenn Ihr nun die 'Skip'-Markierung für alle Rechte in der Server-Admin-Gruppe gesetzt habt, dann stellt Ihr damit sicher, dass keine Rechteeinstellungen in der Channel Gruppe Einfluß auf Eure Aktionsmöglichkeiten haben.


Seite 2 >>


Zurück zur Kategorie: TeamSpeak 3 Server

Zurück zur Hauptseite








Kommentare
blog comments powered by Disqus