AuthMe

Aus Nitradopedia
Wechseln zu: Navigation, Suche
AuthMe Reloaded
Pluginlogo-AuthMe.png
Servermod: Bukkit‎
Kategorie: Admin Tools, Anti-Griefing Tools
Entwickler: d4rkwarriors
Entwicklerwebsite: dev.bukkit.org
Was bewirkt es? Ermöglicht den Account vom Spieler
mittels einem Login zu schützen.
Besonderheiten: -
Download: Link

Was ist AuthMe
AuthMe Reloaded ist ein Offline-Security-Plugin. Um den Spieler bestmögliche Sicherheit zu gewährleisten bietet es eine Ingame Registrierungsfunktion, so muss man sich auf dem Server erneut einloggen, um spielen zu können.

Gibt es Alternativen zu AuthMe?
Ja, es gibt noch das Plugin xAuth das ähnliche Funktionen, wie AuthMe bietet.

Weitere Informationen zu AuthMe (nur Englisch)


Installation

AuthMe darf nicht gleichzeitig mit xAuth oder einem ähnlichen Plugin verwendet werden, das /register, /login, etc. ermöglicht.


Schritt 1 - AuthMe downloaden
Zuerst müsst Ihr AuthMe downloaden. Die aktuelle Version von AuthMe kann hier gefunden werden. Weitere Suchmöglichkeiten findet man unter anderem auch hier, dort sucht nach "AuthMe".

Schritt 2 - AuthMe installieren
Nun müsst ihr den Server stoppen. Nachdem der Server gestoppt wurde schiebt ihr die "AuthMe.jar" in den Pluginsordner. Nun startet ihr den Server. Es wird der Ordner "AuthMe" (im Pluginordner) erstellt. In diesem Ordner ist eine "config.yml", "messages_de.yml", "spout.yml" und "auths.db".

Installation abgeschlossen

Konfigurieren von config.yml

Verzeichnis: /minecraftbukkit/plugins/AuthMe/config.yml

DataSource:
  mySQLColumnName: username
  mySQLTablename: authme
  mySQLUsername: authme
  backend: file
  mySQLColumnLastLogin: lastlogin
  mySQLDatabase: authme
  mySQLPort: '3306'
  mySQLColumnIp: ip
  mySQLHost: 127.0.0.1
  mySQLColumnPassword: password
  mySQLPassword: '12345'
  caching: true

mySQLColumnName - Unter welcher "Spalte" sollen die Namen abgespeichert werden? Diese Einstellung ist nur für Fortgeschrittene!
mySQLTablename - Hier wird der Tabellenname für die MySQL-DB eingetragen. Diese Einstellung ist nur für Fortgeschrittene!
mySQLUsername - Hier wird der Username/Benutzername für die MySQL-DB eingetragen.
backend - Hier wird angegeben ob die Benutzerdaten in einer Datei (auths.db) oder in der MySQL Datenbank gespeichert werden sollen( file für Datei (auths.db), mysql für MySQL Datenbank)
mySQLColumnLastLogin - Unter welcher "Spalte" sollen die letzten Logins abgespeichert werden? Diese Einstellung ist nur für Fortgeschrittene!
mySQLDatabase - Hier wird der Username/Benutzername für die MySQL-DB eingetragen
mySQLPort - Hier wird der Port für die MySQL-DB eingetragen. Standard: 3306
mySQLColumnIp - Unter welcher "Spalte" sollen die IP-Adressen abgespeichert werden? Diese Einstellung ist nur für Fortgeschrittene!
mySQLHost - Hier wird der Host für die MySQL-DB eingetragen. Standard: localhost (oder 127.0.0.1)
mySQLColumnPassword - Unter welcher "Spalte" sollen die Passwörter abgespeichert werden? Diese Einstellung ist nur für Fortgeschrittene!
mySQLPassword - Hier wird das Passwort für die MySQL-DB eingetragen.

GroupOptions:
  UnregisteredPlayerGroup: 
  RegisteredPlayerGroup: 
  Permissions:
    PermissionsOnJoin: []

Mit "GroupOptions" kann man einstellen, ob bestimmte Gruppen Rechte haben. Bei einem Plugin dass die Rechte verwaltet (wie PermissionsEx, ...) sollte man an dieser Einstellung nichts verändern.

settings:
  sessions:
    enabled: false
    timeout: 10

