Administrations-Changelog

Diese Seite zeigt Änderungen, die in den Releases der einzelnen Versionen enthalten sind und explizit für Administratoren relevant sind. Als Administrator werden Personen angesehen, die Updates am BPC durchführen und administrative Konfiguration im BPC durchführen.

Für die Auflistung aller Änderungen siehe Changelog.

BPC 4.1.18

Release Datum: 2024-11-18

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch | OpenSearch Plugin | Java

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

Neue Funktionen

Verbesserungen

  • Unnötige Fehlerlogs mit MaintenanceModeEnabledException BPC-8784

    Betrifft: BPC Core

Bugs

  • Beim Imitieren wird die Sprache des imitierenden Nutzers im imitierten Nutzer gespeichert BPC-8864

    Beim imitieren anderer Benutzer kann die Sprache nicht mehr im Keycloak Profil des imitierten Users verändert werden. Damit dies funktioniert, muss im Keycloak korrekt konfiguriert werden, dass Impersonator Informationen über einen aktiven Scope mitgegeben werden.

    Betrifft: BPC Core

  • Entfernen obsoleter grid_showHeader Konfiguration BPC-8912

    Die Konfiguration grid_showHeader ist obsolet, da diese Fehler verursacht. Das Verhalten vom Header wird seit geraumer Zeit mit dem Parameter moduleHeader_enabled gesteuert. Das Setting wird beim BPC Update automatisch entfernt.

Dokumentation

  • Karaf Zugriff BPC-8246

    Karaf Zugriff per SSH wird detaillierter beschrieben und es wurden nützliche Hinweise hinzugefügt.

    Folgende Dokumentationsseiten wurde geändert.

    Betrifft: Dokumentation

Interne Abhängigkeiten / Dependency Updates

Sonstiges

  • Update Java BPC-9016

    Betrifft:

BPC 4.1.17

Release Datum: 2024-10-18

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Java

Neue Funktionen

  • LocalStorage soll beim BPC Update automatisch verworfen werden BPC-6268

    Beim Laden des BPCs wird die Versionsnummer des Core-Common-Packages (Fe-Core) ermittelt und im Local Storage hinterlegt. Weicht diese Versionsnummer von derjenigen ab, die beim vorherigen Ladevorgang gespeichert wurde, wird der Local Storage zurückgesetzt.

    Betrifft: BPC Core

Sonstiges

  • Update Java BPC-8962

    Betrifft:

BPC 4.1.16

Release Datum: 2024-09-23

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch Plugin

Verbesserungen

Bugs

  • Opensearch: BpcPlugin - ConcurrentModificationException BPC-8852

    Betrifft: OpenSearch

BPC 4.1.15

Release Datum: 2024-08-26

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf | OpenSearch

Security

Interne Abhängigkeiten / Dependency Updates

BPC 4.1.14

Release Datum: 2024-07-02

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Verbesserungen

  • Neuanmeldung bei IP Pinning Problemen ermöglichen BPC-8179

    Kommt es zu einem IP Pinning Fehler, so kann man sich nun nach einem Neuladen der Seite im Browser normal anmelden. Der Fehler wird nicht erneut angezeigt (es sei denn die IP ändert sich erneut).

    Betrifft: BPC Core | BPC Core | BPC Core

BPC 4.1.13

Release Datum: 2024-06-04

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • Maximaler Arbeitsspeicher für Karaf wird anders konfiguriert BPC-8542

    In aktuellen Karaf Versionen wurden Karaf spezifische Umgebungsvariablen zum setzen des JVM Speichers entfernt und müssen durch eine Alternative ersetzt werden.

    Linux

    Bitte in der bpc.env.sh

    # Karaf
    export JAVA_MIN_MEM=128M
    export JAVA_MAX_MEM=512M

    durch

    # Karaf
    export EXTRA_JAVA_OPTS="$EXTRA_JAVA_OPTS -Xms128m -Xmx512m"

    ersetzen und die Werte entsprechend übernehmen.

    Windows

    Bitte in der bpc.env.cmd

    rem *** Karaf ***
    SET JAVA_MIN_MEM=128M
    SET JAVA_MAX_MEM=512M

    durch

    rem *** Karaf ***
    SET EXTRA_JAVA_OPTS=%EXTRA_JAVA_OPTS% -Xms128m -Xmx512m

    ersetzen und die Werte entsprechend übernehmen.

    Betrifft: Dokumentation |

