Authentifizierung
Einführung in die Authentifizierung in ConSol CM
ConSol CM bietet drei Authentifizierungsmethoden zur Bestätigung der Identität der Benutzer. Sie können die ConSol CM-Datenbank, einen LDAP-Server oder einen SSO-Dienst für die Authentifizierung verwenden. Die Autorisierung der authentifizierten Benutzer erfolgt über Rollen.
Konzepte, Begriffe und Definitionen
Konzept |
Andere Begriffe |
Definition |
---|---|---|
Authentifizierung |
|
Prozess zur Bestätigung der Identität der Benutzer |
Autorisierung |
|
Prozess zur Bestimmung der Zugangsberechtigungen der authentifizierten Benutzer, erfolgt über Rollen |
Datenbank-Authentifizierung |
|
Authentifizierung über die ConSol CM-Datenbank |
LDAP-Authentifizierung |
|
Authentifizierung über einen LDAP-Server |
SSO-Authentifizierung |
|
Authentifizierung über eine Single Sign-On-Technologie, z. B. Kerberos, Microsoft Active Directory Federation Services oder Azure AD |
Verfügbare Authentifizierungsmethoden
Datenbankauthentifizierung
Verfügbarkeit:
- Web Client
- CM/Track
Benutzername und Passwort sind in der ConSol CM-Datenbank gespeichert.
Wenn Datenbankauthentifizierung verwendet wird, können Sie eine Passwortrichtlinie festlegen (siehe Festlegen der Passwort-Richtlinie) und die Funktion zum Zurücksetzen des Passworts konfigurieren (siehe Festlegen des Templates zum Zurücksetzen des Passworts).
LDAP-Authentifizierung
Verfügbarkeit:
- Web Client
- CM/Track
Der Benutzername ist in der ConSol CM-Datenbank gespeichert. Das Passwort ist auf dem LDAP-Server gespeichert. Es kann daher weder von den Benutzern noch von den Kontakten in ConSol CM geändert werden.
Siehe Konfigurieren der LDAP-Authentifizierung.
SSO-Authentifizierung
Verfügbarkeit:
- Web Client
- CM/Track
Der Benutzername ist in der ConSol CM-Datenbank gespeichert. Das Passwort ist im Active Directory gespeichert. Es kann daher von den Benutzern nicht in ConSol CM geändert werden. Die Anmeldeinformationen werden aus einer gültigen Windows-Session abgerufen.
Siehe Konfigurieren der SSO-Authentifizierung.
Grundlegende Aufgaben
Festlegen der Authentifizierungsmethode
Die Authentifizierungsmethode wird über System-Properties festgelegt.
Festlegen der Authentifizierungsmethode für den Web Client
Die Authentifizierungsmethode für den Web Client wird in der System-Property cmas-core-security, engineer.authentication.method festgelegt.
Je nach konfigurierter Authentifizierungsmethode müssen unterschiedliche Felder auf der Seite Benutzer ausgefüllt sein:
- Datenbankauthentifizierung: Felder Login und Passwort
- LDAP-Authentifizierung: Feld LDAP-ID
- SSO-Authentifizierung: Feld Login
Festlegen der Authentifizierungsmethode für CM/Track
Die Authentifizierungsmethode für CM/Track wird in der System-Property cmas-core-security, contact.authentication.method festgelegt.
Je nach konfigurierter Authentifizierungsmethode müssen in den Kontaktdaten auf der Seite Kontaktfelder Felder für die Anmeldeinformationen angelegt werden, siehe Datenfelder:
- Datenbankauthentifizierung: Benutzername (Feld mit der Einstellung Benutzername für CM/Track) und Passwort (Feld mit der Einstellung Passwort für CM/Track).
- LDAP-Authentifizierung: LDAP-ID (Feld mit den Einstellungen Benutzername für CM/Track und LDAP-ID für CM/Track).
- SSO-Authentifizierung: Benutzername (Feld mit der Einstellung Benutzername für CM/Track).
Wenn Datenbankauthentifizierung verwendet wird, müssen Sie in der System-Property cmas-core-security, policy.track.username.case.sensitive festlegen, ob bei den CM/Track-Benutzernamen zwischen Groß- und Kleinbuchstaben unterschieden werden soll. Setzen Sie die Property nur auf true, wenn die Datenbank-Collation Strings mit Groß- und Kleinbuchstaben unterstützt.
Nach dem Erstellen der Felder müssen diese für jeden Kontakt auf der Kontaktseite des Web Clients ausgefüllt werden.
Gemischte Authentifizierungsmethode
Eine gemischte Authentifizierungsmethode mit sowohl LDAP- als auch Datenbankauthentifizierung ist für den Web Client und für CM/Track verfügbar. Dieser Modus wird durch Setzen der Properties engineer.authentication.method oder contact.authentication.method auf einen der folgenden Werte konfiguriert:
-
LDAP,DATABASE
Wenn in den Benutzer- bzw. Kontaktdaten eine LDAP-ID gespeichert ist, wird zuerst die Anmeldung über die verfügbaren LDAP-Server versucht. Sollte diese fehlschlagen, wird die Anmeldung über die Datenbank versucht, sofern in den Benutzer-/Kontaktdaten ein Benutzername und ein Passwort gespeichert sind. -
DATABASE,LDAP
Wenn in den Benutzer- bzw. Kontaktdaten ein Benutzername und ein Passwort gespeichert sind, wird zuerst die Anmeldung über die Datenbank versucht. Sollte diese fehlschlagen, wird die Anmeldung über die verfügbaren LDAP-Server versucht, sofern in den Benutzer- bzw. Kontaktdaten eine LDAP-ID gespeichert ist.
Erweiterte Aufgaben
Erweiterte Aufgaben gibt es nur für die Datenbankauthentifizierung. Bei LDAP- und SSO-Authentifizierung müssen die erweiterten Einstellungen in LDAP bzw. der SSO-Technologie vorgenommen werden.
Festlegen der Passwort-Richtlinie
Das Festlegen einer Passwort-Richtlinie ist optional. Eine Passwort-Richtlinie kann nur festgelegt werden, wenn die Authentifizierungsmethode Datenbank eingesetzt wird.
Folgende Einstellungsmöglichkeiten können für die Passwort-Richtlinie verwendet werden:
- cmas-core-security, policy.password.pattern (String)
RegEx-Ausdruck für das Passwort, Standardwert: ^(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z]).{7,}$ (mindestens 7 Zeichen, mindestens ein Großbuchstabe, ein Kleinbuchstabe und eine Ziffer) - cmas-core-security, policy.password.age (Integer)
Maximaler Gültigkeitszeitraum, in Tagen, Beispiel 183 (6 Monate), Standardwert: 5500 (= 15 Jahre, d. h. es wird keine Passwortänderung erzwungen). - cmas-core-security, policy.rotation.ratio (Integer)
Zahl, definiert die Anzahl der vorherigen Passwörter, die nicht identisch sein dürfen, Beispiel und Standardwert: 5. - cmas-core-security, policy.username.case.sensitive (Boolean)
Legt fest, ob Groß- und Kleinschreibung bei der Validierung berücksichtigt wird. Beispiel und Standardwert: true.
Beachten Sie, dass diese Einstellung von der Collation in MySQL beeinflusst wird. Damit das CM-System korrekt mit MySQL arbeitet, muss in MySQL die richtige Collation verwendet werden.
Für LDAP und SSO muss die Passwort-Richtlinie in LDAP bzw. der SSO-Technologie konfiguriert werden.
Festlegen des Templates zum Zurücksetzen des Passworts
Wenn die Datenbankauthentifizierung verwendet wird, kann das Passwort vom Benutzer selber zurückgesetzt werden. Die Voraussetzung dafür ist, dass der Benutzer eine gültige E-Mail-Adresse hat. Das Zurücksetzen des Passworts ist sowohl für Benutzer im Web Client als auch für Kontakte in CM/Track möglich.
Die From-Adresse der E-Mail, die an den Benutzer gesendet wird, wird in der System-Property cmas-core-security, password.reset.mail.from definiert.
Zurücksetzen des Passworts im Web Client
Damit Benutzer im Web Client ihre Passwörter zurücksetzen können, müssen ihre E-Mail-Adressen in den Benutzerdaten (siehe Felder) eingetragen sein.
Wenn ein Benutzer sein Passwort vergessen hat, kann er über den Link Passwort vergessen? auf der Anmeldeseite des Web Clients ein neues Passwort anfordern. Der Benutzer erhält eine E-Mail mit einem Link zu einer URL, über die er ein neues Passwort setzen kann.
Die E-Mail, die an den Benutzer gesendet wird, basiert auf dem Template password-reset-template, das auf der Seite Templates der Web Admin Suite gespeichert ist, siehe Zurücksetzen des Passworts.
Subject: Password reset procedure
From: no-reply@consol.de
Dear ${engineer.firstname} ${engineer.lastname},
Please click the following link to reset your password:
${urlWebclient}/passwordChange?resetCode=${resetCode}
This link expires at ${expirationDate?string("yyyy.MM.dd HH:mm:ss")}.
Code-Beispiel 1: Template zum Zurücksetzen des Passworts für den Web Client
Die folgende Variable wird in den System-Properties konfiguriert:
- urlWebclient
Wert der System-Property cmas-core-server, url.webclient.
Zurücksetzen des Passworts in CM/Track
Damit Kontakte in CM/Track ihre Passwörter zurücksetzen können, müssen ihre E-Mail-Adressen in den Kontaktdaten (siehe Kontaktmodelle) eingetragen sein. Zusätzlich brauchen sie Schreibberechtigungen auf ihre eigene Kundengruppe.
Wenn ein Kontakt sein Passwort vergessen hat, kann er über den Link Passwort vergessen? auf der Anmeldeseite von CM/Track ein neues Passwort anfordern. Der Kontakt erhält eine E-Mail mit einem Link zu einer URL, über die er ein neues Passwort setzen kann.
Die E-Mail, die an den Kontakt gesendet wird, basiert auf dem Template track-password-reset-template, das auf der Seite Templates der Web Admin Suite erstellt werden muss, siehe Zurücksetzen des Passworts.
Subject: Your Password Reset Link
From: no-reply@consol.de
Dear ${unit.firstname} ${unit.lastname},
Please click the following link to reset your password:
${urlTrack}/#/password-reset/resetCode-${resetCode}
This link expires at ${expirationDate?string("yyyy.MM.dd HH:mm:ss")}.
Abbildung 3: Template zum Zurücksetzen des Passworts in CM/Track
Die folgenden Variablen werden über System-Properties konfiguriert:
- expirationDate
Standardmäßig läuft der Link 24 Stunden nach dem Anfordern der Passwort-Zurücksetzung ab. Um diesen Wert zu ändern, erstellen Sie die System-Property cmas-core-security, resetCode.expirationPeriod mit dem gewünschten Ablaufdatum. - urlTrack
Wert der System-Property cmas-core-server, url.track.