enabled - Sollen Sitzungen erlaubt werden? Somit wird die IP vom Spieler mit dem Nickname verbunden. Sollte sich die IP oder der Nickname ändern so kann der Spieler sich nicht mehr einloggen.
timeout - Nach wie viel Minuten soll eine Sitzung gelöscht werden? Somit kann ein Spieler sich wieder einloggen.

  restrictions:
    allowChat: false
    kickNonRegistered: false
    maxNicknameLength: 50
    ForceSingleSession: true
    ForceSpawnLocOnJoinEnabled: false
    SaveQuitLocation: false
    ForceExactSpawn: false
    teleportUnAuthedToSpawn: true
    allowMovement: false
    minNicknameLength: 3
    timeout: 30
    AllowRestrictedUser: false
    AllowedRestrictedUser:
       - playername;127.0.0.1
    allowedNicknameCharacters:
    allowedMovementRadius: 100
    maxRegPerIp: 3

allowChat - Dürfen unregistrierte Spieler chatten?
kickNonRegistered: - Sollen nicht unregistrierte Spieler sofort gekickt werden?
maxNicknameLength - Wie lang darf maximal der Spielername sein?
ForceSingleSession - Wenn ein "böser" Spieler mit dem Account XY online ist, und der "echte" Spieler mit dem Account XY kommt online, soll dann der "böse" Spieler gekickt werden?
ForceSpawnLocOnJoinEnabled - Soll ein Spieler beim einloggen immer zum Spawn teleportiert werden?
SaveQuitLocation - Soll die Ausgangsposition gespeichert werden?
ForceExactSpawn - Sollte ein Spieler sich ausloggen, und beim einloggen befindet sich bei seiner Position ein Gebäude (somit steht er in den Blöcken und würde Schaden nehmen), soll er dann in den Blöcken gespawnt werden (Einstellung: true // Er wird dann Schaden nehmen!) oder soll er möglichst nahe an diesen Blöcken gespawnt werden (Einstellung: false // Er wird keinen Schaden nehmen!).
teleportUnAuthedToSpawn - Sollten nicht eingeloggte Spieler zum Spawn teleportiert werden? Sobald Sie sich einloggen, werden Sie wieder zu Ihrer Ausgangpositions gespawnt.
allowMovement - Dürfen sich nicht eingeloggte Spieler bewegen dürfen?
minNicknameLength - Wie viele Stellen muss der Spielername mindestens haben?
timeout - Nach wie viel Sekunden sollte ein Spieler gekickt werden, wenn er sich nicht einloggt bzw. registriert. Die Zahl "0" deaktiviert diese Einstellung.
AllowRestrictedUser - ?
AllowedRestrictedUser: [...] - ?
allowedNicknameCharacters: '[a-zA-Z0-9_?]*' - Welche Zeichen sollen für den Spielernamen erlaubt sein?
allowedMovementRadius: 100 - Wie weit dürfen sich die Spieler bewegen? Die Zahl "0" deaktiviert diese Einstellung.
maxRegPerIp: 1 - Wie viele Registrierungen dürfen pro IP getätigt werden?

  GameMode:
    ForceSurvivalMode: false
    ResetInventotyIfCreative: false

ForceSurvivalMode: - Sobald ein Spieler joint, wird er sofort zum Gamemode "Survival" geswitcht.
ResetInventotyIfCreative: - Sollte der Spieler im Creativ-Modus sein, und "ForceSurvivalMode" aktiviert sein, so wird das Inventar gelöscht.

  security:
    minPasswordLength: 4
    unLoggedinGroup: unLoggedinGroup
    passwordHash: SHA256

minPasswordLength: - Wie lang soll mindestens das Passwort sein?
unLoggedinGroup: - Wenn ein Spieler nicht eingeloggt ist, wird er automatisch in die "unregistrierte Gruppe" verschoben um Exploits zu blockieren. Sobald sich der Spieler einloggt, wird er in die richtige Gruppe geswitcht.
passwordHash: - Wie soll das Passwort gespeichert werden? Diese Einstellung ist nur für Fortgeschrittene!

 registration:
   enabled: true
   messageInterval: 5
   force: true

enabled: - Soll die Registrierung auf dem Server aktiviert sein?
messageInterval - Sendet alle X Sekunden eine Nachricht, dass der Spieler sich einloggen bzw. registrieren muss.
force - Nur eingeloggte und registrierte Spieler dürfen spielen.

 unrestrictions:
   UnrestrictedName: []

Hier kann man die Namen auflisten, die von AuthMe ignoriert werden solle. Somit wird das Registrieren und das Login nicht mehr benötigt.

VBullettinOptions:
    mySQLColumnSalt: 
    mySQLColumnGroup: 
    nonActivedUserGroup: -1

mySQLColumnSalt: - ?
mySQLColumnGroup: - ?
nonActivedUserGroup - ?

permission:
    EnablePermissionCheck: false

EnablePermissionCheck - ?

<spoiler text="Originale config.yml">

DataSource:
  mySQLColumnName: username
  mySQLTablename: authme
  mySQLUsername: authme
  backend: file
  mySQLColumnLastLogin: lastlogin
  mySQLDatabase: authme
  mySQLPort: '3306'
  mySQLColumnIp: ip
  mySQLHost: 127.0.0.1
  mySQLColumnPassword: password
  mySQLPassword: '12345'
  caching: true
GroupOptions:
  UnregisteredPlayerGroup: ''
  RegisteredPlayerGroup: ''
  Permissions:
    PermissionsOnJoin: []
settings:
  sessions:
    enabled: false
    timeout: 10
  restrictions:
    allowChat: false
    maxRegPerIp: 3
    maxNicknameLength: 50
    ForceSingleSession: true
    ForceSpawnLocOnJoinEnabled: false
    SaveQuitLocation: false
    AllowRestrictedUser: false
    AllowedRestrictedUser: []
    kickNonRegistered: false
    kickOnWrongPassword: false
    teleportUnAuthedToSpawn: false
    minNicknameLength: 3
    allowMovement: false
    timeout: 30
    allowedNicknameCharacters: '[a-zA-Z0-9_?]*'
    allowedMovementRadius: 100
    enablePasswordVerifier: true
    ProtectInventoryBeforeLogIn: true
  GameMode:
    ForceSurvivalMode: false
    ResetInventotyIfCreative: false
  security:
    minPasswordLength: 4
    unLoggedinGroup: unLoggedinGroup
    passwordHash: SHA256
    passwordMaxLength: 20
  registration:
    enabled: true
    messageInterval: 5
    force: true
  unrestrictions:
    UnrestrictedName: []
  messagesLanguage: de
ExternalBoardOptions:
  mySQLColumnSalt: ''
  mySQLColumnGroup: ''
  nonActivedUserGroup: -1
permission:
  EnablePermissionCheck: false
BackupSystem:
  ActivateBackup: false
  OnServerStart: false
  OnServerStop: true
  MysqlWindowsPath: C:\\Program Files\\MySQL\\MySQL Server 5.1\\

</spoiler>

Befehle/Nodes

Spieler:

Befehl Permission-Node Wirkung
/register <Passwort> authme.register registriert den Spielernamen mit einem Passwort
/login <Passwort> authme.login loggt dich mit dem Passwort ein, welches du zuvor registriert hast
/logout authme.logout loggt dich aus
/changepassword <altesPW> <neuesPW> authme.changepassword ändert dein Passwort
/unregister <Passwort> authme.unregister entfernt das Passwort für deinen Spielernamen

Admins:

Befehl Permission-Node Wirkung
/authme register <Spielername> <Passwort> authme.admin.register registriert einen fremden Spielernamen
/authme unregister <Spielername> <Passwort> authme.admin.unregister entfernt das Passwort für einen fremden Spielernamen
/authme changepassword <Spielername> <neuesPW> authme.admin.changepassword ändert das Passwort für einen anderen Spielernamen
/authme reload authme.admin.reload lädt Konfigurations- und Spracheinstellungsdateien neu


<spoiler text="Beispiel für die Permissions">

groups:
  Owner:
    permissions:
    - authme.*
  Admins:
    permissions:
    - authme.*
  Moderator:
    permissions:
    - authme.login
    - authme.logout
    - authme.register
    - authme.changepassword
    - authme.unregister
  VIP:
    permissions:  
    - authme.login
    - authme.logout
    - authme.register
    - authme.changepassword
    - authme.unregister    
  Spieler:
    permissions:
    - authme.login
    - authme.logout
    - authme.register
    - authme.changepassword
    - authme.unregister
  Gaeste:
    permissions:
  
users:

</spoiler>

Videotutorials über Authme


Über diesen Artikel

Dieses Tutorial basiert auf der Plugin-Version 2.6.5
Dieses Tutorial wurde erstellt durch: StClaus Dieses Tutorial wurde erstellt am: 22.03.2012
Zuletzt bearbeitet durch: Erik1707 Letzte Aktualisierung am: 22.06.2013