We are very proud to announce Topicus KeyHub 39. A major overhaul of our provisioning engine brings great improvements to the predictability of all account provisioning, which is essential for IGA. OAuth2 clients are now scoped to organisational units. Finally, we've released a new SDK for Dart. As always, we also included a great number of smaller improvements and fixes.
Identity Lifecycle Management and Provisioning
In our continuous effort to transform Topicus KeyHub into a full IGA suite, this releases brings many large improvements to access profiles and account provisioning. The most noticeable change for the majority of our existing users is the addition of a whole new chapter in the user manual describing the access profiles.
The gap between access profiles and groups was bridged by adding groups to access profiles, smoothing the request flow for users. Not as visible, but certainly not less important, a lot has changed under the hood related to account provisioning. Many synchronization flows were formalized and made to operate much more reliable. Also, it is now possible to let Topicus KeyHub manage the entire lifecycle of accounts in the source directory, from creation to deletion.
-
TKH-1878Searching on LDAP and Active Directory now uses pagination to support very large data sets. -
TKH-3063Business rules can now be configured to automatically add users to access profiles and to automatically activate accounts. -
TKH-3108The code to activate and deactivate service accounts was improved significantly. -
TKH-3133When displaying an SCIM system, tokens or passwords are no longer shown. -
TKH-3148Verbose logging for provisioning now includes the name of the method to make it easier to find specific log statements. -
TKH-3154The manual was updated to include 'Accounts writeable' for Azure source directory provisioning. -
TKH-3155The group overview on a linked system now shows if provisioning is enabled for groups. -
TKH-3167A new chapter was added to the manual for access profiles. -
TKH-3175When removing a linked system, the user now has various options to leave provisioned accounts on the system as-is or remove them as the system is removed from KeyHub. -
TKH-3176The user interface for deactivating a service account was improved. -
TKH-3177Removal of a group is no longer allowed when that group is the owner of an access profile. -
TKH-3178StartTLS on LDAP or Active Directory now correctly checks the expiration of the server certificate. -
TKH-3179Deactivation of a service account on LDAP no longer gives an error. -
TKH-3180TKH-3221TKH-3222TKH-3229The entire state management of provisioned accounts was reviewed to make it much more reliable and robust. -
TKH-3181It is now possible to add groups to access profiles. Users will be invited automatically for these groups when added to the access profile. -
TKH-3197Fixing provisioned accounts on different types of systems now takes the configured password requirements into account. -
TKH-3202Source directory provisioning implementations now support deleting accounts. -
TKH-3203Source directory provisioning on OpenLDAP now emulates disabled accounts by scrambling the password. -
TKH-3204Users with a business license are no longer provisioned via groups. -
TKH-3205Writeable accounts on source directory provisioning now requires the Identity Lifecycle Management (ILM) license feature. -
TKH-3248A regression was fixed that would cause a forced password change when signing in on Entra after a password rotation (delivered in version 39-4).
Organisational units
A major improvement to the organisation units was made: OAuth2 clients are now scoped to the organisational unit boundaries. This works very similar to how accounts are also scoped to organisational units. OAuth2 clients must be explicitly added to an organisational unit to be able to access any data within that unit.
-
TKH-2804TKH-3224TKH-3240TKH-3242OAuth2 clients are now explicitly scoped to one or more organisational units. This works in the same way as for accounts. -
TKH-3121The group details now also show the organisational units for which the group performs the auditor role. -
TKH-3168Incorrect filtering on modification requests targeted at KeyHub Administrators could result in the requests not being visible for the admins. -
TKH-3198OAuth2 clients can now query organisation unit memberships for accounts and clients. -
TKH-3200The account details page for auditors no longer triggers a permission denied error if the auditor is not allowed to see all group memberships of the account.
SDK for Dart
TKH-3166 In the past 6 months, we've been steadily working together with Microsoft Kiota and Ricardo Boss on a new generation target for the Kiota SDK generator. This combined effort was merged into the mainline Kiota branch last month and released with version 1.22. The resulting SDK for Dart can be found here: https://github.com/topicuskeyhub/sdk-dart
Assorted improvements
The following larger and smaller improvements and bug fixes were made:
-
TKH-2928Displaying permissions granted to OAuth2 clients are now properly filtered using the security constraints of the logged-in user. -
TKH-2951A post update step that was no longer needed was removed from the KeyHub update process. -
TKH-3002Various notifications about requests now show details of the concerned objects, such as groups on linked systems -
TKH-3004Information about the CA is now displayed when editing the cluster wide certificate configuration in the appliance manager. -
TKH-3096Information about the possible statuses of account directories was added to the manual. -
TKH-3146The select box for vaults on the vaults page was made substantially bigger on wide screens. -
TKH-3149ReactJS was upgraded to version 19 in the browser extension. -
TKH-3158The redirection for OAuth2 clients with custom URL schemes was fixed to no longer add a port number. -
TKH-3159A clean-up was fixed that would cause PostgreSQL 16 images to be prematurely removed during an upgrade from 12 to 16. -
TKH-3164The test framework used to test installing operating system updates was improved. -
TKH-3169Device identifiers for mobile devices that are no longer valid are now cleared to prevent repeated failure logging. -
TKH-3170An error was fixed when automatically handling a request to reset 2FA. -
TKH-3171We've substantially reduced the amount of logging generated for blocked resource requests. -
TKH-3172Invalid redirection URIs could trigger an error, resulting in lots of logging. -
TKH-3174When running in proxied mode, the correct URL is now displayed on the terminal. -
TKH-3182A possible error was fixed for calls made by an authenticated OAuth2 client. -
TKH-3183The rebuilding of group signatures and the creation of a personal vault could run concurrently while updating the same data, causing one of the two to fail. -
TKH-3185TKH-3186More tests were added for creating groups, clients and vault records via Terraform. -
TKH-3188Support for very old license versions was dropped. -
TKH-3189A test was added to check consistency of enumeration types used in both the REST API and the database. -
TKH-3190The maintenance admin is now once again allowed to upload a new license. -
TKH-3191Passwords are no longer shown in plain text as placeholders when editing the cluster configuration in the appliance manager. -
TKH-3192The REST API now supports generating translations for notifications as part of the response. -
TKH-3193The WildFly application server was upgraded to version 35.0.0. -
TKH-3194Improvements were made in the OpenAPI specification with regards to references toVaultHolder. -
TKH-3195SAML metadata is now correctly refreshed before it expires, even if it expires before our minimum refresh interval is up. -
TKH-3199ELRepo started using a new GPG key to sign their RPMs. This new key is now accepted by Topicus KeyHub. -
TKH-3201Improvements were made to the way the current cluster status is checked when performing updates and restoring backups. -
TKH-3206The dashboard now always shows incoming requests before outgoing requests because the former need action by the user. -
TKH-3207Quicksearch on the manage access page would not filter correctly on internal directories. -
TKH-3209The OAuth2 authorize endpoint now supports POST as required by the OIDC specification. -
TKH-3210TKH-3228TKH-3236Performance of several queries was improved substantially. An option to enable verbose performance logging was added. -
TKH-3214The remove button is no longer visible when creating a new client application.
Visit the Topicus KeyHub Manual
Here you can find the complete manual to the latest version of Topicus KeyHub.

