[HowTo]Permissions 3.x konfigurieren
Dieses Howto geht davon aus, dass Permissions bereits heruntergeladen, auf den Server geuploaded und der Server bereits restartet wurde!
Schritt 1:
Wechselt in das Verzeichnis von Permissions (plugins -> Permissions).
Geht nun in das "world" Verzeichnis (oder wie eure Welt halt heißt.
Wenn ihr einen Nether aktiviert habt wird dort ein Ordner für den Nether sein. Diesen könnt ihr entweder extra konfigurieren oder einfach hinterher die Konfigs aus "world" reinkopieren.
Schritt 2:
Öffnet mit einem Texteditor eurer Wahl (empfohlen: Notepad++, bitte keinen Standart-Editor von Windows nehmen!) die groups.yml
In die groups.yml kommen nun alle Benutzergruppen rein, die ihr hinterher auf dem Server haben wollt (z.B. Administrator, Moderator, User, Gast,...).
Im 3.Schritt werde ich das ALLGEMEINE Schema einer Gruppendefinition kurz erklären und hinterher anhand eines Plugins, für welches ich beispielsweise Rechte vergeben will, weiter erläutern.
Schritt 3:
ALLGEMEINES GRUPPENSCHEMA:
Bitte achtet darauf, dass ihr KEINE TABS verwendet!! Ganz wichtig! Verwendet für einen Tab bitte 4 Leerzeichen! Sonst werdet ihr schön vom Server mit Fehlern gefüttert
Code:
GRUPPENNAME:
default: true/false
info:
prefix: 'PREFIX'
build: true/false
suffix: 'SUFFIX'
inheritance:
- Vererbte Gruppe
permissions:
- PERMISSIONNODES
Erläuterung:
GRUPPENNAME - Hier definiert ihr den Namen der Gruppe z.B. Gast oder User
info - Im Info Teil der Definition kommen Elemente wie...
- prefix: 'PREFIX' - Hier könnt ihr einstellen, ob vor dem Usernamen im Chat
ein Titel vorangestellt werden soll z.B. [User]Username.
Den Titel müsst ihr in die '' schreiben z.B. '[User]'
Um Titel InGame anzeigen zu lassen, braucht man das Plugin iChat!
- build: true/false - Mit der Option bestimmt ihr, ob die Usergruppe bauen
darf oder nicht. Wenn build: true eingestellt ist, dann
darf die Gruppe bauen. Wenn build: false eingestellt ist,
darf sie es nicht.
- suffix: 'SUFFIX' - Mit dieser Option könnt ihr dem User im Chat noch ein
Suffix verpasse. Dieses wird an den Namen des
Benutzers drangehangen z.B. Benutzername[Suffix]
Auch hier müsst ihr das Suffix wieder in die '' schreiben.
inheritance: - Mit der Option Inheritance könnt ihr die Rechte einer anderen Gruppe an die aktuelle vererben. Wenn ihr z.B. eine Moderatorengruppe habt und dieser alle Userrechte geben wollt, damit ihr diese nicht nocheinmal einstellen müsst, dann könnt ihr unter inheritance die Gruppe User aufführen.
Als Beispiel vererbe ich nun der Gruppe Moderator die Gruppe User:
Code:
inheritance:
- User
permissions: - Unter dieser Kategorie werden nun alle Permissions aufgelistet. Welche Permissions ein Plugin habt erfahrt ihr normalerweise auf der Pluginseite des Entwicklers.
Ich möchte nun beispielsweise die Permissionnode "test.permission" vergeben:
Code:
permissions:
- test.permission
Das war eigentlich alles zum Thema Benutzergruppen.
Nachfolgend werde ich alle Schritte mal zusammenfassen und ein Muster erstellen mit den Gruppen Admin, Moderator, User und Gast.
Theoretisch könnt ihr diese Konfiguration auch direkt in eure groups.yml übernehmen, da die Einrückungen aufgrund der Code-Tags stimmen.
Als Beispiel Plugin, für das ich Rechte vergebe, benutze ich ein paar Permissionnodes aus Essentials:
Code:
groups:
Gast:
default: true
info:
prefix: '&d[Gast]&f'
build: false
suffix: ''
inheritance:
permissions:
- essentials.rules
- essentials.motd
- essentials.list
User:
default: false
info:
prefix: '&2[User]&f'
build: true
suffix: ''
inheritance:
- Gast
permissions:
- essentials.afk
- essentials.msg
- essentials.mail.*
Moderator:
default: false
info:
prefix: '&a[Moderator]&f'
build: true
suffix: ''
inheritance:
- User
permissions:
- essentials.ban
- essentials.kick
Admin:
default: false
info:
prefix: '&4[Admin]&f'
build: true
suffix: ''
inheritance:
permissions:
- '*'
Es ist nur eine Beispielskonfiguration! Ihr solltet schon wissen, wenn ihr diese übernehmt, was die Permissionnodes bewirken!
Anmerkung zu essentials.mail.*:
Der * ist ein Zeichen dafür, dass ALLE Permissions die mit essentials.mail beginnen auch mitzählen.
Sollte es z.B. noch drei Nodes geben, die essentials.mail.send1 essentials.mail.send2 essentials.mail.send3 heißen, dann werden alle drei mit essentials.mail.* mitgenommen.
* heißt sozusagen "Alles mitnehmen".
Im Fall des Admins heißt * alle Rechte die es gibt.
Schritt 4:
Kommen wir zur users.yml
In der users.yml werden alle Spieler auf dem Server aufgelistet, in welcher Gruppe sie sind und welche user-spezifische Rechte diese haben.
Hier ein Auszug aus meiner users.yml mit meinen Rechten:
Code:
users:
Terreox:
permissions: []
groups:
- Admin
Erläuterung:
users: - steht NUR am Anfang der ganzen Datei
Terreox: - Dies ist der Benutzername für den im folgenden die Rechte vergeben werden
permissions: [] - Hier werden extra Rechte vergeben z.B. wenn ich User wäre mir der Admin aber ein Recht geben will, welches nicht in den Gruppenrechten steht.
Beispiel: Ich bekomme jetzt Userrechte und der Admin gibt mit essentials.give
Code:
users:
Terreox:
permissions:
- essentials.give
groups:
- User
groups: - Hier wird die zugewiesene Usergruppe untergeordnet z.B. Admin
So das war es zu meinem kleinen HowTo, ich hoffe es wurden so viele Fragen wie möglich geklärt ansonsten einfach eine Antwort unter den Beitrag packen
