8000 Releases · keycloak/keycloak · GitHub
[go: up one dir, main page]

Skip to content

Releases

23.0.5

Choose a tag to compare

@keycloak-bot keycloak-bot released this 29 Jan 08:15

Upgrading

Before upgrading refer to the migration guide for a complete list of changes.

23.0.4

Choose a tag to compare

@keycloak-bot keycloak-bot released this 08 Jan 13:48

Upgrading

Before upgrading refer to the migration guide for a complete list of changes.

23.0.3

Choose a tag to compare

@keycloak-bot keycloak-bot released this 15 Dec 14:11

Upgrading

Before upgrading refer to the migration guide for a complete list of changes.

23.0.2

Choose a tag to compare

@keycloak-bot keycloak-bot released this 14 Dec 19:53

Highlights

Non-blocking health check for load balancers

A new health check endpoint available at /lb-check was added. The execution is running in the event loop which means this check is responsive also in overloaded situations when Keycloak needs to handle many requests waiting in request queue. This behavior is useful, for example, in multi-site deployment where we do not want to fail over to the other site under heavy load. The endpoint is currently checking availability of the embedded and external Infinispan caches. Other checks may be added later.

This endpoint is not available by default. To enable it, run Keycloak with feature multi-site. Proceed to Enabling and disabling features guide for more details.

Upgrading

Before upgrading refer to the migration guide for a complete list of changes.

All resolved issues

Enhancements

  • #25113 Add a test for the LoadBalancerCheck
  • #25287 Upgrade Infinispan to 14.0.21.Final

Bugs

  • #24652 SAML decryption fails if keycloak.saml.deprecated.encryption flag is set saml
  • #24986 `getMultiPartFormParameters()` always returns `EmptyMultivaluedMap` after upgrade to Resteasy Reactive core
  • #25001 Client redirect_uri check must be compared using exact string matching oidc
  • #25010 Bug: KC_DB_USERNAME environment variable is causing a crash in latest version dist/quarkus
  • #25051 Unexpected Application Error when clicking "Cancel" on user creation page admin/ui
  • #25108 Documentation Inconsistency about Open Banking(Finance) Brasil FAPI security profile docs
  • #25124 If a client does not have a URL the applications page in the account console links to about:blank account/ui
  • #25173 Make sure username is lowercase when normalizing attributes user-profile
  • #25183 NullPointerException thrown for UPConfig.getGroups() user-profile
  • #25307 Keycloak instance `HasErrors` true after update: `More than 1 secondary resource related to primary` operator

23.0.1

Choose a tag to compare

@keycloak-bot keycloak-bot released this 29 Nov 06:07

Upgrading

Before upgrading refer to the migration guide for a complete list of changes.

All resolved issues

Bugs

  • #23841 Users page with LDAP User Storage Provider Cannot read properties of undefined admin/ui
  • #23872 Attempt to request storage access in Firefox oidc
  • #24261 „Unlink users“-Option greyed out in ldap federation admin/ui
  • #24958 Error handling in admin console when update of user fails due the 400 HTTP error code admin/ui
  • #24961 Keycloak not able to handle multiple validating X509 certificates when public key are the same saml
  • #24984 Operator is missing CRDs metadata in CSV operator
  • #25008 Group search when creating user admin/ui
  • #25022 NPE in checkAndBindMtlsHoKToken on Token Refresh when using SuppressRefreshTokenRotationExecutor and Certificate Bound Token oidc

23.0.0

Choose a tag to compare

@keycloak-bot keycloak-bot released this 23 Nov 15:05

Highlights

OpenID Connect / OAuth 2.0

FAPI 2 drafts support

Keycloak has new client profiles fapi-2-security-profile and fapi-2-message-signing, which ensure Keycloak enforces compliance with the latest FAPI 2 draft specifications when communicating with your clients. Thanks to Takashi Norimatsu for the contribution.

DPoP preview support

Keycloak has preview for support for OAuth 2.0 Demonstrating Proof-of-Possession at the Application Layer (DPoP). Thanks to Takashi Norimatsu and Dmitry Telegin for their contributions.

More flexibility for introspection endpoint

In previous versions, introspection endpoint automatically returned most claims, which were available in the access token. Now there is new switch Add to token introspection on most of protocol mappers. This addition allows more flexibility as introspection endpoint can return different claims than access token. This is first step towards "Lightweight access tokens" support as access tokens can omit lots of the claims, which would be still returned by the introspection endpoint. When migrating from previous versions, the introspection endpoint should return same claims, which are returned from access token, so the behavior should be effectively the same by default after the migration. Thanks to Shigeyuki Kabano for the contribution.

Feature flag for OAuth 2.0 device authorization grant flow