Verbesserungen

  • Maximaler Arbeitsspeicher für Karaf wird anders konfiguriert BPC-8542

    In aktuellen Karaf Versionen wurden Karaf spezifische Umgebungsvariablen zum setzen des JVM Speichers entfernt und müssen durch eine Alternative ersetzt werden.

    Linux

    Bitte in der bpc.env.sh

    # Karaf
    export JAVA_MIN_MEM=128M
    export JAVA_MAX_MEM=512M

    durch

    # Karaf
    export EXTRA_JAVA_OPTS="$EXTRA_JAVA_OPTS -Xms128m -Xmx512m"

    ersetzen und die Werte entsprechend übernehmen.

    Windows

    Bitte in der bpc.env.cmd

    rem *** Karaf ***
    SET JAVA_MIN_MEM=128M
    SET JAVA_MAX_MEM=512M

    durch

    rem *** Karaf ***
    SET EXTRA_JAVA_OPTS=%EXTRA_JAVA_OPTS% -Xms128m -Xmx512m

    ersetzen und die Werte entsprechend übernehmen.

    Betrifft: Dokumentation |

BPC 4.1.12

Release Datum: 2024-05-06

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

Bugs

  • Abweichungen in der Konsistenzprüfung der Replikation BPC-8494

    Betrifft: BPC Core

Dokumentation

  • Typo bei der Einrichtung als Windows-Dienste BPC-8452

BPC 4.1.11

Release Datum: 2024-04-08

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch | OpenSearch Plugin

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

Interne Abhängigkeiten / Dependency Updates

BPC 4.1.10

Release Datum: 2024-03-11

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • Karaf Log Monitor BPC-7550

    Karaf Logs werden nun über einen Monitor bereitgestellt (siehe auch Karaf Log).

    Für das Schreiben der Karaf Logs in den OpenSearch-Index bpc-logs wird die Zusatzkomponente 'Decanter' verwendet. Bei einer neuen Installation des Karafs ist diese Komponente bereits vorinstalliert und es muss nichts gemacht werden. Falls eine vorhandene Karaf-Installation nicht ersetzt werden kann oder soll, dann kann diese auch per Karaf-Konsole nachinstalliert werden (Internet Verbindung notwendig).

    virtimo@bpc()> feature:repo-add decanter
    virtimo@bpc()> feature:install decanter-collector-log

    Für die Konfiguration der Funktion siehe Karaf Log.

    Betrifft: BPC Core | Dokumentation | | Karaf

  • Update Karaf BPC-8353

    Karaf muss mit diesem Update aktualisiert werden.

    Betrifft: BPC Core | Karaf

Neue Funktionen

  • Karaf Log Monitor BPC-7550

    Karaf Logs werden nun über einen Monitor bereitgestellt (siehe auch Karaf Log).

    Für das Schreiben der Karaf Logs in den OpenSearch-Index bpc-logs wird die Zusatzkomponente 'Decanter' verwendet. Bei einer neuen Installation des Karafs ist diese Komponente bereits vorinstalliert und es muss nichts gemacht werden. Falls eine vorhandene Karaf-Installation nicht ersetzt werden kann oder soll, dann kann diese auch per Karaf-Konsole nachinstalliert werden (Internet Verbindung notwendig).

    virtimo@bpc()> feature:repo-add decanter
    virtimo@bpc()> feature:install decanter-collector-log

    Für die Konfiguration der Funktion siehe Karaf Log.

    Betrifft: BPC Core | Dokumentation | | Karaf

  • Health-Endpunkt für Cluster-Master BPC-7915

    Neuer Status-Endpunkt zur Abfrage der Rolle einzelner Knoten im Clusterbetrieb. Über diesen Endpunkt kann nun überprüft werden, ob ein Knoten die "master"-Rolle hat oder nicht. Siehe auch BPC API /cxf/bpc-core/status/clustermaster

    Betrifft: BPC Core | Dokumentation

