Benutzer

Benutzer werden als FOM\UserBundle\Entity\User implementiert und im Datenbank Repository gespeichert. Die Entität hält nur die notwendigen Informationen über einen Nutzer vor, komplexere Benutzerdaten sollten in Benutzerprofilen hinterlegt werden (TBD).

Das Bundle enthält alle Mittel um Benutzer durch einen Administrator zu verwalten als auch das eigene Registrieren eines Nutzes sowie das Zurücksetzen des eigenen Passwortes.

Der Benutzer mit der ID 1 ist besonders, da dieser Benutzer bei der Installation erstellt wird und immer alle Rechte hat. Falls alle Stricke reißen, können Sie mit diesem Benutzer alles verwalten. Und falls Sie gar die Anmeldedaten vergessen haben sollten, können Sie über ein app/console Kommando den Benutzer zurücksetzen: fom:user:resetroot.

Password vergessen

Falls ein Benutzer sein Passwort vergessen hat, kann er in der Login-Maske über den Link “Passwort vergessen” ein neues Passwort anfordern. Dazu gibt er dann seinen Benutzernamen oder seine E-Mail Adresse an.

../../../../_images/user_forgot_password.png

Danach bekommt der Benutzer eine E-Mail mit einem Link, die zu der Seite führt, um das Passwort zurückzusetzen. Der Link ist danach nicht mehr gültig. Der Text der Mail kann in der Datei /FOM/UserBundle/Resources/translations/messages.de.xlf angepasst werden.

Die Funktionalität kann in der config.yml ausgeschaltet werden.

fom_user:
    reset_password: true # true/false

Registrierung

Benutzer können sich an Mapbender3 selbst registrieren. Dafür stellt man in der config.yml die Einstellung fom_user:selfregister auf true.

fom_user:
    selfregister: false # true/false

Im Login-Dialog erscheint der “Register” Link. Der Benutzer wird zu einer Maske geführt, in der er seinen Namen, sein Passwort und seine E-Mail Adresse angeben kann.

../../../../_images/user_self_register.png

Danach erhält er eine Bestätigungsmail, mit der er seine Anmeldung abschließen kann. Bis zu diesen Zeitpunkt ist er als inaktiver Nutzer in Mapbender3 hinterlegt.

Die Texte der Bestätigungsmail können unter /FOM/UserBundle/Resources/translations/messages.de.xlf angepasst werden.

Aktivieren von Nutzern

Seit Mapbender 3.0.5.3. Benutzer können von Administratoren mit mindestens der Benutzer ACL-Rolle “edit” aktiviert oder deaktiviert werden. Dazu dient der Schalter im Edit User Dialog.

Ein Benutzer mit Administrationsrechten kann sich selbst nicht aktivieren oder deaktivieren.

../../../../_images/edit_user_activated.png

Ein Benutzer, der deaktiviert ist, kann sich nicht mehr am Mapbender3 anmelden, bis er wieder aktiviert wird.

../../../../_images/user_account_is_disabled.png

Benutzer, die sich selbst registriert haben, aber die Freischaltungsmail noch nicht bestätigt haben, können so von einem Administrator per Hand freigeschaltet werden.

Login Fehler

Fehlerhafte Logins werden mit der Meldung “Login fehlerhaft” kommentiert. Aus Sicherheitsgründen wird nicht genannt, ob es am falschen Loginnamen oder falschen Passwort liegt. Login Fehler schließen den Account nicht dauerhaft aus. Vielmehr wird der Account für eine bestimmte Zeit ausgeschlossen (gelockt).

Die config.yml ermöglicht die Anpassung des Verhaltens:

fom_user:

    # Allow to create user log table on the fly if the table doesn't exits.
    # Default: true
    auto_create_log_table: true

    # Time between to check login tries
    login_check_log_time: "-5 minutes"

    # Login attemps before delay starts
    login_attempts_before_delay: 3

    # Login delay after all attemps are failed
    login_delay_after_fail: 2 # Seconds
  • auto_create_log_table: Angabe zur Rückwärtskompatibilität (Default: true).
  • login_check_log_time: Angabe zur Bereinigung der Login-Failure Tabelle (Default: -5 minutes)
  • login_attempts_before_delay: Anzahl der Login Versuche, bevor das Login-Delay greift (Default: 3)
  • login_delay_after_fail: Länge des Login-Delays in Sekunden (Default: 2).