The OAuth 2.0 device authorization grant flow now includes a feature flag, so you can easily disable this feature. This feature is still enabled by default. Thanks to Thomas Darimont for the contribution.

Authentication

Passkeys support

Keycloak has preview support for Passkeys.

Passkey registration and authentication are realized by the features of WebAuthn. Therefore, users of Keycloak can do passkey registration and authentication by existing WebAuthn registration and authentication.

Both synced passkeys and device-bound passkeys can be used for both Same-Device and Cross-Device Authentication. However, passkeys operations success depends on the user’s environment. Make sure which operations can succeed in the environment. Thanks to Takashi Norimatsu for the contribution and thanks to Thomas Darimont for the help with the ideas and testing of this feature.

WebAuthn improvements

WebAuthn policy now includes a new field: Extra Origins. It provides better interoperability with non-Web platforms (for example, native mobile applications). Thanks to Charley Wu for the contribution.

You are already logged-in

There was an infamous issue that when user had login page opened in multiple browser tabs and authenticated in one of them, the attempt to authenticate in subsequent browser tabs opened the page You are already logged-in. This is improved now as other browser tabs just automatically authenticate as well after authentication of first browser tab. There are still corner cases when the behaviour is not 100% correct, like the scenario with expired authentication session, which is then restarted just in one browser tab and hence other browser tabs won’t follow automatically with the login. So we still plan improvements in this area.

Password policy for specify Maximum authentication time

Keycloak supports new password policy, which allows to specify the maximum age of an authentication with which a password may be changed by user without re-authentication. When this password policy is set to 0, the user will be required to re-authenticate to change the password in the Account Console or by other means. You can also specify a lower or higher value than the default value of 5 minutes. Thanks to Thomas Darimont for the contribution.

Deployments

Preview support for multi-site active-passive deployments

Deploying Keycloak to multiple independent sites is essential for some environments to provide high availability and a speedy recovery from failures. This release adds preview-support for active-passive deployments for Keycloak.

A lot of work has gone into testing and verifying a setup which can sustain load and recover from the failure scenarios. To get started, use the high-availability guide which also includes a comprehensive blueprint to deploy a highly available Keycloak to a cloud environment.

Adapters

OpenID Connect WildFly and JBoss EAP

OpenID Connect adapter for WildFly and JBoss EAP, which was deprecated in previous versions, has been removed in this release. It is being replaced by the Elytron OIDC adapter,which is included in WildFly, and provides a seamless migration from Keycloak adapters.

SAML WildFly and JBoss EAP

The SAML adapter for WildFly and JBoss EAP is no longer distributed as a ZIP download, but rather a Galleon feature pack, making it easier and more seamless to install.

See the Securing Applications and Services Guide for the details.

Server distribution

Load Shedding support

Keycloak now features http-max-queued-requests option to allow proper rejecting of incoming requests under high load. For details refer to the production guide.

RESTEasy Reactive

Keycloak has switched to RESTEasy Reactive. Applications using quarkus-resteasy-reactive should still benefit from a better startup time, runtime performance, and memory footprint, even though not using reactive style/semantics. SPI’s that depend directly on JAX-RS API should be compatible with this change. SPI’s that depend on RESTEasy Classic including ResteasyClientBuilder will not be compatible and will require update, this will also be true for other implementation of the JAX-RS API like Jersey.

User profile

Declarative user profile is still a preview feature in this release, but we are working hard on promoting it to a supported feature. Feedback is welcome. If you find any issues or have any improvements in mind, you are welcome to create Github issue, ideally with the label area/user-profile. It is also recommended to check the Upgrading Guide with the migration changes for this release for some additional informations related to the migration.

Group scalability

Performance around searching of groups is improved for the use-cases with many groups and subgroups. There are improvements, which allow paginated lookup of subgroups. Thanks to Alice for the contribution.

Themes

Localization files for themes default to UTF-8 encoding

Message properties files for themes are now read in UTF-8 encoding, with an automatic fallback to ISO-8859-1 encoding.

See the migration guide for more details.

Storage

Removal of the Map Store

The Map Store has been an experimental feature in previous releases. Starting with this release, it is removed ...

Read more

22.0.5

Choose a tag to compare

@keycloak-bot keycloak-bot released this 24 Oct 10:22
Set version to 22.0.5

22.0.4

Choose a tag to compare

@keycloak-bot keycloak-bot released this 04 Oct 09:03
Set version to 22.0.4

22.0.3

Choose a tag to compare

@keycloak-bot keycloak-bot released this 12 Sep 17:46
Set version to 22.0.3

22.0.2

Choose a tag to compare

@keycloak-bot keycloak-bot released this 11 Sep 11:06
Set version to 22.0.2
0