Interne Abhängigkeiten / Dependency Updates

  • Update Karaf BPC-8353

    Karaf muss mit diesem Update aktualisiert werden.

    Betrifft: BPC Core | Karaf

BPC 4.1.9

Release Datum: 2023-12-15

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch Plugin

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • Karaf Version auf Statusseite anzeigen BPC-8260

    Es ist das Update des OpenSearch Plugins (os-bpc-plugin) nötig.

    Betrifft: BPC Core | OpenSearch | BPC Core

Verbesserungen

  • Karaf Version auf Statusseite anzeigen BPC-8260

    Es ist das Update des OpenSearch Plugins (os-bpc-plugin) nötig.

    Betrifft: BPC Core | OpenSearch | BPC Core

  • Dashboard Modul auf Frontend reduziert BPC-8279

    Bei bestehenden Installationen kann die Datei bpc-be-dashboard.jar ersatzlos entfallen und aus dem KARAF/deploy Verzeichnis gelöscht werden. Das Dashboard Modul besteht nur noch aus der Datei bpc-fe-dashboard.war.

BPC 4.1.8

Release Datum: 2023-11-21

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.7

Release Datum: 2023-10-23

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch | OpenSearch Plugin

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

Interne Abhängigkeiten / Dependency Updates

BPC 4.1.6

Release Datum: 2023-09-25

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

  • Update Karaf BPC-8077

    Karaf muss mit diesem Update aktualisiert werden.

    Der Login auf die Karaf-Konsole via ssh ist für Benutzer aus der users.properties im Standard nicht mehr erlaubt. Um Benutzern den Login via ssh zu erlauben, fügen Sie die Rolle ssh in der Datei KARAF/etc/users.properties den einzelnen Benutzers hinzu oder fügen Sie die Rolle der admingroup hinzu.

    Betrifft: BPC Core | Karaf

  • Entfernen vom BPC default Public Key aus keys.properties BPC-8210

    Einträge in der Datei KARAF/etc/keys.properties, die von Ihnen nicht für einen Login mit public/private Key genutzt werden, können entfernt werden.

    Betrifft: Karaf

Security

  • Entfernen vom BPC default Public Key aus keys.properties BPC-8210

    Einträge in der Datei KARAF/etc/keys.properties, die von Ihnen nicht für einen Login mit public/private Key genutzt werden, können entfernt werden.

    Betrifft: Karaf

Interne Abhängigkeiten / Dependency Updates

  • Update Karaf BPC-8077

    Karaf muss mit diesem Update aktualisiert werden.

    Der Login auf die Karaf-Konsole via ssh ist für Benutzer aus der users.properties im Standard nicht mehr erlaubt. Um Benutzern den Login via ssh zu erlauben, fügen Sie die Rolle ssh in der Datei KARAF/etc/users.properties den einzelnen Benutzers hinzu oder fügen Sie die Rolle der admingroup hinzu.

    Betrifft: BPC Core | Karaf

BPC 4.1.5

Release Datum: 2023-08-28

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.4

Release Datum: 2023-08-14

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch Plugin

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • OpenSearch Cluster Betrieb: Socket Timeouts im os-bpc-plugin BPC-8059

    Falls gesetzt, die folgenden nicht mehr benötigten os-bpc-plugin spezifischen Settings aus der conf/opensearch.yml entfernen.

    • os-bpc-plugin.opensearch.basicauth.username

    • os-bpc-plugin.opensearch.basicauth.password

    • os-bpc-plugin.trust_certificates

    • os-bpc-plugin.verify_hostnames

    • os-bpc-plugin.truststore.path

    • os-bpc-plugin.truststore.type

    • os-bpc-plugin.truststore.password

    Wird dies nicht getan, dann startet OpenSearch nicht und bringt den Fehler "please check that any required plugins are installed, or check the breaking changes documentation for removed settings".

