Passwort-Richtlinien

Die easydb ab Version 4.0.310.9 enthält Unterstützung für die Konfiguration von Passwort-Richtlinien. Diese greifen nicht unmittelbar, sondern die Hilfsfunktion muss im Creator in der entsprechenden edit-Maske eingebunden werden.

Funktion check_password_policy

Die Funktion prüft das übergebene Passwort auf Gültigkeit entsprechend dem über die Konfigurationsvariablen LOGIN_PASSWORD_POLICY_REGEX_<n> definierten regulären Ausdruck. Trifft dieser nicht zu, wird ein übersetzter Fehler zurückgegeben.

Der Fehlerschlüssel wird über die Konfigurationsvariable LOGIN_PASSWORD_POLICY_REGEX_<n>_ERROR angegeben ("PASSWORD_UNKNOWN_PROBLEM", wenn nicht gesetzt). Daraus wird dann über das Lokalisierungssystem der Wert des Eintrags login.policy_failed.<key>, also im z.B. login.policy_failed.PASSWORD_UNKNOWN_PROBLEM.

Für <n> in den o.g. Variablen können die Zahlen 1 bis 20 angegeben werden, also z.B. LOGIN_PASSWORD_POLICY_REGEX_1, LOGIN_PASSWORD_POLICY_REGEX_13, etc.. Lücken in der Numerierung sind erlaubt.

Beispiel-Konfigurationen

Sinnvolle Konfigurationen sind zum Beispiel:

Mindestlänge des Passworts (hier 8):

LOGIN_PASSWORD_POLICY_REGEX_1=.{8}
LOGIN_PASSWORD_POLICY_REGEX_1_ERROR=PASSWORD_MIN_8_CHARS

Prüfen auf Vorhandensein bestimmter Zeichen (Groß- und Kleinbuchstaben, Zahlen, Sonderzeichen):

LOGIN_PASSWORD_POLICY_REGEX_2=[A-Z]
LOGIN_PASSWORD_POLICY_REGEX_2_ERROR=PASSWORD_NO_UPPERCASE

LOGIN_PASSWORD_POLICY_REGEX_3=[a-z]
LOGIN_PASSWORD_POLICY_REGEX_3_ERROR=PASSWORD_NO_LOWERCASE

LOGIN_PASSWORD_POLICY_REGEX_4=[0-9]
LOGIN_PASSWORD_POLICY_REGEX_4_ERROR=PASSWORD_NO_NUMBER

LOGIN_PASSWORD_POLICY_REGEX_5=[^[:alnum:]]
LOGIN_PASSWORD_POLICY_REGEX_5_ERROR=PASSWORD_NO_SPECIAL