Keycloak24 Migration
-
Database Backward Compatibility is not supported on downgrading Keycloak from higher to lower version. Before upgrading Keycloak, make sure you have a database backup.
-
IDP 5.x.x exclusively supports only AST-based features and does not support SSMS. Therefore, all custom IDP features related to SSMS have been removed.
-
If the KOBIL AST Header to Session authenticator is included in any authentication flow, it triggers an AST verification call, which may cause blockers in subsequent authenticators within the flow.
Pre-requisites
-
In version 5.X.X, IDP continues to support PostgreSQL and Oracle databases, while phasing out support for MS SQL and MySQL.
-
The following versions of Dart Wrapper are required for compatibility of token exchange functionality in IDP5:
- Master Controller: 162.1.0 or later
- MC Dart Wrapper: 72.2.0 or later
- MC iOS Wrapper: 166.2.0 or later
- MC Android Wrapper: 159.2.0 or later
-
The SCP Connector version should be 1.8.0 or later to ensure successful migration of identity user changes in SCP and MPay services for IDP 5 or higher versions.
-
Migration to IDP-5.1.0 cannot be done as a rolling update as it comes with a major update of underlying Keycloak, which does not support such. To deploy a version 5.x.x, the pods need to be scaled down to 0, the image should be updated, and then the replicas can be scaled back up one by one.
-
A new environment variable
AST_SCOPE_CLIENTS
has been introduced to automate the addition of the scopeast
containing the AST Token mapper to all the clients mentioned in this variable when a new tenant is created. (Eg: AST_SCOPE_CLIENTS= ClientID1, ClientID2). Clients that require AST Claims to be part of the IDP token (AST Client Id and MLoA based ACR and AMR in the token and Response data in Token Endpoint) require this scope. -
Ensure to switch off Display client on screen when creating a client for a miniapp from Smart-Dashboard. If enabled, the client name will be visible on the console screen.
For those migrating from KC19 to KC23, please follow the necessary migration steps. Refer to the previous migration document for more detailed information: keycloak23 migration documentation
Core Highlights
-
Keycloak has been upgraded from version
23.0.4
to24.0.5
. -
Introduced an Import Localization tab under Kobil Settings. Users can select a language from the default list supported by Keycloak, import a localization JSON file, and verify it in the Localization tab.
-
Added support to prevent the removal of root user attributes (e.g: username, email, first name, last name) when updating user attributes via the Update user API, even if not all attributes are provided. Also, read-only attributes cannot be modified via the Kobil Extensions API.
-
The status field in the response body for the
DELETE USER FROM GROUP
API has been updated. Previously, it returned Success, but it is now correctly updated to return OK for successful executions. The updated response body is mentioned below- Endpoint:
/realms/{tenantId}/v3_user/{userId}/group
- Method: DELETE
- Response Body:
-
Status code: 200
{
"message": "User group removed successfully",
"status": "OK",
"subSystem": 5
}
-
- Endpoint:
-
Renamed authenticators from BDDK to KSSIDP:
- KOBIL - BDDK Register Password → KOBIL - KSSIDP Register Password
- KOBIL - BDDK Change Password → KOBIL - KSSIDP Change Password
- KOBIL - BDDK Forgot Password → KOBIL - KSSIDP Forgot Password
-
**
keycloak-metrics-spi
**library is integrated as a project dependency and will be retrieved from KOBIL Nexus.
Removed and Deprecated features`
-
Deprecated the
KOBIL Login authenticator
in version 5.1.0, which provided 1FA authentication with the Kobilv2 theme and SSMS support. Since multiple 1FA authenticators are available in the IDP for username/password authentication, this authenticator is no longer necessary. -
Deprecated the KOBIL Create SSMS User, Account - KOBIL Manage Devices, KOBIL mTAN Confirmation authenticators in version 5.1.0.
-
Removed the unused authenticator configuration for Display User Identity Attribute set to First and Last Name from the KOBIL Change Email authenticator.
-
Removed all the legacy cloud connector code and SSMS-based authenticators from previous versions.
-
Removed the
kobil-module-dependencies
strategy to simplify version management. All transitive dependencies are assembled into the outermost JARs for services and extensions.