Bugs

  • OpenSearch Cluster Betrieb: Socket Timeouts im os-bpc-plugin BPC-8059

    Falls gesetzt, die folgenden nicht mehr benötigten os-bpc-plugin spezifischen Settings aus der conf/opensearch.yml entfernen.

    • os-bpc-plugin.opensearch.basicauth.username

    • os-bpc-plugin.opensearch.basicauth.password

    • os-bpc-plugin.trust_certificates

    • os-bpc-plugin.verify_hostnames

    • os-bpc-plugin.truststore.path

    • os-bpc-plugin.truststore.type

    • os-bpc-plugin.truststore.password

    Wird dies nicht getan, dann startet OpenSearch nicht und bringt den Fehler "please check that any required plugins are installed, or check the breaking changes documentation for removed settings".

BPC 4.1.3

Release Datum: 2023-07-03

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module

BPC 4.1.2

Release Datum: 2023-06-05

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch Plugin

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

  • Im OpenSearch Cluster werden die Daten des os-bpc-plugin nicht zuverlässig zwischen den Nodes synchronisiert BPC-7768

    Eine Aktualisierung von OpenSearch bzw. des os-bpc-plugin ist erforderlich.

    Betrifft: BPC Core | OpenSearch

Bugs

  • Im OpenSearch Cluster werden die Daten des os-bpc-plugin nicht zuverlässig zwischen den Nodes synchronisiert BPC-7768

    Eine Aktualisierung von OpenSearch bzw. des os-bpc-plugin ist erforderlich.

    Betrifft: BPC Core | OpenSearch

BPC 4.1.1

Release Datum: 2023-05-08

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | OpenSearch Plugin

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

Interne Abhängigkeiten / Dependency Updates

BPC 4.1.0

Release Datum: 2023-03-27

Mit diesem Update müssen folgende Komponenten aktualisiert werden: BPC Module | Karaf | OpenSearch

Breaking Changes

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es können Handlungsanweisungen enthalten sein, die Sie für ein Update befolgen müssen.

  • Umstellung auf OpenSearch BPC-5819

  • Update Karaf BPC-6709

    Für dieses BPC Update ist ein Update des Karaf verpflichtend.

    Kunden Themes und eigene BPC Module müssen so angepasst werden, dass der Web-ContextPath und Webapp-Context in der Manifest-Datei zwingend mit einem / beginnen. Um dies zu erreichen, kann in der Regel die Datei build.gradle angepasst werden. Ein Beispiel kann hier eingesehen werden.

    In der Konfigurationsdatei [karaf]/etc/org.ops4j.pax.web.cfg wurden Parameter umbenannt:

    org.ops4j.pax.web.ssl.password -> org.ops4j.pax.web.ssl.keystore.password
    org.ops4j.pax.web.ssl.keypassword -> org.ops4j.pax.web.ssl.key.password
  • Starke Passwort Verschlüsselung BPC-7390

    Durch das Karaf Update wird nun ein stärkerer Algorithmus zum hashen der Passwörter verwendet. Dies wirkt sich auf alle JAAS basierten Identity Provider und den Login auf die Karaf-Konsole aus. Alle bestehenden Benutzerpasswörter können anschließend nicht mehr validiert werden und müssen neu angelegt werden!

    Sollten Sie die alten Benutzerpasswörter weiter verwenden wollen, müssen Sie weiterhin den alten Algorithmus zum Hashen der Passwörter verwenden. Dies wird im Folgenden beschrieben. Wenn Sie den neuen Algorithmus verwenden wollen, müssen Sie die folgenden Schritte nicht befolgen.

    Die Verwendung von schwachen Algorithmen stellt ein potenzielles Sicherheitsrisiko dar.

    Konfiguration über bpc.env (empfohlen)

    Ergänzen Sie die bpc.env um folgende Werte, um den alten Algorithmus beizubehalten.

    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_ENABLED=true
    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_NAME=basic
    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_ALGORITHM=SHA-512
    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_ENCODING=hexadecimal

    Konfiguration über Karaf Konfigurationsdateien

    Ändern Sie in der Konfigurationsdatei [karaf]/etc/org.apache.karaf.jaas.cfg die folgenden Werte. Dadurch wird wieder die vorherige (schwache) Verschlüsselung verwendet.

    encryption.name = basic
    encryption.algorithm = SHA-512

    Existierendes JAAS JDBC

    Die Virtimo JAAS JDBC Implementierung verwendet nun die Passwort-Verschlüsselungseinstellungen der Datei: [karaf]/etc/org.apache.karaf.jaas.cfg. Diese stimmen nicht mit den bisher verwendeten überein.

    Falls also bereits JAAS JDBC verwendet wurde und die bestehenden (schwachen) Hashes weiter verwendet werden sollen, dann bitte folgende Datei anlegen: [karaf]/etc/de.virtimo.bpc.core.auth.jaas.jdbc.cfg

    Folgender Inhalt setzt die frühere (schwache) Konfiguration:

    • bis BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix = {CRYPT}
       encryption.suffix = {CRYPT}

      In der Datenbanktabelle müssen dann leider noch alle Passwort-Hashes mit dem Prefix und Suffix ergänzt werden. Beispiel: PasswortHash{CRYPT}PasswortHash{CRYPT}. Ab der BPC Version 4.0.15 ist diese Anpassung nicht mehr notwendig.

    • ab BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix =
       encryption.suffix =

      Damit werden wie zuvor die Passwörter ohne einen Prefix und Suffix in der Datenbanktabelle abgelegt.

    Um einen sichereren Hash-Algorithmus wie argon2 zu verwenden, müssen alle Passwörter neu erstellt und somit zurückgesetzt werden.

    Nach Anpassung dieser Einstellungen ist der Karaf neu zu starten.

    Betrifft: BPC Core | Dokumentation | Karaf

  • Content Security Policy BPC-7443

    Es wird eine Content Security Policy(CSP) per HTTP Header gesetzt. Dies kann Auswirkungen auf eigene Module, INUBIT WebApps oder integrierte Fremdanwendungen haben. Zum Anpassen der CSP siehe Content Security Policy

