Benutzerverwaltung
Übersicht
Dieses Dokument beschreibt die Verwaltung von Benutzerkonten, Sicherheitsgruppen und Berechtigungen in der PlantPulse-Plattform.
Die Benutzerverwaltung erfolgt über das linke Menü System > Benutzer (/user/index).
Benutzerstruktur
Die Benutzerverwaltung von PlantPulse besteht aus drei Kernelementen.
- Benutzer (User): Ein individuelles Konto, das sich bei der Plattform anmeldet.
- Sicherheitsgruppe (Security Group): Eine Gruppe, die die Rolle eines Benutzers definiert. Jeder Benutzer gehört genau einer Sicherheitsgruppe an.
- Berechtigung (Permission): Die einer Sicherheitsgruppe zugewiesene, funktionsbezogene Zugriffsberechtigung. Sie steuert den Zugriff auf Menüs, Ansichten und APIs.
Die 3 Rollen
Das Produkt bietet genau drei Rollen an.
| Rolle | Anzeigename | Zweck |
|---|---|---|
ADMIN | Systemadministrator | Alle Funktionen. Kann Passwörter anderer ändern und Benutzer verwalten |
API | API-Entwickler | Konten für die Anbindung externer Systeme |
USER | Allgemeiner Benutzer | Basisfunktionen |
Diese Namen standen in älteren Dokumenten, existieren aber nicht im Produkt. Sie erscheinen auch nicht als Rollenauswahl im Benutzerregistrierungsbildschirm.
MANAGER existiert «teilweise» — bitte nicht verwendenMANAGER verhält sich anders als die drei oben genannten.
| Benutzerregistrierungsbildschirm | Nicht in der Auswahl. Der Speicherpfad akzeptiert nur ADMIN·API·USER |
| Server-Zugriffskontrolle | Vorhanden — die Regeln zur Ausführung von Anlagenbefehlen und die Bedingungen für die Anzeige von Schreibschaltflächen auf den Tag-, Verbindungs- und Alarmansichten lauten «ADMIN oder MANAGER» |
POST /api/v5/user | Der Rollenwert wird nicht validiert, sodass MANAGER unverändert gespeichert wird |
| Nach dem Login | Es gibt nur zwei Weiterleitungen: ADMIN/API → Dashboard, USER → Geteilte Ansicht. Ein MANAGER-Konto bleibt im Ladebildschirm hängen |
Ein MANAGER-Zugang über die API zu erstellen, macht das Konto unbrauchbar.
Falls ein solches Konto bereits existiert, ändern Sie die Rolle auf eine der drei oben genannten.
Prinzip der geringsten Rechte: Beginnen Sie für menschliche Benutzer mit
USERund vergeben SieADMINnur an diejenigen, die es für die Verwaltung benötigen.
Benutzereigenschaften
| Eigenschaft | Pflicht | Beschreibung |
|---|---|---|
| Benutzer-ID | O | Eindeutige Kennung für die Anmeldung (englische Buchstaben, Ziffern, 4–20 Zeichen) |
| Benutzername | O | Name, der auf dem Bildschirm angezeigt wird |
| Passwort | O | Anmeldepasswort (12–50 Zeichen, siehe Passwortrichtlinie unten) |
| - | E-Mail-Adresse für Benachrichtigungen | |
| Rolle | O | Eine der Rollen ADMIN / API / USER |
| Status | O | Aktiv (Active) oder Inaktiv (Inactive) |
| Beschreibung | - | Notiz zum Benutzer |
| Erstellungsdatum | automatisch | Zeitpunkt der Kontoerstellung |
| Letzte Anmeldung | automatisch | Zeitpunkt der letzten Anmeldung |
Benutzerliste anzeigen
Wählen Sie im linken Menü System > Benutzer, um die Liste der registrierten Benutzer anzuzeigen.
- URL:
/user/index - Sie können Benutzer-ID, Name, Sicherheitsgruppe, Status und das Datum der letzten Anmeldung einsehen.
- Verwenden Sie die Suchfilter, um einen bestimmten Benutzer schnell zu finden.
Hinweis: Die Benutzerliste kann nur von Benutzern der ADMIN-Sicherheitsgruppe eingesehen werden.
Benutzer hinzufügen
- Klicken Sie auf dem Benutzerlistenbildschirm auf die Schaltfläche Hinzufügen.
- Geben Sie die Pflichtfelder ein.
- Benutzer-ID: Eine eindeutige ID aus englischen Buchstaben und Ziffern (4–20 Zeichen)
- Benutzername: Der Name, der auf dem Bildschirm angezeigt wird
- Passwort: 12–50 Zeichen, davon mindestens 3 von 4 Zeichentypen (Großbuchstaben, Kleinbuchstaben, Ziffern, Sonderzeichen). Bei Unterschreitung wird das Speichern abgelehnt.
- Rolle: Wählen Sie eine der Rollen
ADMIN/API/USER.
- Geben Sie optionale Felder (E-Mail, Beschreibung usw.) nach Bedarf ein.
- Klicken Sie auf die Schaltfläche Speichern.
Hinweis: Die Benutzer-ID kann nach der Erstellung nicht mehr geändert werden. Bitte wählen Sie sie sorgfältig.
Benutzer bearbeiten
- Klicken Sie in der Benutzerliste auf den zu bearbeitenden Benutzer.
- Ändern Sie die bearbeitbaren Felder (Name, E-Mail, Sicherheitsgruppe, Status, Beschreibung usw.).
- Klicken Sie auf die Schaltfläche Speichern.
Hinweis: Die Benutzer-ID kann nicht bearbeitet werden. Um die ID zu ändern, müssen Sie den vorhandenen Benutzer löschen und neu erstellen.
Benutzer löschen
- Wählen Sie in der Benutzerliste den zu löschenden Benutzer aus.
- Klicken Sie auf die Schaltfläche Löschen.
- Klicken Sie im Bestätigungsdialog auf Bestätigen.
Achtung: Gelöschte Benutzer können nicht wiederhergestellt werden. Um einen Benutzer vorübergehend zu sperren, empfehlen wir, stattdessen die Deaktivierung zu verwenden.
Benutzer deaktivieren
Um die Anmeldung eines Benutzerkontos zu blockieren, ohne es zu löschen, verwenden Sie die Deaktivierung.
- Ändern Sie im Benutzerbearbeitungsbildschirm den Status auf
Inactive. - Klicken Sie auf die Schaltfläche Speichern.
Deaktivierte Benutzer können sich nicht anmelden, aber ihre Daten (Audit-Logs, Konfigurationsverlauf usw.) bleiben erhalten. Um das Konto wieder zu aktivieren, ändern Sie den Status auf Active.
Passwortverwaltung
Passwörter werden an einer Stelle im Bildschirm geändert — im Menü System > Benutzer.
Passwort ändern (Standardpasswort ersetzen)
So ändern Sie das Standardpasswort unmittelbar nach der Installation.
- Öffnen Sie das Menü System > Benutzer.
- Klicken Sie in der Zeile des betreffenden Benutzers auf das 🔑 Schlüsselsymbol (Tooltip: „Passwort ändern“).
- Geben Sie das neue Passwort ein. Wenn es sich um Ihr eigenes Konto handelt, müssen Sie auch das aktuelle Passwort eingeben.
- Speichern Sie.
Wer wessen Passwort ändern darf, ist geregelt.
| Ziel | Erforderliche Berechtigung | Aktuelles Passwort erforderlich |
|---|---|---|
| Eigenes Konto | Keine (nur angemeldet sein) | Pflicht — bei falscher Eingabe wird abgelehnt |
| Anderer Benutzer | ADMIN | Nicht erforderlich |
Wenn ein Benutzer, der nicht
ADMINist, versucht, das Passwort eines anderen zu ändern, wird dies abgelehnt und ein Audit-Eintrag im Server-Log hinterlassen. Auch erfolgreiche Änderungen werden in der FormPassword changed: session_user=[...], target_user=[...]protokolliert.
Dasselbe ist über die REST API möglich.
POST /api/v5/user/{user_id}/password
Content-Type: application/json
{ "current_password": "<current-password>", "password": "<new-password>" }
Passwort vergessen behandeln
- Anforderung an Administrator: Ein
ADMIN-Benutzer setzt es über das oben beschriebene Verfahren zurück. - Direkte Initialisierung in der DB (Notfall): Nur verwenden, wenn alle
ADMIN-Konten gesperrt sind.
Passwörter werden als BCrypt-Hash gespeichert. Wenn Sie, wie in älteren Dokumenten
beschrieben, einen Wert mit encode(digest(..., 'sha256'), 'hex') einsetzen, kann die BCrypt-Validierung bei der Anmeldung
diesen String nicht interpretieren, sodass eine Anmeldung mit keinem Passwort mehr möglich ist.
Da dies ein Verfahren ist, das gerade in einer gesperrten Situation angewendet wird, geht die
Wiederherstellungsmöglichkeit verloren.
Der Tabellenname lautet nicht pp_user, sondern USER_LOGIN.
Erstellen Sie zuerst einen BCrypt-Hash und tragen Sie dann den Wert ein.
# BCrypt 해시 생성 (htpasswd — apache2-utils / httpd-tools 패키지)
htpasswd -bnBC 10 "" '<new-password>' | tr -d ':\n'
# → $2y$10$... 형태의 문자열이 나옵니다
-- 비상 시에만. 위에서 만든 BCrypt 해시를 그대로 넣습니다.
UPDATE USER_LOGIN
SET PASSWORD = '<$2y$10$... paste-here>'
WHERE USER_ID = 'admin';
Prüfen Sie unmittelbar nach dem Eintrag die Anmeldung. Wenn sie erfolgreich ist, ändern Sie das Passwort anschließend noch einmal über den normalen Weg im Bildschirm. Für Passwörter von Infrastruktur-Dienstkonten (PostgreSQL, Aster TSDB, RustFS usw.) gilt dieses Dokument nicht, sondern Passwortänderung (Credential-Rotation) — wenn Sie die Reihenfolge nicht einhalten, startet die Plattform nicht.
Passwortrichtlinie
Was das Produkt erzwingt — bei Verstoß wird das Speichern abgelehnt.
| Punkt | Wert |
|---|---|
| Länge | mindestens 12 Zeichen, höchstens 50 Zeichen |
| Komplexität | mindestens 3 von 4 Zeichentypen: Großbuchstaben, Kleinbuchstaben, Ziffern, Sonderzeichen |
Was das Produkt nicht erzwingt — dies muss über Betriebsrichtlinien geregelt werden. Die folgenden Punkte haben keine Plattformfunktion; kümmern Sie sich darum bei Bedarf im Rahmen Ihrer organisatorischen Prozesse.
| Punkt | Status |
|---|---|
| Erzwungener Änderungszyklus · Ablauf | Keine |
| Verbot der Wiederverwendung früherer Passwörter | Keine |
| Wörterbuchblockierung | Keine |
| Permanente Kontosperre | Keine — stattdessen gibt es die folgende vorübergehende Sperre |
Brute-Force-Schutz (vorübergehende Sperre)
Bei wiederholten Anmeldefehlern wird das Konto nicht gesperrt, sondern für eine bestimmte Zeit blockiert
(HTTP 429 + Retry-After). Die Sperre hebt sich nach Ablauf der Zeit automatisch auf; ein Administrator muss nichts entsperren.
| Einstellung | Eigenschaft | Standardwert |
|---|---|---|
| Funktion aktiv | engine.session.bruteforce.enabled | Aktiv |
| Fehlversuche pro IP | engine.session.bruteforce.ip_limit | 30 |
| Fehlversuche pro Konto | engine.session.bruteforce.user_limit | 10 |
| Aggregationsintervall | engine.session.bruteforce.window.seconds | 300 Sekunden (5 Minuten) |
Die Sperre wird getrennt nach IP-Kriterium und Kontokriterium gezählt. Wenn mehrere Personen in einem Büro dieselbe öffentliche IP verwenden, können die Fehlversuche anderer das IP-Limit (30) mit aufbrauchen. Sperrungen und Fehlversuche werden im Audit-Log protokolliert (
LOGIN_BLOCKED/LOGIN_FAILURE).
Verwaltung von Sicherheitsgruppen
Standard-Sicherheitsgruppen
PlantPulse bietet drei Standard-Sicherheitsgruppen.
| Sicherheitsgruppe | Beschreibung | Hauptberechtigungen |
|---|---|---|
| ADMIN | Systemadministrator | Zugriff auf alle Funktionen (Benutzerverwaltung, Systemeinstellungen, alle Menüs) |
| OPERATOR | Betreiber | Zugriff auf betriebliche Funktionen (Monitoring, Alarmverwaltung, Datenabfrage) |
| USER | Allgemeiner Benutzer | Zugriff auf Basisfunktionen (Dashboard-Ansicht, Datenabfrage) |
Sicherheitsgruppe hinzufügen
Zusätzlich zu den Standardgruppen können Sie Sicherheitsgruppen für die Rollen Ihrer Organisation anlegen.
- Wählen Sie das Menü Sicherheitsverwaltung > Sicherheitsgruppen.
- Klicken Sie auf die Schaltfläche Hinzufügen.
- Geben Sie Gruppen-ID, Gruppennamen und Beschreibung ein.
- Klicken Sie auf die Schaltfläche Speichern.
Berechtigungen festlegen
Legen Sie für die Sicherheitsgruppe die Berechtigungen je Menü und Funktion fest.
- Wählen Sie im Menü Sicherheitsverwaltung > Sicherheitsgruppen die Gruppe aus.
- Klicken Sie auf die Registerkarte Berechtigungen.
- Aktivieren Sie für jedes Menü/jede Funktion die Berechtigungen Lesen, Schreiben, Löschen.
- Klicken Sie auf die Schaltfläche Speichern.
Beispiel für die Berechtigungseinstellung:
| Menü | ADMIN | OPERATOR | USER |
|---|---|---|---|
| Verbindungsverwaltung | Lesen/Schreiben/Löschen | Lesen/Schreiben | Lesen |
| Fabrikverwaltung | Lesen/Schreiben/Löschen | Lesen/Schreiben | Lesen |
| Alarmverwaltung | Lesen/Schreiben/Löschen | Lesen/Schreiben | Lesen |
| Benutzerverwaltung | Lesen/Schreiben/Löschen | - | - |
| Systemeinstellungen | Lesen/Schreiben/Löschen | Lesen | - |
| Canvas | Lesen/Schreiben/Löschen | Lesen/Schreiben | Lesen |
Zugriffskontrolle
Standort-Zugriffskontrolle
In Multi-Site-Umgebungen können Sie den Zugriff eines Benutzers auf Standorte einschränken.
- Wählen Sie im Benutzerbearbeitungsbildschirm die Registerkarte Standortzugriff.
- Aktivieren Sie die Standorte, auf die der Zugriff erlaubt sein soll.
- Klicken Sie auf die Schaltfläche Speichern.
Hinweis: Benutzer, für die kein Standortzugriff konfiguriert ist, können auf alle Standorte zugreifen.
Canvas freigeben
Canvas-Ansichten können mit bestimmten Benutzern oder Sicherheitsgruppen geteilt werden.
- Klicken Sie im Canvas-Editor auf Freigabe.
- Wählen Sie die Freigabeempfänger aus.
- Öffentlich: Alle Benutzer haben Zugriff.
- Sicherheitsgruppe: Nur Benutzer der ausgewählten Sicherheitsgruppe haben Zugriff.
- Benutzerdefiniert: Nur die ausgewählten Benutzer haben Zugriff.
- Klicken Sie auf die Schaltfläche Speichern.
Sitzungsverwaltung
Sitzungs-Timeout
Das Sitzungs-Timeout für Benutzer ist standardmäßig auf 30 Minuten eingestellt. Bei 30 Minuten Inaktivität wird der Benutzer automatisch abgemeldet.
Um das Sitzungs-Timeout zu ändern, passen Sie die Einstellung in web.xml an.
<!-- WEB-INF/web.xml inside the webapp (bundled in the WAR — reset on deploy, so change it in the source) -->
<session-config>
<session-timeout>30</session-timeout> <!-- in minutes -->
</session-config>
Parallele Anmeldungen
Standardmäßig ist die gleichzeitige Anmeldung mit demselben Konto von mehreren Browsern/Geräten möglich. In sicherheitskritischen Umgebungen wird empfohlen, Konten pro Benutzer auszustellen und durch Netzwerkmaßnahmen wie IP-Zugriffsbeschränkungen zu ergänzen.
Audit-Log
Die wichtigsten Aktivitäten von Benutzern werden automatisch im Audit-Log protokolliert. Über das Audit-Log können Sie den Verlauf von Systemänderungen nachverfolgen.
Protokollierte Aktivitäten:
| Aktivitätstyp | Beschreibung |
|---|---|
| Anmelden/Abmelden | Benutzerauthentifizierungsereignisse |
| Benutzerverwaltung | Benutzer erstellen, bearbeiten, löschen, deaktivieren |
| Sicherheitsgruppenänderung | Gruppe erstellen, bearbeiten, löschen, Berechtigungen ändern |
| Systemeinstellungen ändern | Eigenschaften, Verbindungsdaten usw. ändern |
| Datenänderung | Stammdaten wie Fabrik, Anlage, Punkt ändern |
Das Audit-Log kann über das Menü Werkzeuge > Audit-Log eingesehen und nach Zeitraum, Benutzer und Aktivitätstyp gefiltert werden.
Massenregistrierung von Benutzern
Um viele Benutzer auf einmal anzulegen, können Sie eine Excel-Datei hochladen.
Verfahren
- Klicken Sie im Menü Sicherheitsverwaltung > Benutzerverwaltung auf die Schaltfläche Excel-Upload.
- Laden Sie die Excel-Vorlage herunter.
- Tragen Sie die Benutzerdaten gemäß Vorlage ein.
| Spalte | Pflicht | Beschreibung | Beispiel |
|---|---|---|---|
| user_id | O | Benutzer-ID | operator01 |
| user_name | O | Benutzername | 홍길동 |
| password | O | Anfangspasswort | Temp1234! |
| - | hong@example.com | ||
| security_group | O | Sicherheitsgruppen-ID | OPERATOR |
| description | - | Beschreibung | 생산1팀 |
- Laden Sie die erstellte Excel-Datei hoch.
- Prüfen Sie in der Vorschau die zu registrierenden Benutzerdaten.
- Klicken Sie auf die Schaltfläche Registrieren.
Hinweis: Beim Upload wird eine Validierung durchgeführt. Bei Fehlern wie doppelten IDs oder fehlenden Pflichtfeldern wird die betroffene Zeile angezeigt; nach Korrektur können Sie die Datei erneut hochladen.
Best Practices
- Prinzip der geringsten Rechte: Weisen Sie Benutzern nur die Berechtigungen zu, die für ihre Aufgaben erforderlich sind.
- Administratorkonten minimieren: Halten Sie die Anzahl der Benutzer in der ADMIN-Gruppe so gering wie möglich und verwenden Sie für den regulären Betrieb die OPERATOR-Gruppe.
- Regelmäßige Überprüfung: Überprüfen Sie vierteljährlich die Benutzerliste und die Berechtigungen und deaktivieren Sie unnötige Konten.
- Austritte behandeln: Deaktivieren oder löschen Sie Konten von ausgeschiedenen Mitarbeitern unverzüglich.
- Keine gemeinsamen Konten: Verwenden Sie persönliche Konten und vermeiden Sie die gemeinsame Nutzung von Konten.
- Passwortverwaltung: Weisen Sie darauf hin, dass Anfangspasswörter geändert werden müssen, und fördern Sie regelmäßige Passwortänderungen.
- Log-Monitoring: Überwachen Sie ungewöhnliche Anmeldeversuche (wiederholte Fehlversuche, Zugriffe zu ungewöhnlichen Zeiten usw.).
Häufig auftretende Probleme
Anmeldefehler
| Symptom | Ursache | Lösung |
|---|---|---|
| Anmeldefehler Bitte überprüfen Sie Benutzername oder Passwort. | Tippfehler beim Benutzernamen · Tippfehler beim Passwort · Nicht vorhandenes Konto · Deaktiviertes Konto — alle vier führen zu derselben Meldung | Benutzername/Passwort erneut prüfen (einschließlich Caps Lock). Wenn es weiterhin nicht funktioniert, prüfen Sie in der Benutzerliste, ob das Konto aktiv ist |
Zu viele Anmeldeversuche (erneuter Versuch nach N Sekunden) | Blockierung durch fortlaufende Fehlversuche (HTTP 429) | Warten Sie die angegebene Zeit ab. Dies ist keine Sperre, die ein Administrator aufheben kann — sie hebt sich mit der Zeit von selbst auf |
| Anmeldebildschirm wird nicht angezeigt | Webserver läuft nicht oder Netzwerkproblem | Prüfen Sie den Serverstatus und die Netzwerkverbindung |
Die Blockierung nach fortlaufenden Fehlversuchen wird nur über ein Zeitfenster aufgehoben (Standard: 300 Sekunden) — es gibt
keine Schaltfläche im Administrationsbildschirm, um sie zu lösen. Wenn Sie angefragt werden, lautet die Antwort: „Versuchen Sie es in ein paar Sekunden erneut.“
Um die Schwellenwerte zu ändern, siehe Umgang mit Anmeldefehlern unter
engine.session.bruteforce.*.
Auch bei deaktivierten Konten erscheint dieselbe Meldung wie bei falschem Passwort. Der Benutzer kann nicht erkennen, dass sein Konto deaktiviert wurde; der Administrator muss den Status stattdessen in der Liste prüfen.
Unzureichende Berechtigung
| Symptom | Ursache | Lösung |
|---|---|---|
| Menü wird nicht angezeigt | Sicherheitsgruppe hat keinen Zugriff auf das Menü | Bitten Sie den Administrator, die Berechtigung hinzuzufügen. |
| Meldung „Keine Zugriffsberechtigung“ | Unzureichende API- oder Funktionsberechtigung | Prüfen Sie die Berechtigungseinstellungen der Sicherheitsgruppe. |
| Daten eines bestimmten Standorts werden nicht angezeigt | Standortzugriff nicht konfiguriert | Prüfen Sie den Standortzugriff des Benutzers. |
Sitzungsablauf
| Symptom | Ursache | Lösung |
|---|---|---|
| Während der Arbeit wird zum Anmeldebildschirm gewechselt | Sitzungs-Timeout (Standard: 30 Minuten) | Melden Sie sich erneut an. Wenn das Timeout zu kurz ist, passen Sie es in web.xml an. |
| Abmeldung auf einem anderen Gerät | Erzwungene Abmeldung durch Richtlinie für parallele Anmeldungen (KICK) | Prüfen Sie die Einstellungen für parallele Anmeldungen. |
| Wiederkehrende sitzungsbezogene Fehler | Redis-Cache-Störung | Prüfen Sie den Status des Redis-Dienstes. |