/monitor Webapplikation

Start

Um service.monitor zu installieren, führen Sie die folgenden Schritte aus:

  1. Optional können Sie zunächst den Namen der WAR-Datei monitor.war anpassen.

  2. Starten Sie den Tomcat-Dienst.

  3. Kopieren Sie anschließend die WAR-Datei in den Ordner %TOMCAT%\webapps. Die Datei wird nun automatisch entpackt.

    Alternativ können Sie den Tomcat Manager benutzen, um die WAR-Datei zu installieren. Wenn der Tomcat-Dienst gestartet ist, erreichen Sie den Tomcat Manager üblicherweise unter http://<yourserver>:8080/manager/html.

  4. Wenn Tomcat die Datei entpackt, wird anschließend versucht, die Webapplikation zu starten. Aufgrund fehlender Konfiguration wird dieser initiale Start fehlschlagen.

Anpassung der Konfiguration

Für Änderungen an der Standardkonfiguration müssen Sie die entsprechend Konfigurationsdateien anpassen. Folgende Konfigurationsdateien werden von service.monitor verarbeitet:

  • WEB-INF/classes/default-application.properties (NICHT EDITIEREN)
    In dieser Datei befinden sich alle Konfigurationsoptionen von map.apps mit ihren Standardwerten.

  • WEB-INF/classes/custom-application.properties
    Wenn eine Änderung des Arbeitsverzeichnisses (data.directory.location) oder Konfigurationsverzeichnisses (config.directory.location) nötig ist, muss die Änderung in dieser Datei erfolgen. Alle weiteren Anpassungen erfolgen in folgender Datei:

  • [config.directory.location]/application.properties
    Nehmen Sie Änderungen an der Konfiguration durch das Bearbeiten dieser Datei vor.
    Das Konfigurationsverzeichnis (config.directory.location) von map.apps ist in der Standardinstallation das Verzeichnis ${user.home}/.monitor. Die Datei wird nicht automatisch erstellt, daher kann als Vorlage die Datei WEB-INF/classes/config-templates/application.properties dienen. Belassen Sie nur die Einstellungen in der Datei, die geändert wurden oder solche, die auf Werte aus den secrets.properties verweisen.

  • [config.directory.location]/secrets.properties
    Legen Sie sensible Daten wie Passwörter oder API-Schlüssel in dieser Datei ab und verweisen Sie, wie im Beispiel beschrieben, auf diese in den application.properties.

Das Format der Konfigurationsdateien muss dem Java Properties Dateiformat entsprechen.

Starten Sie nach den Änderungen den Servlet Container neu oder aktualisieren Sie den Kontext.

Umgebungsvariablen

Sie können die Werte aller Konfigurationsparameter auch mit Umgebungsvariablen setzen. Diese überschreiben immer die Werte, aus den Konfigurationsdateien. Das ist hilfreich, wenn {product-name} zum Beispiel in einem Docker-Container betrieben wird.

Sie müssen die Namen der Konfigurationsparameter aus den Konfigurationsdateien für die Verwendung als Umgebungsvariablen anpassen: Ersetzen Sie alle Buchstaben des Namen durch Großbuchstaben sowie den Punkt . durch den Unterstrich _.

Beispiel: security.oauth.provider wird zu SECURITY_OAUTH_PROVIDER. Dieses Muster gilt für alle Konfigurationsparameter.

Konfiguration von Passwörtern bzw. Geheimnissen

Sensible Daten wie Passwörter oder API-Schlüssel, sollten in der Datei secrets.properties in der Form secretKey=value gespeichert werden. Im Gegensatz zu früheren Softwareversionen werden keine Standard-Passwörter mehr vorgegeben. Alle benötigten Passwörter müssen bei der Installation selbst gesetzt werden. Die Passwortkodierung ist standardmäßig auf SHA-512 festgelegt und kann über die Property security.user.pwenc angepasst werden. Definieren Sie hier beispielsweise das Passwort für den Administrationszugang wie folgt:

secrets.properties
# Passwort für Administrationszugang
secret.admin.pw=mySecretValue

Den Eintrag referenzieren Sie dann in der application.properties Datei:

application.properties
# Referenz auf Eintrag in secrets.properties
security.user.admin.pw=${secret.admin.pw}

Durch die separate Speicherung der Geheimnisse in der Datei secrets.properties wird verhindert, dass man mit dem Wissen über die Konfiguration der Anwendung gleichzeitig Kenntnis über konfigurierte Geheimnisse erhält.

Sichern Sie die Datei secrets.properties durch die Vergabe passender Zugriffsberechtigungen ab und verschlüsseln diese bei Bedarf mit den Mitteln des Betriebssystems.

In dynamischen Deployment Szenarien, wie beispielsweise dem Betrieb in einem Docker-Container, kann die Datei secrets.properties auch generiert oder extern verwaltet werden.

Konfigurieren der application.properties

Ändern Sie alles, was auf das Installationssystem oder die Infrastruktur abgestimmt werden muss, in der Datei application.properties im data.directory.

Folgende Parameter müssen Sie anpassen. Auf der Seite Gängige Konfigurationen finden Sie eine Übersicht über die am häufigsten verwendeten Parameter.

Interner Account

security.user.admin.pw

Passwort für den internen Defaultaccount monitor.

Es wird dringend empfohlen ein neues Password für den internen Defaultaccount monitor zu setzen. Dieser ist Teil des integrierten Authentifizierungsverfahrens, welches nach der Installation die Voreinstellung ist.

Einen neuer Password-Hash kann mit Hilfe des Skriptes resources\tools\createPassword.bat bzw. resources\tools\createPassword.sh über die Kommandozeile generiert werden. Der Aufruf ist createPassword.bat SHA-512 <Password>. Der Ausgabewert des Tools wird in die Datei als Konfigurationswert kopiert.

Öffentliche Basis-URL

basehost.url

Die öffentliche Basis-URL für externe Kommunikation ohne den Kontextnamen.

Bitte achten Sie auch auf die Angabe des korrekten Protokolls, z.B. https://[public.domain.tld].

Datenbankverbindung

db.use

Legt fest, ob eine direkte Datenbankverbindung (JDBC) oder eine container-managed Datenbankverbindung (JNDI) aufgebaut wird.

Im Fall von JDBC müssen die weiteren, hier beschriebenen Parameter konfiguriert werden. Im Falle von JNDI folgt Sie dem Abschnitt zu JNDI.

Erlaubte Werte: jdbc, jndi

db.type

Typ der Datenbank.

Erlaubte Werte: postgresql, oracle, oracle10, sqlserver

db.jdbc.url

Datenbankverbindungs-URL.

db.jdbc.username

Name des DB-Nutzers.

db.jdbc.password

Passwort des DB-Nutzers.

Mail-Server

mailing.host

Mail-Server-Hostname.

mailing.port

Port für den Mail-Versand.

mailing.user

Name des Nutzers am Mail-Server.

mailing.password

Passwort des Nutzers.

mailing.sender

Absender-Adresse für Mail-Verkehr.

Weitere Konfigurationshinweise