Sie sollten die Beschreibungen in diesem Abschnitt genau lesen. Es handelt sich um empfohlene Handlungsanweisungen, die bei einem Update angeraten werden.

  • Relevante Karaf Konfigurationen aus Karaf Ordner "ziehen" BPC-6681

    Eine große Bitte, bei einem Karaf Update nicht einfach alle etc-Dateien aus der alten in die neue Installation kopieren. Dadurch sind dann evtl. neue Karaf Optionen nicht gesetzt und im schlimmsten Fall lässt sich der Karaf nicht starten.

    Und wenn irgendwie möglich, keine [karaf]/etc Dateien manuell ändern und stattdessen die Anpassungen über die bpc.env.sh (Linux/macOS) bzw. bpc.env.cmd (Windows) vornehmen. Das erleichtert die Karaf Updates ungemein und kann in den BPC Versionen >= 3.4 verwendet werden. Siehe dazu Zentrale Konfigurationsdatei.

    Per Werte von etc-Dateien überschreiben können die meisten Anpassungen vorgenommen werden, ohne dass eine etc-Datei editiert werden muss.

    Wenn zum Beispiel der Pfad zu den Keystore und Truststore Dateien anders gesetzt werden soll: Die Festlegung der Pfade befinden sich in der Konfigurationsdatei [karaf]/etc/org.ops4j.pax.web.cfg in den Optionen org.ops4j.pax.web.ssl.keystore und org.ops4j.pax.web.ssl.truststore.

    Um nun die Pfade der beiden Optionen anders zu setzen, können zwei Umgebungsvariablen in der bpc.env.sh hinzugefügt werden:

    export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_KEYSTORE=/opt/bpc.env/ssl/virtimo_keystore.jks
    export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_TRUSTSTORE=/opt/bpc.env/ssl/virtimo_truststore.jks

    Noch ein Beispiel wie in der [karaf]/etc/de.virtimo.bpc.core.cfg die Option de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB gesetzt werden kann:

    export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_MAINTENANCEMODE_FILESYSTEMLIMITINMB=4096

    Eine Einschränkung wird mit dem nächsten Karaf Update behoben. Das Deployverzeichnis ([karaf]/deploy) kann derzeit wegen eines "Bugs" nicht per Umgebungsvariable gesetzt werden. Das betrifft die Option felix.fileinstall.dir in der Konfigurationsdatei [karaf]/etc/org.apache.felix.fileinstall-deploy.cfg.

    Drei Dateien sollten je nach Verwendung kopiert bzw. durch symbolische Links ersetzt werden:

    • [karaf]/etc/users.properties

    • [karaf]/etc/org.ops4j.pax.logging.cfg

    • [karaf]/etc/de.virtimo.bpc.core.auth.jaas.jdbc.queries.cfg

    Dies ist natürlich nur notwendig, wenn diese überhaupt angepasst wurden. Die Optionen in den beiden cfg-Dateien könnten zwar auch über Umgebungsvariablen gesetzt werden, da müssten dann aber einige Umgebungsvariablen gesetzt werden.

    Betrifft: Dokumentation

  • Karaf Update BPC-7374

    Ein Update des Karaf wird aus Gründen der Sicherheit dringend empfohlen.

    Betrifft: BPC Core | Karaf

