Administration Changelog
This page lists the changes included in each release that are specifically relevant to administrators. Administrators are defined as individuals who perform updates to the BPC and carry out administrative configuration within the BPC.
For a list of all changes, see Changelog.
BPC 5.0.8
Release Date: 2026-06-29
The following components must be updated with this update: BPC Modules
Improvements
-
Display of Data Management Bundle in Module List BPC-10867
The module is now displayed as a frontend module again. This ensures consistent display.
Re: Karaf | Data Management |
Security
-
Improvements to the Security Cockpit BPC-10893
The display of the Security Cockpit has been improved: - In addition to the score, the total score is also displayed - A link to the corresponding documentation page is available - If the check refers to a module instance, you can navigate directly to it - Text is selectable
In addition, the HTTP proxy check has been adjusted so that it does not check for Basic Authentication, as this is not relevant to the security status of the BPC.
Subject: BPC Core |
Bugs
-
OpenSearch does not start on Windows BPC-11105
A bug in the
opensearch-env.bathas been fixed. -
Fixed an error when configuring OIDC/Keycloak backend Connections with the BPC homepage as the redirect URL BPC-11161
The configuration of OIDC and Keycloak backend Connections failed when the BPC homepage was specified as the redirect URL (post-login or post-logout). The cause was the settings validation, which received an HTTP status code 406 when checking the URL of the BPC homepage. As a result, it was not possible to create new OIDC or Keycloak backend Connections or edit existing ones. New cloud deployments that create backend Connections via Custom Resources were also affected.
This issue has been resolved.
Affects: BPC Core |
BPC 5.0.7
Release Date: 2026-06-01
The following components must be updated with this update: BPC Modules
New Features
-
Extension of the Identity Management UI BPC-10722
The full functionality of the Identity Management user interface is now also available with Keycloak as an identity provider. In addition, the frontend has been expanded to include the tabs “Organizations,” “Roles,” and “Permissions.”
In these tabs, organizations, roles, and permissions can be listed
, created , and deleted .
Furthermore, the users in these groups can be viewed and managed directly.
For organizations and roles (Keycloak as IdP only), role assignments can also be configured.
Further information can be found under Identity Management.
Re: BPC Core |
Miscellaneous
-
Migrating INUBIT Workflows to the BPC 5 Monitor Interface BPC-11084
The INUBIT Workflow package now correctly handles BPC 5 calls.
Most workflows are no longer delivered in a protected state.
BPC 5.0.6
Release Date: 2026-05-22
The following components must be updated with this release: BPC Module | OpenSearch
|
Internal Configuration Update This version includes changes to the BPC’s internal configuration. This affects deployments between BPC instances running different versions. Additionally, extra steps are required when downgrading the BPC. For more information, see the page at Versioning of the Internal BPC Configuration. |
Breaking Changes
|
You should read the descriptions in this section carefully. They may contain instructions that you must follow for an update. |
-
Do not convert attribute names in the payload of Monitor Process Actions to lowercase BPC-10808
The attribute names of the records in the payload of Process Actions and Process Starters with context retain their original format and are no longer converted to lowercase.
Affects: Process Monitoring |
Improvements
-
Do not convert attribute names in the payload of monitor process actions to lowercase BPC-10808
The attribute names of the records in the payload of process actions and process starters with context retain their original format and are no longer converted to lowercase.
Affects: Process Monitoring |
-
Update OpenSearch BPC-10859
Update OpenSearch according to the update instructions
Affects: BPC Core | Process Monitoring | Forms | OpenSearch |
Internal Dependencies / Dependency Updates
-
Update Karaf BPC-10961
This update raises the version of Apache Karaf.
Please update Karaf according to the update instructions.
BPC 5.0.5
Release Date: 2026-03-26
The following components must be updated with this update: BPC Modules
Breaking Changes
|
You should read the descriptions in this section carefully. They may contain instructions that you must follow to perform an update. |
-
Correction to the monitor setting
data_filterBPC-10724Incorrect behavior in the monitor regarding the
data_filtersetting has been fixed: If you used the linkORand had not set a base filter, all records were displayed despite the filter rules.With a
ANDlink, the base filter was negated and combined with the other filter rules via a logicalUND. This was incorrect; the base filter is now no longer negated in this case either, and specifies which documents are generally visible. This means that a data record is visible if it satisfies the base filter OR all session-specific filter rules.Note: If you are using Monitor instances with `
data_filter` in your BPC deployment, please verify that they still function as intended.More details on the “
data_filter” setting can be found here: Restrict the visibility of monitor dataSubject: Process Monitoring | Documentation |
Bugs
-
Correction to the monitor setting
data_filterBPC-10724Incorrect behavior in the monitor regarding the
data_filtersetting has been fixed: If you usedORas a link and did not set a base filter, all records were displayed despite the filter rules.With a
ANDlink, the base filter was negated and combined with the other filter rules using a logicalUND. This was incorrect; the base filter is now no longer negated in this case either, and specifies which documents are generally visible. This means that a record is visible if it meets the criteria of the base filter OR all session-specific filter rules.Note: If you are using Monitor instances with
data_filterin your BPC deployment, please verify that they continue to function as intended.More details on the “
data_filter” setting can be found here: Restrict the visibility of monitor dataSubject: Process Monitoring | Documentation |
BPC 5.0.4
Release Date: 2026-03-16
The following components must be updated with this update: BPC Modules
|
Internal Configuration Update This version includes changes to the BPC’s internal configuration. This affects deployments between BPC instances running different versions. Additionally, extra steps are required when downgrading the BPC. For more information, see the page at Versioning of the Internal BPC Configuration. |
Breaking Changes
|
You should read the descriptions in this section carefully. They may contain instructions that you must follow for an update. |
-
Refactoring OIDC/PKCE Handshake: Switchover to Stateless (Encrypted Cookie) for DoS Prevention BPC-10544
Data used by OIDC providers for login is stored in an encrypted cookie on the client’s device. This prevents system overload caused by a large number of login requests.
For BPC module developers
If you have developed your own
UserFlowIdentityProviderimplementation, you must adapt it. The functionURI createAuthenticationRequestURI(String requestUrl)has been replaced withUserFlowLoginContext createAuthenticationRequestContext(String requestUrl)and now returns not only the redirect URL to the OIDC login but also a cookie containing the login state. This cookie is set by the frontend during a login attempt.For BPC administrators
Install the new modules
bpc-be-core.jarandbpc-fe-core.war. A restart of the BPC/Karaf is required. If the BPC is still unavailable, please delete the directorykaraf/dataand restart Karaf. (You may want to back up your log files first)Subject: BPC Core |
-
Renaming and merging monitor settings for download via HTTP proxy connections BPC-10572
In Process Monitoring, the settings
inubit_referenceEndpoint,inubit_proxyId, andinutbit_baseUrlwere consolidated for download via an HTTP proxy and renamed tohttpProxy_referenceEndpointto clarify that they can be downloaded via a generic HTTP proxy connection. The settinginubit_dbTablePrefixwas removed because it was only used for legacy scenarios.Re: BPC Core | Process Monitoring | Documentation |
-
WebTSM: Restrict Access to REST Endpoints BPC-10655
Timeseries Management Administrators who do not belong to the "bpcadmin" role and previously only had the "webtsm_admin" permission now need the "webtsm_edit" permission instead. A Timeseries Management Administrator could also be assigned the “WEBTSM_ADMIN” role instead of the specific permission. This would also be more future-proof if, for example, in subsequent versions, finely granular permissions were defined for the endpoints instead of the “webtsm_edit” permission.
Re: WebTSM |
-
Data Management Module Backend Removed BPC-10696
The Data Management Module no longer has a standalone backend component (
bpc-be-vam.jar). It must be removed during the update.To perform the update, first remove
bpc-be-vam.jarand then install the updatedbpc-fe-vam.war.The Data Management Module has been incorporated into the regular release cycle.
Re: Karaf | Data Management |
-
Remove the baseUrl setting BPC-9924
The setting
baseUrlis no longer needed, as the value (cxf) is a static part of the API URL and will not be changed.Not to be confused with
bpcBaseUrl. This setting remains unchanged.Re: BPC Core |
-
Index export for new import function BPC-10386
The format for index imports has been changed to a ZIP-based format. This is the same format that our OpenSearch tool uses to import and export indexes. In the administration interface under Core Services → Indexes , you can download such index export files.
Note: If you are using the index import functionality for an installation with a preconfigured BPC, the export file must be regenerated.
See also Installation with a preconfigured BPC.
Subject: BPC Core | Process Monitoring | Documentation |
New Features
-
File Storage Download in the Process Monitor BPC-10560
The File Storage Log Service integration has been adapted for the Process Monitor so that it can offer these files for download and viewing: To achieve this, the Log Service creates two additional fields with the suffixes
_filenameand_contentTypefor fields of typefile-storagewhen logging to OpenSearch and relational databases.Files from File Storage can now also be retrieved in the Process Monitor.
-
If you want to display files from file storage in the monitor and do not route these downloads through the BPC, you must adjust the CSP and CORS settings. More details can be found at File Attachments.
-
If you have configured Log Service instances that use fields of the type
file-storage, then the corresponding index should be reindexed.
Subject: BPC Core | Process Monitoring | Documentation |
-
-
Index Export for New Import Function BPC-10386
The format for index imports has been changed to a ZIP-based format. This is the same format that our OpenSearch tool uses to import and export indexes. In the administration interface under Core Services → Indexes , you can download such index export files.
Note: If you are using the index import functionality for an installation with preconfigured BPC, the export file must be recreated.
See also Installation with a preconfigured BPC.
Subject: BPC Core | Process Monitoring | Documentation |
Improvements
-
Monitor File Download BPC-5775
The configuration of file attachments and downloads in the BPC Monitor has been restructured:
-
In a monitor (in both the parent and child data), it is now possible to define multiple columns that contain file attachments.
-
The setting (
column_file) for the column containing the file content or file reference is therefore no longer required. Instead, a file attachment is configured in the column configuration of the parent data (column_config) or child data (column_historyConfig). To do this, an entryfileConfigis created there, which specifies the filename column and the content-type column:
{ ... "dataIndex": "datei", "text": "Datei", ... "fileConfig": { "columnFileName": "filename", "columnContentType": "contentType" } }-
In the configuration object
fileConfig, the fielddataSourcecan optionally be used to specify the source (OpenSearch, HTTP proxy) from which the files should be retrieved. -
Columns of the type “Attachment Column” can now also be used in child grids.
-
Existing monitor instances will be adapted to the new configuration via a migration.
-
In the Jetty configuration provided by the installer, the CSP header has been adjusted so that images can be displayed in the monitor.
Further information can be found here: Configuring Monitor Columns and File Attachments.
Note: Monitor instances previously used the setting `
column_mimetype` to specify the column name, which refers to the file content type. However, the column name `contentType` was used inconsistently in the backend. Therefore, the setting `column_mimetype` was ignored during the migration of the instances. If this setting was used, please check the corresponding monitor instance and adjust it if necessary.Subject: BPC Core | Process Monitoring | Documentation | Karaf |
-
-
WebTSM Cache Optimization BPC-10517
-
Incremental Update
The "module_apis" settingcache_refresh(specified in minutes; 60 minutes is the default) determines the intervals at which the system checks for new, updated, or deleted time series. Only data that falls within the result set since the date of the last synchronization is taken into account. -
Time of full update
The full update of the time seriescaches was previously performed via themodule_apissettingcache_refresh_full. By default, this was performed every 24 hours, starting from the time the WebTSM module was launched. This option has been replaced bycache_refresh_full_cron_expression. Here, a cronexpression can be specified here in the format used by the Quartz scheduler. For example, the time series cache can be rebuilt every Sunday at 9:00 p.m. (0 0 21 ? * Sun). If this option is not set, a full update will not be performed. -
Performing a Full Update
Previously, during a full update, via a SINGLE request to WebTSM, all time series were read and stored locally in BPC (cache). This option remains the default for the full update. However, this can now be switched to reading the time series page-by-page or block-by-block. To do this, set the mode via themodule_apissettingcache_refresh_full_default_modeto:FullorFullPaginated. To determine which full refresh mode places less load on WebTSM, both can be manually started for testing purposes via the following WebTSM endpoints: -
The following
module_apissettings can also affect synchronization:-
cache_refresh_paginated_fetch_block_size(5000) = Retrieves time series in pages. For each request, WebTSM retrieves this number of time series until all existing time series have been processed. Used only ifFullPaginatedis set as the mode. -
timeout(60) = This already existed. It is the query timeout used only for the full update for that ONE request to WebTSM. -
timeout_general(2) = The query timeout used for all other accesses to WebTSM. -
cache_refresh_opensearch_bulk_block_size_deleted(2500) = During incremental synchronization, delete commands are sent to OpenSearch in these bulk sizes. If the value is too high, OutOfMemory errors may occur. If the value is too low, too many HTTP requests will be sent to OpenSearch. This can have a negative impact on performance. -
cache_refresh_opensearch_bulk_block_size_changed(2500) = Time series data is transferred to OpenSearch in these bulk sizes. If the value is too high, OutOfMemory errors may occur. If the value is too low, too many HTTP requests will be sent to OpenSearch. This can negatively impact performance.The values in parentheses are the default settings
-
Affects: BPC Core |
-
-
Refactoring OIDC/PKCE Handshake: Switch to Stateless (Encrypted Cookie) for DoS Prevention BPC-10544
Data used by OIDC providers for login is stored in an encrypted cookie on the client side. This prevents system overload caused by a large number of login requests.
For BPC module developers
If you have developed your own
UserFlowIdentityProviderimplementation, you must adapt it. The functionURI createAuthenticationRequestURI(String requestUrl)has been replaced withUserFlowLoginContext createAuthenticationRequestContext(String requestUrl)and now returns not only the redirect URL to the OIDC login but also a cookie containing the login state. This cookie is set by the frontend during a login attempt.For BPC administrators
Install the new modules
bpc-be-core.jarandbpc-fe-core.war. A restart of the BPC/Karaf is required. If the BPC is still unavailable, please delete the directorykaraf/dataand restart Karaf. (You may want to back up your log files first)Subject: BPC Core |
-
Renaming and merging monitor settings for download via HTTP proxy connections BPC-10572
In Process Monitoring, the settings
inubit_referenceEndpointandinubit_proxyId, andinutbit_baseUrlfor downloading via an HTTP proxy have been consolidated and renamed tohttpProxy_referenceEndpointto clarify the possibility of downloading via a generic HTTP proxy connection. The settinginubit_dbTablePrefixhas been removed, as it was only used for legacy scenarios.Re: BPC Core | Process Monitoring | Documentation |
-
WebTSM: Restrict Access to REST Endpoints BPC-10655
Timeseries Management Administrators who do not belong to the "bpcadmin" role and previously only had the "webtsm_admin" permission now need the "webtsm_edit" permission instead. A Timeseries Management administrator could also be assigned the “WEBTSM_ADMIN” role instead of the specific permission. This would also be more future-proof if, for example, subsequent versions were to define fine-grained permissions for the endpoints instead of the “webtsm_edit” permission.
Re: WebTSM |
-
Remove the "baseUrl" setting BPC-9924
The "
baseUrl" setting is removed because the value (cxf) is a static part of the API URL and will not be changed.Not to be confused with
bpcBaseUrl. This setting remains unchanged.Re: BPC Core |
Miscellaneous
-
Support for Postgres JSONB columns in replication BPC-10555
Subject: BPC Core |
-
Data Management Module Backend Removed BPC-10696
The Data Management Module does not have a standalone backend component (
bpc-be-vam.jar) . It must be removed during the update.To perform the update, first remove
bpc-be-vam.jarand then install the updatedbpc-fe-vam.war.The Data Management Module has been incorporated into the regular release cycle.
Re: Karaf | Data Management |
BPC 5.0.3
Release Date: 2026-01-23
The following components must be updated with this update: BPC Modules
New Features
-
Prometheus Support via OpenSearch Metrics BPC-10297
The prometheus-exporter plugin is now included with OpenSearch by default.
Re: OpenSearch |
Improvements
-
Introduction of OIDC Access Token Authentication for the BPC API BPC-9610
The BPC API now also offers authentication via access tokens issued by the configured OIDC provider. Authentication via access tokens must be explicitly enabled in the identity provider configuration. In addition to validating the signature and validity of the access token, you can optionally use the OIDC provider’s introspection endpoint, which also checks whether the session has been terminated (token revocation). Further information can be found here: Access Tokens and Keycloak as an Identity Provider.
Subject: BPC Core | Documentation |
BPC 5.0.2
Release Date: 2026-01-15
The following components must be updated with this release: BPC Modules | Karaf
BPC 5.0.1
Release Date: 2025-11-24
The following components must be updated with this update: BPC Modules
Breaking Changes
|
You should read the descriptions in this section carefully. They may contain instructions you need to follow to update. |
-
HttpProxy appends '/' to BaseUrl BPC-8832
Check the HTTP proxy configurations and adjust them if necessary. Previously, a '/' was always appended to the configured connection URL. This is no longer the case. If your HTTP proxy destination requires this and the URL is currently configured without a '/' at the end, please adjust it accordingly.
Re: BPC Core |
Improvements
-
Support for OIDC login with PKCE enabled BPC-8198
BPC now supports PKCE (Proof Key for Code Exchange) for OpenID Connect and Keycloak identity providers to enable a hardened login flow. To enable this, you must set the PKCE method in the Identity Provider backend Connection and, if necessary, configure this in your Keycloak client.
Subject: BPC Core | Documentation |
-
Reindexing does not leave behind old indexes BPC-10192
During reindexing, the old index is deleted instead of being closed as before. The user is prompted to create a backup before reindexing.
Subject: BPC Core | Documentation |
-
Exceptions occur when uninstalling bundles BPC-10228
Subject: BPC Core |
Security
-
mssql-jdbc:12.6.1 | CVE-2025-59250 BPC-10266
The driver provided via
pax-jdbc-mssqlis no longer included in the release.Make sure that the MSSQL driver you are using is at least the following version:
10.2.4, 11.2.4, 12.2.1, 12.6.5, 12.8.2, 12.10.2, 13.2.1If an older driver is being used, it should be replaced. Remove the old driver by deleting it from the deploy directory or by uninstalling
pax-jdbc-mssqlor the driver itself. Then install an up-to-date driver (without the " `pax-jdbc-mssql`" feature). See also: DatabasesSubject: Documentation | Karaf |
Bugs
-
HttpProxy appends '/' to BaseUrl BPC-8832
Check the HTTP proxy configurations and adjust them if necessary. Previously, a '/' was always appended to the configured connection URL. This is no longer the case. If your HTTP proxy destination requires this and the URL is currently configured without a '/' at the end, please adjust it accordingly.
Re: BPC Core |
-
Error during index migration BPC-8989
If an error occurs during index migration, the index newly created for the migration is removed to prevent subsequent errors or to revert to a stable state.
Subject: BPC Core |
BPC 5.0.0
Release Date: 2025-10-24
The following components must be updated with this release: BPC Module | Karaf | OpenSearch | Java
|
Internal Configuration Update This version includes changes to the internal configuration of the BPC. This affects deployments between BPC instances running different versions. Additionally, extra steps are required when downgrading the BPC. For more information, see the page Versioning of the Internal BPC Configuration. |
Breaking Changes
|
You should read the descriptions in this section carefully. They may contain instructions that you must follow for an update. |
-
Restriction of SSH Access BPC-8253
Effective immediately, access to Karaf via SSH connections to the host
localhostis restricted by default. To enable access via external connections, use the central configuration file. See Karaf SSH Access.Subject: Documentation | Karaf |
-
OpenSearch access is now only available via de.Virtimo.BPC.core.opensearch.hosts BPC-9246
Connections to OpenSearch are now configured exclusively via
de.virtimo.bpc.core.opensearch.hosts. When updating from an older version, you must add the entryde.virtimo.bpc.core.opensearch.hoststo the configuration filekaraf/etc/de.virtimo.bpc.core.cfg. Additionally, it is recommended to to add the following lines to the central configuration file:export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=$(($PORT_OFFSET + 9200)) export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS="https://localhost:$DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT"or
SET /a DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=%PORT_OFFSET% + 9200 SET DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS=https://localhost:%DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT%(using https://localhost:9200 as an example here). You can use the files from the download file server as a guide here.
Subject: BPC Core | Documentation |
-
Java JDK 21 BPC-9312
Java 21 is now required.
Re:
-
Metrics Adjustment BPC-9440
These metrics have been renamed:
-
bpc_es_bpc_plugin_status_websocket → bpc_os_bpc_plugin_status_websocket
-
bpc_es_bpc_plugin_status_plugin → bpc_os_bpc_plugin_status_plugto
Subject: BPC Core | Documentation |
-
-
Support for INUBIT Identity Provider removed BPC-9482
INUBIT is no longer supported as an Identity Provider.
Re: BPC Core | Documentation |
-
Splitting the Identity Provider configuration from JSON into separate settings BPC-9515
For Identity Providers (Backend Connections), a large portion was previously configured via a single JSON setting. This has been split into individual settings. Existing configurations are migrated automatically. If older deployment exports of Identity Provider components are being used, it is best to recreate them.
Affects: BPC Core | Documentation |
-
Status API: status/server/{serverUUID} removed BPC-9654
The Status API endpoint
/cxf/bpc-core/status/server/{serverUUID}, which queried the status of a remote BPC, has been removed.Re: BPC Core | Documentation |
-
Harmonization of Interfaces for Various Monitor Functions BPC-9770
The query string parameters
gridId,gridExtId,multiRecords,buttonId, and the form parametertablePrefixhave been removed from process action requests. To send additional context or configuration information, “Process Action Metadata” can be configured in the monitor settings.In process starters, the XML that was sent along with the request has been replaced by JSON. As a result,
portletArchiveName,operation,mandant,gridID,key,bpcModule,bpcModuleInstanceIdandcustomhave been removed.keyhas been uniformly renamed toid. Additional context or configuration information can be reliably included using the "metadata" configuration in the process starter configuration within the monitor settings. The process parameters are grouped under config.parameters in the request payload. File uploads includefilename,type, anddata. Grids contain a list of their records.For Change State,
tablePrefix,mandant, andchangeStatusBox_<Spaltenname>have been removed.commandhas been uniformly renamed totypeand is assigned the value "statusChange".columnsstringhas been renamed tocolumn.newStatusCombo_<Spaltenname>has been renamed tonewStatus.commentfieldhas been renamed tocomment.childStatusis no longer set to "Info" by default in the Change State configuration and, if configured, will be migrated to metadata. Additional information can be passed in the "metadata" object in the Change State configuration.The unused settings
inubit_aperakEndPoint,inubit_dbGridId, andinubit_pmMandanthave been removed. The settingsinubit_actionEndpoint,inubit_changeStateEndpoint, andinubit_VpsEndpointhave been replaced byactionEndpointProcessor,changeStateEndpointProcessor, andvpsEndpointProcessor.Affects: BPC Core | Process Monitoring | Documentation |
-
Restricted Forwarding of Session Information BPC-9925
HTTP proxy backend Connections and flow Connections now always filter the session cookie so that a recipient cannot make requests in the BPC within the user’s context. The setting
filterSessionCookieis therefore no longer needed. Instead, the new settingsendSessionIdallows you to include the user’s session ID, which can be verified at the endpointGET /cxf/bpc-core/authentication/session/{sessionid}. When the settinginjectUserSessionJWTis enabled, a self-generated JWT is no longer sent; instead, the signed ID token from the OpenID Connect provider is sent. For more details, see Backend Connections - HTTP Proxy.Affects: BPC Core | Documentation |
-
HTTP Proxy filters X-APIKey header BPC-10011
HTTP calls made via an HTTP proxy or Flow connection filter out the BPC API key header (
X-APIKey). Note: This could affect existing BPC configurations if, for example, an INUBIT process is triggered that uses the included APIkey to make calls to the BPC API. (In this case, it would be better to store a fixed BPC API key within the INUBIT process.)Subject: BPC Core | Documentation |
-
Renaming "childs" to "children" in the Log Service Payload BPC-8478
Users of the Log Service API must replace all instances of
childswithchildrenin their POST data. During a transition period,childscan still be used for incoming requests. This backward compatibility will be removed in a future release. Please also note that the responses from the Log Service endpoints now containchildreninstead ofchilds.Subject: BPC Core |
Recommended Adjustments
You should read the descriptions in this section carefully. These are recommended actions to take during an update.
-
Move OpenSearch Configuration BPC-9106
The OpenSearch configuration directory can be configured via
OPENSEARCH_PATH_CONF. This allows you to move the configuration directory out of the OpenSearch directory. As a result, it will no longer be overwritten during an OpenSearch update. See also Moving the OpenSearch Configuration.In the bundle installation file, BPC is now shipped with a configuration directory moved to
INSTALLATIONSVERZEICHNIS/opensearch_config.It is recommended to set OPENSEARCH_PATH_CONF in BPC.env.
Subject: Documentation | OpenSearch |
New Features
-
Action for all records BPC-1088
A new action type, "bulkAction," has been added to allow actions to be performed on all records. See Bulk Actions
Re: BPC Core | Process Monitoring | Documentation |
-
Easy linking of monitor actions to IGUASU processors BPC-6260
If IGUASU is correctly integrated via the Flow module, available processors can be easily selected via the Monitor Actions configuration interface.
-
Configuration Interface for Identity Providers BPC-7069
A configuration interface for identity providers is now available.
Re: BPC Core |
-
OpenAPI Specification for REST API BPC-8513
Subject: BPC Core | Documentation | Forms | Karaf |
-
BPC Deep Links via LogService BPC-8798
You can use the Log Service API to be redirected directly to the Log Service configuration or to connected monitors. There are two new LogService endpoints for this purpose, which redirect the user to the corresponding BPC pages when called:
-
to open the admin page of a LogService instance:
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/logservice -
to open a monitor (without filters)
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>/open/monitor -
to open a monitor (with filter)
http://<bpc_host>:<bpc_port>/cxf/bpc-logservice/<logservice-instance-id>>/open/monitor?instance.id=foobar
See also API documentation: Log Service API
Subject: BPC Core | Documentation |
-
-
Reference in the audit log BPC-8824
It is now possible to include references to external resources when writing audit information. For example, you can reference the IGUASU instance that generated the entry.
Subject: BPC Core | Documentation |
-
SQL Query Instead of Table Names as a Source for Replication BPC-9063
Replication now supports entering an SQL query directly as an alternative to existing database tables/views.
See also
sourceCommonTableExpressionQueryin ReplicationSubject: BPC Core | Documentation |
Improvements
-
REST API: Implement adaptive authentication response (401 vs. Keycloak Redirect) based on the Accept header BPC-7723
BPC API requests made via a web browser now redirect to Keycloak (or another OIDC UserFlowIdentityProvider) if authentication is missing. After logging in, the user is redirected to the original API endpoint.
Re: BPC Core |
-
Prometheus Metric: BPC Status (Overall status of all BPC modules) BPC-8904
_
_Re: BPC Core | Documentation | -
OpenSearch setting for moving shards to other nodes when disk space is low BPC-9011
If free disk space falls below defined thresholds, shards are distributed to other nodes. Indices may also be set to read-only to prevent the disk from filling up.
The value of `
cluster.routing.allocation.disk.threshold_enabled` is now `true`. This corresponds to the OpenSearch default value.Re: OpenSearch |
-
Move OpenSearch configuration BPC-9106
The OpenSearch configuration directory can be configured via
OPENSEARCH_PATH_CONF. This allows you to move the configuration directory out of the OpenSearch directory. As a result, you will no longer overwrite it during an OpenSearch update. See also Moving the OpenSearch Configuration.The bundle installation file now ships with BPC using a configuration directory moved to
INSTALLATIONSVERZEICHNIS/opensearch_config.It is recommended to set OPENSEARCH_PATH_CONF in BPC.env.
Subject: Documentation | OpenSearch |
-
OpenSearch access now only via de.Virtimo.BPC.core.opensearch.hosts BPC-9246
Connections to OpenSearch are now configured exclusively via
de.virtimo.bpc.core.opensearch.hosts. When updating from an older version, you must add the entryde.virtimo.bpc.core.opensearch.hoststo the configuration filekaraf/etc/de.virtimo.bpc.core.cfg. Additionally, it is recommended to to add the following lines to the central configuration file: `export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=$(($PORT_OFFSET + 9200)) export DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS="https://localhost:$DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT"or
SET /a DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT=%PORT_OFFSET% + 9200 SET DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_HOSTS=https://localhost:%DE_VIRTIMO_BPC_CORE_DE_VIRTIMO_BPC_CORE_OPENSEARCH_PORT%(using https://localhost:9200 as an example here). You can use the files from the download file server as a guide here.
Subject: BPC Core | Documentation |
-
Adjustment of Metrics BPC-9440
These metrics have been renamed:
-
bpc_es_bpc_plugin_status_websocket → bpc_os_bpc_plugin_status_websocket
-
bpc_es_bpc_plugin_status_plugin → bpc_os_bpc_plugin_status_plugin
Affects: BPC Core | Documentation |
-
-
Splitting the Identity Provider Configuration from JSON into Separate Settings BPC-9515
For Identity Providers (Backend Connections), a large portion was previously configured via a single JSON setting. This has been split into individual settings. Existing configurations will be migrated automatically. If older deployment exports of Identity Provider components are being used, it is best to recreate them.
Affects: BPC Core | Documentation |
-
Status API: status/server/{serverUUID} removed BPC-9654
The Status API endpoint
/cxf/bpc-core/status/server/{serverUUID}, which queried the status of a remote BPC, has been removed.Re: BPC Core | Documentation |
-
Target process can be configured in the process starter plugin BPC-9728
The plugin can now configure a process that is displayed immediately upon triggering. In addition, the text and icon can now be freely configured. See also Process Starter Plugin
Re: Process Monitoring | Documentation |
-
Enabling grouping in bpcConfigSettings BPC-9737
The option to group settings is now enabled by default. We recommend using this view, as it displays the settings in a shared context.
Re: BPC Core |
-
Harmonization of Interfaces for Various Monitor Functions BPC-9770
The query string parameters
gridId,gridExtId,multiRecords,buttonId, and the form parametertablePrefixhave been removed from process action requests. To send additional context or configuration information, "Process Action Metadata" can be configured in the monitor settings.In process starters, the XML that was sent along with the request has been replaced by JSON. As a result,
portletArchiveName,operation,mandant,gridID,key,bpcModule,bpcModuleInstanceId, andcustomhave been removed.keyhas been uniformly renamed toid. Additional context or configuration information can be reliably included by using the "metadata" configuration in the process starter settings within the monitor settings. The process parameters can be found grouped underconfig.parametersin the request payload. File uploads contain `filename. Grids contain a list of their records. `, ` `type`, and ` `data` For Change State,
tablePrefix,mandant, andchangeStatusBox_<Spaltenname>have been removed.commandhas been uniformly renamed totypeand is assigned the value "statusChange".columnsstringhas been renamed tocolumn.newStatusCombo_<Spaltenname>has been renamed tonewStatus.commentfieldhas been renamed tocomment.childStatusis no longer set to "Info" by default in the Change State configuration and, if configured, will be migrated to metadata. Additional information can be passed in the "metadata" object in the Change State configuration.The unused settings
inubit_aperakEndPoint,inubit_dbGridId, andinubit_pmMandanthave been removed. The settingsinubit_actionEndpoint,inubit_changeStateEndpoint, andinubit_VpsEndpointhave been replaced byactionEndpointProcessor,changeStateEndpointProcessor, andvpsEndpointProcessor.Subject: BPC Core | Process Monitoring | Documentation |
-
Renaming in Log Service: Settings with "Elasticsearch" in the name BPC-9813
Subject: BPC Core |
-
Optimization of Boolean Editing in Tables BPC-9968
For Boolean values in the settings tables, a combo box is no longer displayed; instead, only the checkbox with the truth value appears. The value can be changed by clicking, pressing the spacebar, or pressing Enter.
Affects: BPC Core |
-
Renaming "childs" to "children" in the Log Service Payload BPC-8478
Users of the Log Service API must replace all instances of
childswithchildrenin their POST data. During a transition period,childsmay still be used for incoming requests. This backward compatibility will be removed in a future release. Please also note that the responses from the Log Service endpoints now containchildreninstead ofchilds.Affects: BPC Core |
Security
-
Restriction of SSH Access BPC-8253
By default, access to Karaf via SSHconnections to the host
localhost. To enable access via external connections, use the central configuration file. See Karaf SSH Access.Subject: Documentation | Karaf |
-
Filter session cookie content from log files BPC-9533
The logging configuration has been changed so that session tokens are masked. For new Karaf installations, this happens automatically. For existing installations, please update the configuration file
[KARAF]/etc/org.ops4j.pax.logging.cfg. Replace the old linelog4j2.maskpasswords.pattern = %replace{${log4j2.pattern}}{(password=[^\\s,]+)|("password"\\s*:\\s*"\\w+")}*{}*with the following lines:
# Chained replacement patterns to mask sensitive information # Filter out UUIDs as these are used as session cookies (keycloak+oidc) log4j2.maskuuids.pattern = %replace{${log4j2.pattern}}{(?i)([a-f0-9]{4})[a-f0-9]{4}(-[a-f0-9]{4}){3}-[a-f0-9]{8}(([a-f0-9]{4}))(?-i)}{$1****-****-****-**-*****$3*} # Filter out JWT tokens that might contain session IDs log4j2.maskjwt.pattern = %replace{${log4j2.maskuuids.pattern}}{ey[\\w-]+\\.ey[\\w-]+\\.[\\w-]+}*{(JWT)}* log4j2.maskunsecuredjwt.pattern = %replace{${log4j2.maskjwt.pattern}}{ey[\\w-]+\\.ey[\\w-]+\\.}*{(JWT)}* # Filter out 256-bit (64 hex digits) UUIDs used for Karaf session cookies and API keys log4j2.maskkarafsessioncookie.pattern = %replace{${log4j2.maskunsecuredjwt.pattern}}{[0-9a-fA-F]{64}}*{}* # Filter out passwords log4j2.maskpasswords.pattern = %replace{${log4j2.maskkarafsessioncookie.pattern}}{(password=[^\\s,]+)|("password"\\s*:\\s*"\\w+")}*{}*Since session tokens in Keycloak and OIDC are UUIDs that are also used elsewhere, we log the first and last four characters here.
Subject: BPC Core | Documentation | Karaf |
-
Restricted Forwarding of Session Information BPC-9925
HTTP proxy backend Connections and flow Connections now always filter the session cookie to prevent a recipient from making requests in the BPC within the user’s context. The setting `
filterSessionCookie` is therefore no longer needed. Instead, the new setting `sendSessionId` allows you to include the user’s session ID, which can be verified at the endpoint `GET /cxf/bpc-core/authentication/session/{sessionid}. When the setting ` `injectUserSessionJWT` is enabled, a self-generated JWT is no longer sent; instead, the signed ID token from the OpenID Connect provider is sent. For more details, see Backend Connections - HTTP Proxy.Affects: BPC Core | Documentation |
-
HTTP proxy filters X-APIKey header BPC-10011
HTTP calls made via an HTTP proxy or Flow connection filter out the BPC API key header (
X-APIKey). Note: This could affect existing BPC configurations if, for example, an INUBIT process is triggered that in turn makes calls to the BPC API using the API key provided. (In this case, it would be better to store a fixed BPC API key within the INUBIT process.)Affects: BPC Core | Documentation |
-
Changing the default value for filterSessionCookie to true BPC-9926
For new backend Connections of the HTTP Proxy and Flow types, the " Filter BPC Session " option is enabled by default.
Affects: BPC Core | Documentation |
Internal Dependencies / Dependency Updates
-
Java JDK 21 BPC-9312
Java 21 is now required.
Affects:
-
Update OpenSearch to 3.2 BPC-9609
If the BPC was initially installed with a version of OpenSearch instead of Elasticsearch, then the
[bpc]/opensearch_datadirectory can be used as-is.If not, the indices must be migrated first.
Re: BPC Core | Process Monitoring | Data Analysis | Documentation | Forms | Karaf | OpenSearch |
-
Karaf Update BPC-9960
This update upgrades the Karaf version to 4.4.8. It is necessary to update the modules
bpc-be-core,bpc-be-analysis,bpc-be-forms, andbpc-be-monitor.For BPC module developers
With the updated Karaf, we are shipping CXF 3.6.8 instead of 3.6.7, which provides Jackson version 2.19.2.
Please update the CXF version (3.6.8) and Jackson version (2.19.2) in your
pom.xml. To do this, check whether you have animport packagestatement for this version. This must be added or updated if you use Jackson functions such as the `ObjectMapper` class.<Import-Package> ... com.fasterxml.jackson.*;version="[2.17.2,3.0.0)", ... </Import-Package>Re: BPC Core | Process Monitoring | Data Analysis | Documentation | Forms | Karaf |
Miscellaneous
-
Support for INUBIT Identity Provider Removed BPC-9482
INUBIT is no longer supported as an identity provider.
Subject: BPC Core | Documentation |
Overview of OpenSearch Updates
An update to OpenSearch was performed in the following BPC versions.
Overview of Updates to the Internal BPC Configuration
An update to the internal BPC configuration was performed in the following BPC versions.