Installation auf einem Ubuntu-System
Datenbank
- Installieren Sie Maria DB gemäß der offiziellen Installationsanleitung.
- Überprüfen Sie die Installation mit dem folgenden Befehl (je nach der aktuellen MariaDB heißt der Dienst
MariaDB
oder mysqld
):
systemctl start mysql
systemctl status mysql
3. Konfigurieren Sie die Datenbank und den entsprechenden Benutzer:
sudo mysql -uroot -e "CREATE DATABASE frontlinecommandcenter CHARACTER SET = 'utf8' COLLATE = utf8_bin;"
sudo mysql -uroot -e "CREATE USER 'frontline'@'localhost' IDENTIFIED BY '$PASS'"
sudo mysql -uroot -e "GRANT ALL ON frontlinecommandcenter.* TO 'frontline'@'localhost' IDENTIFIED BY '$PASS' WITH GRANT OPTION;"
4. Ersetzen Sie den Platzhalter $PASS
durch ein sicheres Passwort.
Hinweis: Wenn bereits eine geeignete Datenbank installiert und konfiguriert wurde, legen Sie einen Benutzer für diese Datenbank an und ändern Sie -u root
in -u name_of_user -p
.
Frontline Kommandozentrale
1. Erstellen Sie ein Verzeichnis für die frontline.jar-Datei: sudo mkdir /var/opt/frontline
2. Erstellen Sie ein Verzeichnis für die Benutzerdaten: sudo mkdir /var/data/frontline
3. Laden Sie die JAR-Datei der Serveranwendung von der SeiteFrontline Downloads herunter.
4. Benennen Sie es in frontline.jar um und kopieren Sie es nach /var/opt/frontline
: sudo cp ~/Downloads/frontline.jar /var/opt/frontline
5. frontline .jar ausführbar machen: sudo chmod +x /var/opt/frontline
/ frontline.jar
6. Frontline läuft als Spring Boot Service. Navigieren Sie zu /etc/systemd/system
und erstellen Sie eine Datei mit den Dienstdetails: sudo touch frontline.service
7. Bearbeiten Sie frontline.service und fügen Sie hinzu:
[Unit]
Description=frontline command center
After=mysql.service
[Service]
Environment="UBIMAX_HOME=/var/data/frontline/"
ExecStart=/var/opt/frontline/frontline.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
8. Um den Dienst zu aktivieren, verwenden Sie systemctl enable frontline.service
9. Starten Sie den Dienst über systemctl start frontline.service
10. Der Dienst erstellt einige Konfigurationsdateien /var/data/frontline
und fährt dann herunter.
Installation auf einem Windows System
Datenbank
1. Laden Sie die neueste stabile Version von MariaDB von der offiziellen Website herunter und folgen Sie der Installationsanleitung.
2. Führen Sie das MariaDB-Installationsprogramm aus, einschließlich des Supportprogramms HeidiSQL .
3. Erstellen Sie ein Root-Passwort für die Datenbank.
Hinweis: Das Root-Passwort wird in diesem Handbuch als dbrootpassword
bezeichnet.
4. Klicken Sie auf Weiter.
5. Starten Sie nach Abschluss der Installation das Dienstprogramm HeidiSQL. Unter der Annahme einer Standardinstallation befindet sich die Datei hier: C:\Program Files (x86)\Common Files\MariaDBShared\HeidiSQL\heidisql.exe
6. Klicken Sie auf Neu.
7. Erstellen Sie eine neue Datenbank mit einem bestimmten Namen (z. B. Frontline_Test).
8. Ersetzen Sie den Platzhalter$PASS
durch Ihr zuvor erstelltesdbrootpassword
.
9. Optional: Passen Sie den Hostnamen/IP und die Portnummer an.
Wenn Sie ein anderes Datenbanksystem verwenden, passen Sie die folgende SQL-Anweisung an die Datenbank an:
CREATE DATABASE FrontlineCommandCenter CHARACTER SET = 'utf8' COLLATE = utf8_bin;
CREATE USER 'frontline'@'%' IDENTIFIED BY '$PASS';
GRANT ALL ON FrontlineCommandCenter.* TO 'frontline'@'%' IDENTIFIED BY '$PASS' WITH GRANT OPTION;
Frontline Kommandozentrale
- Rufen Sie die Seite Frontline Downloads auf.
- Laden Sie die Server-Anwendungsdatei herunter und benennen Sie sie in frontline.jar um.
- Laden Sie den Wrapper für den Serverdienst von der gleichen Seite herunter.
FCC benötigt ein Installationsverzeichnis und ein DATA-Verzeichnis:
- Installationsverzeichnis - Enthält die frontline.jar Datei und die WinSW_frontline.exe und WinSW_frontline.xml Service Wrapper Dateien.
- Ort:
C:\Frontline
- ID:
$BASE$
- DATA-Verzeichnis - Dieses Verzeichnis wird als Home-Verzeichnis verwendet. Es wird für Kunden-Assets wie Anmeldekarten und Themen verwendet. Erstellen Sie einen neuen Ordner innerhalb des Installationsverzeichnisses und nennen Sie ihn DATA.
- Ort:
C:\Frontline\DATA
- ID:
$FRONTLINE_HOME$
Hinweis: Die Standort-IDs $BASE$
und $FRONTLINE_HOME$
werden in den folgenden Codebeispielen als Referenz verwendet.
Der WinSW_frontline.exe
Service Wrapper ermöglicht es den Benutzern, den FCC-Dienst als Windows Dienst zu installieren.
- Optional: Wenn Sie einen Forward-Proxy konfigurieren müssen (z. B. um FCC den Zugriff auf unseren Lizenzserver zu ermöglichen), öffnen Sie die WinSW_frontline.xml-Datei und fügen Sie
-Dhttps.proxyHost
=$ HOST -Dhttps.proxyPort=$PORT -Dhttps.nonProxyHosts=localhost
am Anfang des Elements <arguments>
ein, wobei Sie $HOST
und $PORT
durch die Werte Ihres Proxys ersetzen. - Öffnen Sie eine Eingabeaufforderung (mit Administratorrechten).
- Ändern Sie das Verzeichnis in
$BASE$
. - Führen Sie
WinSW_frontline.exe install
aus. - net start frontline(die Standarddienst-ID lautet frontline).
Beim ersten Start wird der Dienst nach dem Extrahieren der Konfigurationsdateien automatisch angehalten. Windows kann den Dienst als fehlgeschlagen oder abgestürzt melden.
Das FCC-Konfigurationsverzeichnis befindet sich innerhalb des Verzeichnisses $FRONTLINE_HOME$
. Der Speicherort sollte C:\Frontline
\DATA\config\configuration\ sein. Die Konfigurationsdatei xserver.properties sollte wie unten beschrieben bearbeitet werden.
Erstkonfiguration von Frontline Command Center (Ubuntu und Windows)
- Öffnen Sie die Datei xserver.properties, die sich unter
UBIMAX_HOME/config/configuration/
befindet. - Ändern Sie die Datenbank-IP, den Benutzernamen und das Passwort (um die IP-Adresse anzuzeigen, verwenden Sie den Befehl
ip addr show
). - Wenn der Kunde einen host Namen hat, kann
xserver.url.external.http
anstelle der IP-Adresse verwendet werden. Der Port muss inserver.port
angegeben werden. SSL muss konfiguriert werden, es sei denn, es gibt einen Reverse-Proxy mit SSL-Terminierung.
Je nach individuellem System und Anforderungen ist die Einrichtung oder Konfiguration von Komponenten wie Keycloak, xAssist Stack, ffmpeg, Email und FaaS erforderlich.
FaaS (obligatorisch)
1. Um Frontline Cloud Services zu verwenden, stellen Sie die folgende Eigenschaft ein:
fcc.faas.base-url=https://functions.svc.frontlineworker.com/function/
2. Beim Self-Hosting kann der Endpunkt jedes FaaS einzeln außer Kraft gesetzt werden:
fcc.faas.function.<function>.override-url=
während die Funktion imagemagick
, pdfmake
oder proglove
ist.
3. Für ImageMagick und Proglove, ist keine zusätzliche Konfiguration erforderlich.
4. Für PDFMake müssen die folgenden Umgebungsvariablen gesetzt werden:
RAW_BODY: "true"
MAX_RAW_SIZE: "100mb"
Starten des Servers
- Nachdem die Einrichtung der Eigenschaften abgeschlossen ist, starten Sie den Server mit dem folgenden Befehl:
systemctl start frontline.service
(UBUNTU) oder net start frontline
(WINDOWS) - Der Status des Dienstes kann unter
UBIMAX_HOME/log/server/fronline.log
überprüft werden. - Beim ersten erfolgreichen Start von FCC wird ein Systemadministrator-Benutzer namens
sysadmin
mit einem Zufallspasswort angelegt. Dieser Benutzer wird zur Konfiguration von FCC verwendet. - Das Passwort für den Benutzer
sysadmin
kann aus den Protokolldateien unter$FRONTLINE_HOME\logs
abgerufen werden. - Öffnen Sie die Dateifrontline.log, und das Kennwort wird im folgenden Format angezeigt:
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - YOUR GENERATED SYSADMIN PASSWORD: 123456789 - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - CHANGE THIS PASSWORD AS SOON AS POSSIBLE TO A PERSONALIZED ONE. - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - ########################################################## - -:-/-
INFO de.ubimax.xserver.DatabaseSetupManager - #####################################################
6. Melden Sie sich mit dem Benutzer sysadmin
an und ändern Sie das Passwort.
Um eine Lizenz zu importieren:
- Öffnen Sie Frontline Command Center.
- Gehen Sie zu Konfiguration.
- Gehen Sie zu Lizenzen.
- Klicken Sie auf Lizenz importieren.
- Klicken Sie in dem daraufhin angezeigten Modal auf Lizenz importieren, um den Eintrag mit dem Lizenzserver zu synchronisieren.
Keycloak (obligatorisch)
Es gibt zwei Betriebsmodi für Keycloak: Einzelplatzmodus und Clustermodus. Welchen Modus Sie wählen, hängt von Ihren individuellen Anforderungen ab. Eine ausführliche Anleitung zur Einrichtung eines der beiden Modi finden Sie in der offiziellen Keycloak-Installationsanleitung. Frontline unterstützt Version 15 oder höher.
Nachdem Keycloak erfolgreich installiert wurde, müssen die Realms, die in dieser Installation verwendet werden sollen, erstellt werden. Jede Domäne für eine FCC-Installation muss einen eigenen Realm haben.
- Laden Sie diese JSON-Datei herunter.
- Öffnen Sie die JSON-Datei des Realm-Exports.
- Ersetzen Sie alle Vorkommen von
<the-fcc-url>
durch die tatsächliche FCC-URL. - Optional: Ersetzen Sie alle Vorkommen von
frontline-realm durch einen anderen Realm-Namen (nur anwendbar, wenn mehrere
Frontline realms in Keycloak erforderlich sind). - Optional: Suchen Sie nach
"claim.name": "domain"
und ersetzen Sie den entsprechenden Domainwert (nur anwendbar, wenn FCC eine andere Domain als die Standard-ubimax-Domain
verwenden wird). - Melden Sie sich über den Browser bei der Keycloak-Administrationskonsole an.
- Klicken Sie auf Realm auswählen.
- Wählen Sie Reich hinzufügen.
- Wählen Sie eine zu importierende Datei aus.
- Öffnen Sie den importierten Realm.
- Navigieren Sie zu
Clients/FCC/Credentials
. - Klicken Sie auf Geheimnis regenerieren.
- Kopieren Sie diesen Wert.
- Der kopierte Wert muss in der xserver.properties-Datei des FCC als
fcc.keycloak.realms.<domain>.clientSecret
eingestellt werden (<domain> ist standardmäßig ubimax
). - Optional: Konfigurieren Sie einen SMTP-Server auf der Registerkarte E-Mail in den Realm-Einstellungen.
- Sobald Keycloak konfiguriert ist, müssen die folgenden Eigenschaften pro Domain in der xserver.properties-Datei des FCC eingestellt werden:
- Alle in Chevrons (<>) geschriebenen Platzhalter müssen durch die entsprechenden Angaben ersetzt werden.
- Es ist vorgesehen, den
KeyMan-URI
auf Null
zu setzen.
fcc.keycloak.enabled=true
fcc.keycloak.realms.<domain>.name=<realm-name>
fcc.keycloak.realms.<domain>.domainTag=<domain>
fcc.keycloak.realms.<domain>.realmId=<realm-name>
fcc.keycloak.realms.<domain>.serverUrl=<keycloak-external-url>
fcc.keycloak.realms.<domain>.clientId=fcc
fcc.keycloak.realms.<domain>.clientSecret=<client-secret>
fcc.keycloak.keyman.uri=
Hinweis:KeyManist ein Dienst, der alle oben beschriebenen Schritte automatisch auf Frontline Cloud-Instanzen durchführt und wird für selbst gehostetes Keycloak nicht benötigt.
Client-Anwendung hochladen
Sobald Keycloak konfiguriert ist, muss ein Admin-Benutzer erstellt werden und die Client-Anwendung muss auf das Frontline Command Center hochgeladen werden.
- Erstellen Sie einen Benutzer mit der Rolle eines Administrators, indem Sie die auf der Seite Benutzerverwaltung beschriebenen Schritte ausführen.
- Laden Sie die neueste Anwendung Frontline Workplace smart glass von der Seite Downloads herunter.
- Wählen Sie auf Frontline Command Center oben links den Navigationsbereich.
- Gehen Sie zu Konfiguration.
- Befolgen Sie die auf der Seite für die Verwaltung von Bewerbungen angegebenen Schritte, um die Bewerbung hochzuladen.
IAM-Integration
Um die Benutzerverwaltung zu vereinfachen, unterstützt Frontline die Synchronisierung von Benutzerdetails von Ihrem Identitätsanbieter zu FCC. Wenn diese Zuordnung aktiviert ist, verarbeitet FCC die IDP-Benutzerdetails und lässt nicht zu, dass diese auf der FCC-Verwaltungsebene überschrieben werden. Bei den synchronisierten Benutzerdetails handelt es sich um Spracheinstellungen, Rollen, Lizenzzuweisungen und Teams.
Derzeit unterstützt Frontline die folgenden IAM-Typen:
- Microsoft Azure Active Directory
- Microsoft Active Directory
- AWS Identitäts- und Zugriffsmanagement
Rollen, Lizenzen und Teams können in den folgenden Fällen nicht erfolgreich eingesetzt werden:
- Lizenz, Rollen oder Team stimmen in IDP und FCC nicht zu 100 % überein (Groß- und Kleinschreibung wird berücksichtigt)
- FCC hat keine freien Lizenzen (für Rollen und Lizenzzuordnung)
- Der Benutzer hat sich noch nicht angemeldet (die Synchronisierung findet nur statt, wenn sich ein Benutzer anmeldet)
Die verfügbaren Rollen und Teams der Identitätsanbieter müssen sorgfältig definiert werden, damit Rollen, Lizenzen und Teams erfolgreich zugeordnet werden können:
- <Lizenzname> weist die Lizenz für einen bestimmten Benutzer zu (z. B. License_xAssist)
- <Rollenname> weist einem bestimmten Benutzer eine Rolle zu und übernimmt eine Lizenz (z. B. Administrator)
- <Team> weist einen bestimmten Benutzer einem Team in FCC zu
Identitätsvermittlung (fakultativ)
Hinweis: Identity Brokering wird nur auf FCC-Installationen unterstützt, bei denen die Benutzer vollständig in Keycloak vorhanden sind. Es funktioniert nur, nachdem sich alle bestehenden Benutzer mindestens einmal mit Keycloak angemeldet haben oder bei neuen Installationen, bei denen Keycloak von Anfang an aktiviert wurde.
Mit Identity Brokering können Keycloak-Realms mit externen OpenID-basierten Identitätsanbietern (IDPs) verbunden werden. Das bedeutet, dass der Benutzer seine Anmeldedaten nicht in Keycloak eingeben muss, sondern zu einem externen IDP (z. B. Azure AD oder Okta) weitergeleitet wird und nach erfolgreicher Authentifizierung zurück zu Keycloak (und dann weiter zu Frontline) gelangt.
Die folgende Abbildung zeigt den grundlegenden Authentifizierungsprozess, wenn sich ein Benutzer anmeldet:
Der Benutzer gibt sein Passwort niemals an FCC weiter, sondern wird an Keycloak und den Identitätsanbieter weitergeleitet, der ein Authentifizierungs-Token erstellt. Standardmäßig versucht Keycloak, den externen Benutzer über die E-Mail-Adresse mit einem bestehenden Frontline -Benutzer abzugleichen. Wenn dies nicht möglich ist (wenn kein passender Benutzer gefunden wurde), wird der Anmeldevorgang abgebrochen und der Zugang zu Frontline verweigert.
Ein Keycloak-Realm kann mehrere Identitäts-Broker enthalten (z.B. Azure AD). Dies bietet die Möglichkeit, sich sowohl mit lokalen Konten als auch mit verschiedenen externen Konten anzumelden. In bestimmten Szenarien kann es von Vorteil sein, Benutzer on-the-fly zu erstellen, sobald ein neuer Benutzer versucht, sich anzumelden. Dies wird als User Provisioning bezeichnet und kann mit der folgenden Eigenschaft in FCC aktiviert werden:
fcc.keycloak.user-provisioning.enabled=true
Darüber hinaus müssen die folgenden Eigenschaften konfiguriert werden:
server.servlet.session.cookie.same-site=none
server.servlet.session.cookie.secure=true
Auf diese Weise werden zwar bei der ersten Anmeldung Benutzerkonten erstellt, aber das Konto selbst ist zu diesem Zeitpunkt praktisch nutzlos, da ihm weder eine Lizenzstufe noch irgendwelche Rollen zugewiesen sind. Dieses Verhalten kann über die folgenden Eigenschaften geändert werden. Die folgenden Änderungen führen dazu, dass alle bereitgestellten Benutzer in FCC mit der xAssist-Rolle der zugewiesenen xAssist-Lizenzstufe landen:
fcc.keycloak.user-provisioning.default-license-tiers=xAssist
fcc.keycloak.user-provisioning.default-roles=xAssist
Das Identitätsbrokering erfordert einige Einstellungen auf Seiten des Identitätsanbieters, den Sie verwenden möchten. Das folgende Beispiel zeigt, wie Azure AD als Identitätsanbieter konfiguriert wird. Andere Identitätsanbieter verfolgen ähnliche Ansätze.
Um Azure AD als Identitätsanbieter in Keycloak zu konfigurieren:
- Wählen Sie Ihren Bereich.
- Gehen Sie zu Identitätsanbieter.
- Fügen Sie einen neuen OpenID Connect v1.0 Anbieter hinzu.
- Blättern Sie ganz nach unten zu Externe IDP-Konfiguration importieren.
- Fügen Sie Ihre Discovery-URL ein.
- Klicken Sie auf Importieren. Dadurch sollten Felder wie Autorisierungs-URL oder Token-URL ausgefüllt werden.
- Bearbeiten Sie die folgenden Werte manuell:
- Alias und Name - Diese können auf benutzerdefinierte Werte gesetzt werden, wobei der Name derjenige ist, der später auf der Anmeldeseite angezeigt wird, während der Alias in der Redirect-URI zu finden ist.
- ClientAuthMethod - Wählen Sie
client_secret_post
. - ClientID - Gefunden beim Erstellen einer App in Azure.
- ClientSecret - Gefunden beim Erstellen einer App in Azure.
- Speichern Sie den neu hinzugefügten Identitätsanbieter. Danach sollte er auf der Seite für die einmalige Anmeldung erscheinen.
Azure AD als Identitätsanbieter
- Melden Sie sich bei Azure an.
- Navigieren Sie zu App-Registrierungen.
- Gehen Sie zu Neue Registrierung.
- Nennen Sie die Anwendung Frontline Keycloak.
- Setzen Sie ihn auf Single Tenant. Der Redirect-URI wird noch nicht benötigt.
6. Sobald die App erstellt wurde, wird die Kunden-ID auf der Hauptseite angezeigt.
7. Die Discovery URL finden Sie unter Endpunkte. Es handelt sich um das OpenID Connect-Metadaten-Dokument.
8. Erzeugen Sie das Client-Geheimnis. Klicken Sie dazu auf die aktuellen Client-Anmeldedaten.
9. Um ein neues Kundengeheimnis hinzuzufügen, klicken Sie auf Neues Kundengeheimnis. Die Beschreibung sollte Frontline secret lauten und die Dauer sollte auf 24 Monate festgelegt werden.
10. Nach dem Hinzufügen des Geheimnisses wird ein Eintrag mit einem Wert und einer Geheimnummer erstellt.
Hinweis: Kopieren Sie den Wert sofort und bewahren Sie ihn sicher auf, da er später nicht mehr verfügbar sein wird.
So konfigurieren Sie den fehlenden Redirect-URI in Azure:
- Navigieren Sie zu unserer App Frontline Keycloak über App-Registrierung.
- Wählen Sie Redirect URIs.
3. Wählen Sie Plattform/Web hinzufügen.
4. Der einzugebende Redirect-URI sieht wie folgt aus:
<Local-Keycloak-Url>/auth/realms/<Ihr-realm-name>
.