Verbesserungen

  • Relevante Karaf Konfigurationen aus Karaf Ordner "ziehen" BPC-6681

    Eine große Bitte, bei einem Karaf Update nicht einfach alle etc-Dateien aus der alten in die neue Installation kopieren. Dadurch sind dann evtl. neue Karaf Optionen nicht gesetzt und im schlimmsten Fall lässt sich der Karaf nicht starten.

    Und wenn irgendwie möglich, keine [karaf]/etc Dateien manuell ändern und stattdessen die Anpassungen über die bpc.env.sh (Linux/macOS) bzw. bpc.env.cmd (Windows) vornehmen. Das erleichtert die Karaf Updates ungemein und kann in den BPC Versionen >= 3.4 verwendet werden. Siehe dazu Zentrale Konfigurationsdatei.

    Per Werte von etc-Dateien überschreiben können die meisten Anpassungen vorgenommen werden, ohne dass eine etc-Datei editiert werden muss.

    Wenn zum Beispiel der Pfad zu den Keystore und Truststore Dateien anders gesetzt werden soll: Die Festlegung der Pfade befinden sich in der Konfigurationsdatei [karaf]/etc/org.ops4j.pax.web.cfg in den Optionen org.ops4j.pax.web.ssl.keystore und org.ops4j.pax.web.ssl.truststore.

    Um nun die Pfade der beiden Optionen anders zu setzen, können zwei Umgebungsvariablen in der bpc.env.sh hinzugefügt werden:

    export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_KEYSTORE=/opt/bpc.env/ssl/virtimo_keystore.jks
    export ORG_OPS4J_PAX_WEB_ORG_OPS4J_PAX_WEB_SSL_TRUSTSTORE=/opt/bpc.env/ssl/virtimo_truststore.jks

    Noch ein Beispiel wie in der [karaf]/etc/de.virtimo.bpc.core.cfg die Option de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB gesetzt werden kann:

    export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_MAINTENANCEMODE_FILESYSTEMLIMITINMB=4096

    Eine Einschränkung wird mit dem nächsten Karaf Update behoben. Das Deployverzeichnis ([karaf]/deploy) kann derzeit wegen eines "Bugs" nicht per Umgebungsvariable gesetzt werden. Das betrifft die Option felix.fileinstall.dir in der Konfigurationsdatei [karaf]/etc/org.apache.felix.fileinstall-deploy.cfg.

    Drei Dateien sollten je nach Verwendung kopiert bzw. durch symbolische Links ersetzt werden:

    • [karaf]/etc/users.properties

    • [karaf]/etc/org.ops4j.pax.logging.cfg

    • [karaf]/etc/de.virtimo.bpc.core.auth.jaas.jdbc.queries.cfg

    Dies ist natürlich nur notwendig, wenn diese überhaupt angepasst wurden. Die Optionen in den beiden cfg-Dateien könnten zwar auch über Umgebungsvariablen gesetzt werden, da müssten dann aber einige Umgebungsvariablen gesetzt werden.

    Betrifft: Dokumentation

Security

  • Starke Passwort Verschlüsselung BPC-7390

    Durch das Karaf Update wird nun ein stärkerer Algorithmus zum hashen der Passwörter verwendet. Dies wirkt sich auf alle JAAS basierten Identity Provider und den Login auf die Karaf-Konsole aus. Alle bestehenden Benutzerpasswörter können anschließend nicht mehr validiert werden und müssen neu angelegt werden!

    Sollten Sie die alten Benutzerpasswörter weiter verwenden wollen, müssen Sie weiterhin den alten Algorithmus zum Hashen der Passwörter verwenden. Dies wird im Folgenden beschrieben. Wenn Sie den neuen Algorithmus verwenden wollen, müssen Sie die folgenden Schritte nicht befolgen.

    Die Verwendung von schwachen Algorithmen stellt ein potenzielles Sicherheitsrisiko dar.

    Konfiguration über bpc.env (empfohlen)

    Ergänzen Sie die bpc.env um folgende Werte, um den alten Algorithmus beizubehalten.

    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_ENABLED=true
    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_NAME=basic
    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_ALGORITHM=SHA-512
    export ORG_APACHE_KARAF_JAAS_ENCRYPTION_ENCODING=hexadecimal

    Konfiguration über Karaf Konfigurationsdateien

    Ändern Sie in der Konfigurationsdatei [karaf]/etc/org.apache.karaf.jaas.cfg die folgenden Werte. Dadurch wird wieder die vorherige (schwache) Verschlüsselung verwendet.

    encryption.name = basic
    encryption.algorithm = SHA-512

    Existierendes JAAS JDBC

    Die Virtimo JAAS JDBC Implementierung verwendet nun die Passwort-Verschlüsselungseinstellungen der Datei: [karaf]/etc/org.apache.karaf.jaas.cfg. Diese stimmen nicht mit den bisher verwendeten überein.

    Falls also bereits JAAS JDBC verwendet wurde und die bestehenden (schwachen) Hashes weiter verwendet werden sollen, dann bitte folgende Datei anlegen: [karaf]/etc/de.virtimo.bpc.core.auth.jaas.jdbc.cfg

    Folgender Inhalt setzt die frühere (schwache) Konfiguration:

    • bis BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix = {CRYPT}
       encryption.suffix = {CRYPT}

      In der Datenbanktabelle müssen dann leider noch alle Passwort-Hashes mit dem Prefix und Suffix ergänzt werden. Beispiel: PasswortHash{CRYPT}PasswortHash{CRYPT}. Ab der BPC Version 4.0.15 ist diese Anpassung nicht mehr notwendig.

    • ab BPC 4.0.15

       encryption.enabled = true
       encryption.name = basic
       encryption.algorithm = SHA-512
       encryption.encoding = hexadecimal
       encryption.prefix =
       encryption.suffix =

      Damit werden wie zuvor die Passwörter ohne einen Prefix und Suffix in der Datenbanktabelle abgelegt.

    Um einen sichereren Hash-Algorithmus wie argon2 zu verwenden, müssen alle Passwörter neu erstellt und somit zurückgesetzt werden.

    Nach Anpassung dieser Einstellungen ist der Karaf neu zu starten.

    Betrifft: BPC Core | Dokumentation | Karaf

  • Content Security Policy BPC-7443

    Es wird eine Content Security Policy(CSP) per HTTP Header gesetzt. Dies kann Auswirkungen auf eigene Module, INUBIT WebApps oder integrierte Fremdanwendungen haben. Zum Anpassen der CSP siehe Content Security Policy

Interne Abhängigkeiten / Dependency Updates

  • Update Karaf BPC-6709

    Für dieses BPC Update ist ein Update des Karaf verpflichtend.

    Kunden Themes und eigene BPC Module müssen so angepasst werden, dass der Web-ContextPath und Webapp-Context in der Manifest-Datei zwingend mit einem / beginnen. Um dies zu erreichen, kann in der Regel die Datei build.gradle angepasst werden. Ein Beispiel kann hier eingesehen werden.

    In der Konfigurationsdatei [karaf]/etc/org.ops4j.pax.web.cfg wurden Parameter umbenannt:

    org.ops4j.pax.web.ssl.password -> org.ops4j.pax.web.ssl.keystore.password
    org.ops4j.pax.web.ssl.keypassword -> org.ops4j.pax.web.ssl.key.password
  • Karaf Update BPC-7374

    Ein Update des Karaf wird aus Gründen der Sicherheit dringend empfohlen.

    Betrifft: BPC Core | Karaf

Sonstiges