Update dependency org.keycloak:keycloak-parent to v26.5.7 - autoclosed #9

Closed
renovate wants to merge 1 commit from renovate/keycloak.version into main
Member

This PR contains the following updates:

Package Change Age Confidence
org.keycloak:keycloak-parent (source) 26.4.226.5.7 age confidence

Release Notes

keycloak/keycloak (org.keycloak:keycloak-parent)

v26.5.7

Compare Source

Upgrading

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

All resolved issues

Security fixes

  • #​45493 CVE-2025-14083 keycloak-server: Keycloak: Improper Access Control in Admin REST API leads to information disclosure admin/api
  • #​45569 CVE-2026-1002 - io.vertx/vertx-core: static handler component cache can be manipulated to deny the access to static files
  • #​47069 CVE-2026-3429 Improper Access Control for LoA During Credential Deletion account/api
  • #​47716 CVE-2026-4634 Keycloak Application-Level DoS via Scope Processing
  • #​47717 CVE-2026-4636 UMA Policy Resource Injection Allows Unauthorized Cross-User Permission Grants
  • #​47718 CVE-2026-3872 Redirect URI validation bypass via ..;/ path traversal in OIDC auth endpoint
  • #​47719 CVE-2026-4282 Privilege escalation via forged authorization codes due to SingleUseObjectProvider isolation flaw

Enhancements

  • #​46631 Upgrade to Quarkus 3.27.3 dist/quarkus

Bugs

  • #​45204 Call without Host header throws uncaught error core

v26.5.6

Compare Source

Upgrading

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

All resolved issues

Security fixes

  • #​45645 CVE-2026-1180 - Blind Server-Side Request Forgery (SSRF) in Keycloak OIDC Dynamic Client Registration via jwks_uri oidc
  • #​45647 CVE-2026-1035 - Keycloak Refresh Token Reuse Bypass via TOCTOU Race Condition oidc
  • #​45650 CVE-2025-14777 - Keycloak IDOR in realm client creating/deleting
  • #​45653 CVE-2025-14082 keycloak-server: Keycloak Admin REST API: Improper Access Control leads to sensitive role metadata information disclosure
  • #​46719 CVE-2026-3121 - Keycloak: Privilege escalation via manage-clients permission
  • #​46723 CVE-2026-3190 - Information Disclosure via improper role enforcement in UMA 2.0 Protection API core
  • #​46922 CVE-2026-3911 Keycloak: Information disclosure of disabled user attributes via administrative endpoint user-profile
  • #​47062 CVE-2026-2366 Authorization Bypass: Unprivileged tokens can enumerate user organization memberships organizations

Bugs

  • #​45889 Federated user disabled when external DB unavailable, never re-enabled storage
  • #​46239 AUTH_SESSION_ID cookie reuse causes cross-user session contamination on re-authentication authentication
  • #​46296 UsersResource.search briefRepresentation started to return user attributes admin/api
  • #​46379 Unexpected error when logging out with offline session and external IDP oidc
  • #​46459 Operator-built DB config: targetServerType=primary not applied / connection validation not working after master-replica failover (26.5.0) operator
  • #​46588 Partial LDAP sync duration does not follow the defined value in user federation ldap
  • #​46605 26.5.4 startup regression with many realms: RealmCacheSession.prepareCachedRealm() scans master admin role composites per realm (O(N²)) core
  • #​46656 Em-Hyphens in SPI options on cache configuration page docs
  • #​46663 JGroups bind port configuration ignored when --cache-embedded-network-bind-port set infinispan
  • #​46669 SPIFFE Client assertion throws a NullPointerException if no client is found token-exchange
  • #​47079 Do not allow fetching organizations of a member if not a member of the current organization organizations

v26.5.5

Compare Source

Upgrading

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

All resolved issues

Security fixes

  • #​46909 CVE-2026-3047 SAML broker: Authentication bypass due to disabled SAML client completing IdP-initiated login
  • #​46910 CVE-2026-3009 Improper Enforcement of Disabled Identity Provider in IdentityBrokerService
  • #​46911 CVE-2026-2603 Disabled SAML IdP still allows IdP-initiated broker login
  • #​46912 CVE-2026-2092 saml broker encrypted assertion injection

v26.5.4

Compare Source

Upgrading

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

All resolved issues

Security fixes

  • #​45646 CVE-2026-1190 - Keycloak SAML brokering: Response delay due to unchecked NotOnOrAfter in SubjectConfirmationData saml
  • #​45649 CVE-2026-0707: Keycloak Authorization Header Parsing Leading to Potential Security Control Bypass
  • #​45776 CVE-2025-5416 keycloak-core: Keycloak Environment Information
  • #​46372 CVE-2026-2575 - Denial of Service due to excessive SAMLRequest decompression saml
  • #​46462 CVE-2026-2733 Missing Check on Disabled Client for Docker Registry Protocol

Enhancements

Bugs

  • #​44488 "Update email" AIA: "Back to Application" URL invokes OIDC callback with missing parameters oidc
  • #​45065 Client deletion timeout due to large number of client roles storage
  • #​45680 auth_mellon (SAML) authentication fails after upgrade to 26.5.1 (from 26.4.6) saml
  • #​45728 Information Disclosure of Client Secret on Unauthenticated Config Endpoint oidc
  • #​45874 Disabled organizations still resolve in organization‑aware login flows organizations
  • #​45966 KeycloakRealmImport: Realm created in DB but not visible in Admin Console until restart operator
  • #​45980 Keycloak cluster with 3 nodes and jdbc-ping stack fails to rejoin after temporary network partition infinispan
  • #​46100 Makes Database Query on Every Login Page Load Instead of Using Cache infinispan
  • #​46150 Move upgrading note for SAML to 26.5.4 docs
  • #​46178 Regression: cannot authenticate in keycloak-admin-client adapter/javascript
  • #​46290 Incorrect code used error, leading to "400 / Code already used" during Infinispan state transfers infinispan
  • #​46303 JWT Authorization Grant: Always getting “Token was issued too far in the past to be used now” for EntraID issued tokens oidc
  • #​46312 io.fabric8:docker-maven-plugin:0.40.3:start failed: Cannot invoke "com.google.gson.JsonElement.isJsonNull()" because the return value of "com.google.gson.JsonObject.get(String)" is null ci

v26.5.3

Compare Source

Upgrading

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

All resolved issues

Security fixes

  • #​46144 CVE-2026-1609 Disabled users can still obtain tokens via JWT Authorization Grant
  • #​46145 CVE-2026-1529 Forged invitation JWT enables cross-organization self-registration
  • #​46146 CVE-2026-1486 Logic Bypass in JWT Authorization Grant Allows Authentication via Disabled Identity Providers
  • #​46147 CVE-2025-14778 Incorrect ownership checks in /uma-policy/

Enhancements

  • #​45892 Upgrade minikube for CI tests operator

Bugs

  • #​44379 Node.js admin client does not refresh tokens admin/client-js
  • #​45459 k8s multiple restart (oomkilled) in v26.5.0-0 during startup because of RAM dist/quarkus
  • #​45662 Increase in startup memory consumption in post 26.5 versions dist/quarkus
  • #​45677 Hibernate Validator is enabled by default when not used dist/quarkus
  • #​45708 Unpexted value '' in mixed-cluster-compatibility-tests testsuite
  • #​45745 mixed-cluster-compatibility-tests fail due to incorrectly masked content in 26.5 branch ci
  • #​45755 Broken YAML indentation in operator rolling updates doc docs
  • #​45780 Remove fatal log messages from `ConsistentHash`

v26.5.2

Compare Source

Upgrading

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

All resolved issues

Security fixes

  • #​44994 CVE-2025-67735 - netty-codec-http: Request Smuggling via CRLF Injection dependencies

Enhancements

  • #​43443 Keycloak should warn when ISPN or JGROUPS is running in debug level logging
  • #​45498 Ignore OpenAPI artifacts when disabled dist/quarkus

Bugs

  • #​44785 Can not get through SSO login if using a custom attribute with default value user-profile
  • #​45015 Deadlock in Infinispan virtual threads infinispan
  • #​45250 IDToken contains duplicate address claims oidc
  • #​45333 User admin events don't show role, group mapping, reset password like events admin/ui
  • #​45396 Database Migration fails when updating to 26.5.0 on MS SQL core
  • #​45415 cache-remote-host becomes mandatory at build time when using clusterless feature infinispan
  • #​45417 Unmanaged Attributes Type (Only administrators can view) allows admin API to set Unmanaged Attributes user-profile
  • #​45474 Admin REST API document is not up to date docs
  • #​45526 Regression (26.5.1): Organizations domain resolution fails on MariaDB/MySQL due to ORG/ORG_DOMAIN collation mismatch organizations
  • #​45533 Keycloak should not allow matrix parameters in URLs as we don't use them dist/quarkus
  • #​45570 CVE-2025-66560 - io.quarkus/quarkus-rest: Quarkus REST Worker Thread Exhaustion Vulnerability
  • #​45584 Keycloak supported specs should list DPoP as supported oidc
  • #​45590 OIDCIdentityProviderConfig issuer configuration token-exchange
  • #​45597 Possible mismatch of charset/collation between columns on mysql/mariadb organizations
  • #​45651 CVE-2025-14559 keycloak-services: Keycloak keycloak-services: Business logic flaw allows unauthorized token issuance for disabled users

v26.5.1

Compare Source

Upgrading

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

All resolved issues

Enhancements

  • #​44863 x-robots HTTP header missing for static Keycloak resources, and REST endpoint responses
  • #​45009 Performance improvement: Missing indexes on BROKER_LINK table columns
  • #​45182 Allow full managing of realms from master realm without global admin role

Bugs

  • #​43975 Test Framework -> Embedded server -> Maven execution failure: Failed to read script file from: scripts/default-policy.js test-framework
  • #​44371 403 Forbidden when assigning realm-management client roles despite FGAP disabled (regression in 26.4.0+) admin/fine-grained-permissions
  • #​44417 Security issue with Organization feature exposes and fills the account name automatically in user/password form organizations
  • #​44783 Create Realm button is missing when user has create-realm role admin/ui
  • #​44860 Admin UI: slow response time listing second user page admin/ui
  • #​45003 Bug in JWTClientAuthenticator and JWTClientSecretAuthenticator causes NPE authentication
  • #​45093 Enable visibility of Role Mapping tab for users with view-users role admin/ui
  • #​45107 Failed upgrade to 26.4.7 - sql generated for manual database upgrade contains invalid statements storage
  • #​45116 Realm-level admininistrators can no longer use Admin Console since 26.3.0 (UI fails to render) admin/ui
  • #​45185 ExternalLinkTest fails due to missing _adding_context_for_log_messages anchor docs
  • #​45226 Failure when decrypting SAML Response since 26.5.0 saml
  • #​45239 Upgrade to 26.5.0 failing due to FK_ORG_INVITATION_ORG constraint organizations
  • #​45257 Creating IdentityProvider with latest java admin-client may fail against Keycloak server 26.4 or older admin/client-java
  • #​45307 UI Bug: WebAuthn passkey list is broken in keycloak v2 theme login/ui

v26.5.0

Compare Source

Highlights

This release features new capabilities for users and administrators of Keycloak. The highlights of this release are:

  • Workflows to automate administrative tasks and process within a realm.

  • JWT Authorization Grants, our recommended alternative to external to internal token exchange.

  • Guide for using Keycloak as an authorization server for Model Context Protocol (MCP) servers.

  • Authenticating clients with Kubernetes service account tokens to avoid static client secrets.

  • OpenTelemetry support for metrics and logging, combining all observability information in this popular standard.

Read on to learn more about each new feature. If you are upgrading from a previous release, review also the changes listed in the upgrading guide.

Security and Standards

JWT Authorization Grant (preview)

Keycloak 26.5 introduces a new feature called JWT Authorization Grant, which adds support for RFC 7523 to use external signed JWT assertions to request OAuth 2.0 access tokens.

To accept signed JWT assertions, a trust relationship must be established between the external provider and Keycloak. This trust relationship can be configured through an identity provider in a dedicated section of the OpenID Connect v1.0 identity provider, or through the new JWT Authorization Grant identity provider.

JWT Authorization Grant is recommended as an alternative to External to internal token exchange V1. This feature is in preview, and additional details are available in the dedicated documentation.

Using Keycloak as an authorization server for Model Context Protocol (MCP) servers

Using Keycloak as an authorization server for Model Context Protocol (MCP) servers is becoming popular, so this release ships additional documentation on how to do this.

Many thanks to Takashi Norimatsu for the contribution.

CORS enhancements

CORS (Cross Origin Resource Sharing) is a browser security feature that controls how web pages on one domain can request resources from a different domain.

For the OpenID Connect Dynamic Client Registration, you can now specify which CORS headers are allowed via the client registration access policies.

For the overall CORS configuration, you can now allow environment specific headers to be allowed using the SPI option spi-cors--default--allowed-headers.

Logout confirmation page

The client logout configuration now includes an option to show a logout confirmation page. When enabled, users will see a &#​8220;You are logged out&#​8221; confirmation page upon successful logout.

Many thanks to Sebastian Łaskawiec for the contribution.

Hiding OpenID Connect scopes from the discovery endpoint

Previously, all scopes of an OpenID Connect client were advertised in the discovery endpoint.

In some situation you might want to avoid it, as the calling client, for example, an MCP server might not support it, or you might want to hide some scopes for preventing their discovery via public APIs.

You can now prevent this by disabling Include in OpenID Provider Metadata.

Administration

Workflows (preview)

Keycloak introduces a new preview feature called Workflows, which allows administrators to automate administrative tasks and process within a realm, introducing a key capability for Identity Governance and Administration (IGA).

For more details, see the Server Administration Guide.

Federated client authentication (preview)

Federated client authentication remains preview due to receiving a number of enhancements and fixes.

There is now preview support to use Kubernetes service accounts tokens as credentials for clients, which avoids static secrets for OpenID Connect clients.

See Kubernetes identity providers in the Server Administration Guide for details.

Organization invitation management

Organization administrators can now manage organization invitations through both the Admin Console and REST API:

  • View all sent invitations with their current status (Pending, Expired)

  • Resend pending invitations to recipients

  • Delete invitation records from the system

  • Filter invitations by status for easier management

All invitations are now persistently stored in the database, providing better tracking and management capabilities.

The invitation management features are available in the Invitations tab when managing an organization in the Admin Console, and through the Organizations REST API endpoints under /admin/realms/{realm}/orgs/{orgId}/invitations.

New event USER_SESSION_DELETED

For each expired user session there is a new user event USER_SESSION_DELETED fired. This event is published approximately 3-10 minutes after the session has expired depending on job scheduling and load on the system. By default, this event is not persisted.

Configuring and Running

Containers for PowerPC 64-bit Little Endian architecture

The containers for both the Keycloak and its operator are not available as well for the PowerPC 64-bit Little Endian (ppc64le) architecture. This is in addition to the existing amd64 and arm64.

We expect this to allow users to optimize their usage of open hardware and power consumption.

Improved server response times

Authentication, user, and client sessions are now created on the respective Keycloak node and avoid extra remote calls to neighbors when reading or writing them to the embedded caches. When you have sticky sessions enabled in your loadbalancer, you will benefit from this feature automatically, and you should see reduced response times when authenticating users.

Expired user sessions are now deleted from the database in small batches, instead of issuing a delete statements that affects the whole table. This should allow for better response times when there are a lot of sessions in the table.

Enhanced HTTP performance (preview)

You can now enable a more efficient way to handle JSON data in the HTTP layer. This change increases throughput by ~5%, stabilizes response times, and reduces system resource usage.

In order to apply it, you need to explicitly enable the feature http-optimized-serializers.

Note
This feature is preview. We gather more feedback about potential issues in this discussion. We appreciate any feedback.

For more details, see the Configuring Keycloak for production guide.

Configure retry behavior for outgoing HTTP requests

Keycloak has now more flexibility how to configure retrying of outgoing HTTP requests. This is useful for handling transient network errors or temporary unavailability of the service where Keycloak needs to send HTTP request. Retry behavior is disabled by default and must be explicitly enabled. More details are available in the Outgoing HTTP requests documentation.

Many thanks to Chance Coleman for the contribution.

Enable/disable features via a single option

You can now enable or disable individual features using the feature-<name> option (like feature-spiffe=enabled).

This provides a more fine-grained way to manage features and eliminates the need to maintain long lists of enabled or disabled features.

The feature-<name> option takes precedence over both features and features-disabled.

For more details, see the Enabling and disabling features guide.

Client certificate lookup compliant with RFC 9440

You can now use a new client certificate lookup provider that is compliant with RFC 9440. This enables native support e.g. for Caddy and other reverse proxies that follow the RFC. For details, navigate to Enabling Client Certificate Lookup section of the documentation.

Running Keycloak as a Windows service

Keycloak can now be installed and run as a Windows service using Apache Commons Daemon (Procrun). The new tools windows-service CLI subcommand simplifies service installation and uninstallation.

The service runs kc.bat start as an external process, ensuring all environment variables and configuration files are respected. This provides seamless integration with the Windows Services management console and enables automatic startup on system boot without requiring a user to be logged on.

For more information, see the Running Keycloak as a Windows Service guide.

Observability

OpenTelemetry enhancements

OpenTelemetry Logs (preview)

Keycloak now supports exporting logs to OpenTelemetry collectors, enabling centralized log management. This preview feature allows you to export Keycloak logs to any OpenTelemetry-compatible backend and use the same OpenTelemetry collector for logs, metrics and traces.

OpenTelemetry Metrics (experimental)

Keycloak now provides the experimental support for exporting metrics to OpenTelemetry collectors by using the Micrometer-to-OpenTelemetry bridge. This experimental feature allows you to export Keycloak metrics to any OpenTelemetry-compatible backend and use the same OpenTelemetry collector for logs, metrics and traces.

Export traces with custom request headers

It is now possible to set request headers for exporting traces via OpenTelemetry Protocol (OTLP). It is mainly useful for providing tokens in the request.

You can specify these headers via the tracing-header-<header> wildcard option, accepting any custom header name.

For more details, see the Root cause analysis with tracing guide.

MDC Logging feature (supported)

The log-mdc:v1 feature has been promoted from a preview feature to a supported feature.

MDC enables Keycloak to enrich log entries with contextual information such as realm, client, user ID and IP address, significantly improving debugging and observability.

For more details, see the Adding context for log messages guide.

Upgrading

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

All resolved issues

Deprecated features

  • #​44121 Deprecate Fine-Grained Admin Permissions v1 admin/fine-grained-permissions

Removed features

New features

  • #​20761 Support Caddy as a Reverse Proxy Provider for Client Certificate Authentication core
  • #​37704 Support for running Keycloak as a Windows Service
  • #​38809 Feature Request: Track Pending Organization Invitations in Keycloak Admin Console
  • #​39221 Admin API v2: Blueprint
  • #​41261 OpenTelemetry Support observability
  • #​42482 Possibility to backchannel logout the clients belonging to a specific user session
  • #​42912 Containers for ppc64le
  • #​43020 Secure Client-Initiated Renegotiation - disable by default dist/quarkus
  • #​43106 Expose scheduled tasks and start time
  • #​44312 Add support to use `kcw` with remote test server test-framework
  • #​44458 Expose a configuration option to always display a logout confirmation screen

Enhancements

  • #​8863 Add CORS support to OIDC dynamic client registration endpoints
  • #​10388 Allow to hide client scopes from scopes_supported in discovery endpoint
  • #​12682 Allow CORS Access-Control-Allow-Headers customization core
  • #​14509 Allow configuration for SMTP timeouts via configuration
  • #​15502 Ability to remove offline_access tokens from the Account Management client and/or Admin interface core
  • #​17268 [KC 20+] Obsolete/wrong documentation about service accounts?
  • #​22938 Fine-grained admin permission client manage does not work for an Authorization enabled client admin/fine-grained-permissions
  • #​33009 Delete Client and role's admin event doesn't have representation while other delete entities have the representation admin/ui
  • #​33146 Prevent users configuring max-count=-1 for caches with a default upper-bound infinispan
  • #​35836 SMTP Timeout Override
  • #​38843 Set `automountServiceAccountToken: false` on Keycloak pods operator
  • #​39881 Picture of the token-exchange flow in the documentation docs
  • #​40799 Provide a way to add custom labels to Realm Import job of Keycloak operator
  • #​41006 [OTel] Micrometer to OpenTelemetry bridge support for metrics observability
  • #​41007 Including OTLP headers for authorization
  • #​41019 Validate client session session timeout and lifetime settings on edit authentication
  • #​41205 Make MDC logging supported
  • #​41263 [OTel] Provide general options for telemetry settings observability
  • #​41264 [OTel] Introduce preview support for OpenTelemetry Logs observability
  • #​41425 Add more fields to the Welcome Page
  • #​42124 Add operation to cancel a workflow execution for a resource
  • #​42223 Create a LocalCacheProvider SPI
  • #​42386 [RLM] Review the action execution thread model
  • #​42401 Add configurable retry logic for OCSP certificate validation checks core
  • #​42445 Default to log color enabled
  • #​42446 Make picocli auto color match the quarkus logic
  • #​42618 [RLM] - Allow updating workflow conditions
  • #​42644 No longer able to set a Keycloak Admin Client timeout admin/client-js
  • #​42687 [RLM] - Ability to define workflows with YAML
  • #​42694 Workflows: review test coverage workflows
  • #​42695 Workflows: Add OpenAPI annotations to all API methods
  • #​42696 [RLM] Review implemented conditions and add toPredicate implementation
  • #​42704 SELECT COUNT(*) FROM called multiple times for an index creation core
  • #​42715 incorrect flow with login_hint specified for user in org email domain organizations
  • #​42776 Session cache affinity
  • #​42835 Make API endpoint linkable in documentation docs
  • #​42910 [RLM] - Restarting a workflow for a resource based on the step chain workflows
  • #​42911 [RLM] - Canceling workflows for a given resources when a new event is triggered
  • #​42913 [RLM] - Allow using time-based tokens when setting fields that expect a period or time
  • #​42917 Chore: Add missing translations for Korean (ko)
  • #​42945 [PERF] Jackson reflection-free serialization/deserialization dist/quarkus
  • #​42961 [RLM] - Cache expressions using as a component note
  • #​42990 Hide read-only email attribute in update profile context with update email enabled user-profile
  • #​42991 Final review and update for UPDATE_EMAIL documentation docs
  • #​43015 Log FIPS provider using info debug level
  • #​43076 Add rate limiter for sending verification emails in context of update email
  • #​43125 Divide logging guide to sub-guides for every log handler observability
  • #​43137 [RLM] Review naming of events to be in the past tense workflows
  • #​43156 [Docs] Warn users about printing headers in HTTP access logs docs
  • #​43183 Relax CORS policy on credential offer endpoint
  • #​43214 [OID4VC] Ensure authorization_details from PAR requests are properly returned in token responses for conformace tests oid4vc
  • #​43256 Expiry event for user sessions and timely DB removal of sessions
  • #​43351 Make pending email verification attribute removable by admin user-profile
  • #​43357 JDBC_PING should publish its physical address on startup
  • #​43360 Add the user session in the session context when it is validated or created
  • #​43362 Reduce the number entity manager flushes when creating a realm
  • #​43365 When reading events for the database, read them read-only
  • #​43421 All config formatting for list options could be improved
  • #​43450 Workflows UI needs to implement authorization admin/ui
  • #​43456 Run time comparisons in SD-JWT and SD-JWT VP verification with account of possible clock skew
  • #​43466 Picocli refinements
  • #​43509 Role authorization for workflows. admin/api
  • #​43512 Export default routes from npm UI packages
  • #​43536 Remove need to specify workflow condition parameter in double quotes workflows
  • #​43537 Fix inconsistencies in workflow condition evaluation workflows
  • #​43538 Ensure delete-user step doesn't trigger removal of federated user from federation provider workflows
  • #​43541 Ability to enable/disable feature via single property
  • #​43559 Add validation for Workflwow, Condition and Steps fields workflows
  • #​43604 Warn or error on duplicate options dist/quarkus
  • #​43611 Allow non-optimized start to run without a separate vm launch
  • #​43643 Upgrade to Quarkus 3.27.1 dist/quarkus
  • #​43650 SPIFFE should support OIDC JWK endpoint
  • #​43660 Add operation to retrieve the workflows that are currently active for a resource workflows
  • #​43661 Allow groups to be referenced by path in workflow conditions workflows
  • #​43665 Workflows UI must allow for definition of workflows using YAML admin/ui
  • #​43666 Admin client should be able to handle YAML payloads for workflows workflows
  • #​43694 Avoid using UserCredentialManager from user storage extensions
  • #​43715 Provide a way to evaluate event properties when matching events to workflows workflows
  • #​43777 Add missing secret warning status
  • #​43801 [OID4VCI] Handling KeyAttestationRequired properly oid4vc
  • #​43802 Add autofocus property to "Sign in with passkey" button in keycloak.v2 login theme.
  • #​43843 [Login UI v2] Configurable Password Visibility-Toggle Icons
  • #​43912 Store workflows YAML definition as a blob workflows
  • #​43931 Downscoping for standard token exchange token-exchange/standard
  • #​44005 Improve error message for the HTTPS material loading observability
  • #​44164 Add pagination and search by name capabilities to the workflows endpoint workflows
  • #​44183 Allow UI to retrieve Workflow definitions without their ids workflows
  • #​44266 Provide additional benchmarks for more than 100k users
  • #​44274 Keycloak compatibility with PostgreSQL 18
  • #​44296 Avoid un-escaped strings in the login templates for HTML entities login/ui
  • #​44396 Ignore null values when serializing workflows using YAML workflows
  • #​44494 Support EDB 18
  • #​44500 HttpClient provider should allow connectionRequestTimeout to be settable
  • #​44518 Disable state transfer for session caches when persistent sessions are enabled
  • #​44548 Add MariaDB to MySQL description and specify SQL to support UTF-8
  • #​44571 MCP Documentation for 26.5
  • #​44611 Document recommended transaction isolation level for MS SQL in guides and warn if wrong level is detected on startup
  • #​44621 [OID4VCI] Realign naming of attribute configuring algorithms for credential signing oid4vc
  • #​44634 Enhance health check docs
  • #​44645 Improve workflow concurrency settings to allow cancelling a workflow based on an event workflows
  • #​44708 Improvements to the notify step workflows
  • #​44736 Fix OID4VCI Wallet Interoperability Issues (Draft 15 Compatibility & Metadata Compliance) oid4vc
  • #​44753 Avoid using HTML in backend messages in the login theme
  • #​44787 Avoid flushing user information in batch mode
  • #​44789 Allow restarting the step chain at a specific position workflows
  • #​44801 Infinispan: LoginFailures entries should expire
  • #​44842 Publish an event for logging out a single session or all sessions or all sessions via the Account Console events
  • #​44843 Publish an event when the UserSessionLImitsAuthenticator terminates an older session events
  • #​44865 Allow running scheduled workflows workflows
  • #​44890 Update the Quarkus README for better clarity
  • #​44910 Validate client session timeout and lifetime settings on realm settings edit
  • #​44915 Add Basque (eu) translation support for Keycloak UI
  • #​44936 Support running test methods on the server side
  • #​45070 ServiceMonitor is not created by keycloak operator docs

Bugs

  • #​26374 Workflow failure: Quarkus IT - FipsDistTest#testUnsupportedHttpsPkcs12KeyStoreInStrictMode ci
  • #​30939 Vulnerability in brute force detection settings authentication
  • #​31401 Kcadm.sh: (Better) Error messages on 302 redirect responses
  • #​34868 [Jenkins Operator CI] - Test remote - ClusteringTest on OpenShift ci
  • #​38438 Avoid 'duplicated mappers' Quarkus message for kc.dir dist/quarkus
  • #​38506 keycloak-test-framework-bom manages more dependencies than intended test-framework
  • #​38991 [Test framework] Embedded server -> dependency download error when no version is specified test-framework
  • #​39660 Failed shouldPreventPathFileSeparatorInVaultSecretId test on Windows testsuite
  • #​40058 [FGAP] Make additional rest endpoints respect permissions admin/fine-grained-permissions
  • #​40712 Authorization -> Evaluate: always returns "No search results" authorization-services
  • #​40756 Wrong dependency registering in the testsuite testsuite
  • #​40965 Group permission denies to view user admin/fine-grained-permissions
  • #​40990 Fallback to English translations for unknown locale despite German being the realm default translations
  • #​41270 Cannot save new attribute group admin/ui
  • #​41271 Changing user profile attribute results in an error everytime admin/ui
  • #​41292 openid-connect flow is missing response type on language change authentication
  • #​42000 Incorrect logic of getArray() in ComponentModelScope core
  • #​42166 [Keycloak CI - Store MSSQL] GroupTest.createMultiDeleteMultiReadMulti:157 testsuite
  • #​42225 Slow initial GET /admin/realms/{realm}/users with cache enabled and large max parameter admin/api
  • #​42470 UserStorageProviderModel parameter in ImportSynchronization.sync() method contains stale configuration data core
  • #​42541 Searching by non-searchable attributes returns all clients core
  • #​42552 Missing license field and miscellaneous fields in NPM packages admin/ui
  • #​42565 Standard Token Exchange: chain of exchanges eventually fails token-exchange
  • #​42588 Key Type is not EC: ECDSA oidc
  • #​42601 Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#testPostBrokerLoginFlowWithOTP ci
  • #​42676 Security Defenses realm settings lost when switching between Headers and Brute Force Detection tabs (v25+) admin/ui
  • #​42794 [Windows] Make TrustedHostClientRegistrationPolicyTest Robust to Canonical Hostname localhost testsuite
  • #​42795 [Windows] Stabilize ResourceLoaderTest testsuite
  • #​42851 Group description missing on partial import import-export
  • #​42907 Race condition in authorization service leads to NullPointerException when evaluating permissions during concurrent resource deletion authorization-services
  • #​42914 Make sure TestEventsListenerProvider does not reuse the events in memory testsuite
  • #​42960 KC_VERBOSE is not honored for a fast start dist/quarkus
  • #​42971 create clients without required value admin/ui
  • #​43022 Incorrect Basic Auth encoding for OIDC IDentity Provider when Client ID contains colon identity-brokering
  • #​43034 Saving Client “Advanced” sets Request Object signature/encryption attributes to “any” even when not changed oidc
  • #​43042 Avoid NPE in FederatedJWTClientAuthenticator when checking for supported assertion types core
  • #​43061 Option description stuck with link admin/ui
  • #​43070 Update email page with pending verification email messages prefilled with old email user-profile
  • #​43080 Fix punctuation for deleteConfirmGroup_one message admin/ui
  • #​43082 ExternalLinksTest is broken due to missing path parameters docs
  • #​43084 Fix anchors in the documentation docs
  • #​43087 "Service accounts roles" should be "Service account roles" translations
  • #​43091 Duplicate Email Fields on Temporarily Locked Out Sign In With Organization Identity-First Login login/ui
  • #​43096 keycloak-operator 26.4.0 missing clusterrole permissions docs
  • #​43104 Release notes fix for update email docs
  • #​43160 Regression in DEBUG_PORT handling since 26.4.0 – host binding (*:port / 0.0.0.0:port) no longer works dist/quarkus
  • #​43161 Restarting an user session broken for persistent sessions infinispan
  • #​43164 Keycloak docs state that only TLSv1.3 is used docs
  • #​43166 Backend url misses the path with reverse proxy admin/api
  • #​43191 Upgrade guide for 26.4.0 should mention new minimal PostgreSQL server version 13 requirement docs
  • #​43195 Field "Created at" shows "Invalid Date" when created through KeycloakRealmImport
  • #​43202 IntComponent doesn't show if a field is required admin/ui
  • #​43212 Document missing artifact dependency for UserStoragePrivateUtil docs
  • #​43218 Cannot revoke access token generated by Standard Token Exchange oidc
  • #​43244 UI crash on admin `/users/add-user` since 26.4.0 admin/ui
  • #​43254 Make sure username and email attributes are lower cased when fetching their values from LDAP object ldap
  • #​43262 XPathAttributeMapperTest fails on Ubuntu with OpenJDK 17 saml
  • #​43263 FIPS1402JWKTest and FIPS1402SecureRandomTest fails on Ubuntu with OpenJDK 25 oidc
  • #​43264 SdJwtTest and UndisclosedClaimTest fails on Windows with OpenJDK 17
  • #​43269 Keycloak 26.4 returns a different error response on a token request without Client Assertion (private_key_jwt client authentication) from Keycloak 26.3 does oidc
  • #​43270 Keycloak 26.4 returns a different error response on a CIBA backchannel authentication request without Client Assertion (private_key_jwt client authentication) from Keycloak 26.3 does oidc
  • #​43286 Broken links on DB server configuration guide docs
  • #​43304 SAML Client - Encrypt assertions toggle shows wrong dialog text (Client signature required) saml
  • #​43323 Sessions not removed when user is deleted infinispan
  • #​43328 "Remember me" user sessions remain valid after "remember me" realm setting is disabled authentication
  • #​43331 NullPointerException when disabling Admin Permissions (FGAP) in Realm - GET /users returns 500 admin/fine-grained-permissions
  • #​43335 First JDBC_PING initialization happens in the JTA transaction context infinispan
  • #​43349 Client session may be lost during session restart infinispan
  • #​43394 SPIFFE client authentication does not work when JWT SVID includes `iss` claim
  • #​43417 Spotless fails on `main` ci
  • #​43447 [quarkus-next] DatasourcesConfigurationTest fails dist/quarkus
  • #​43459 Invalid YAML in advanced Operator configurations docs
  • #​43460 FGAP/UI: `reset-password` succeeds but UI shows 403 without Users:manage admin/fine-grained-permissions
  • #​43477 Flaky test: org.keycloak.testsuite.webauthn.account.WebAuthnSigningInTest#setUpLinksTest ci
  • #​43505 DPoP proof replay check doesn't consider clock skew oidc
  • #​43515 Social provider icons not displayed when alias differs from provider type login/ui
  • #​43516 Deleting Client is slow and fails when a lot of client sessions exist core
  • #​43523 [Keycloak JavaScript CI] - Admin UI E2E (chromium) ci
  • #​43532 kcadm.ssh config credentials fails when there is a % in the client secret admin/cli
  • #​43544 Intra-document links not rendered in downstream docs
  • #​43547 Unrecognized field "kty" (class org.keycloak.jose.jwk.JSONWebKeySet), not marked as ignorable (one known property: "keys"]) oidc
  • #​43561 Server does not shutdown gracefully when started with --optimized core
  • #​43564 Invalid liquibase check sum for jpa-changelog-2.5.0.xml core
  • #​43578 "admin" client role now requires server admin user admin/api
  • #​43579 403 Forbidden when assigning realm-management client roles with realm-admin despite FGAP disabled (regression in 26.4.0+) admin/fine-grained-permissions
  • #​43596 FGAP: user can no longer open account management page, broken by `reset-password` admin/fine-grained-permissions
  • #​43621 Version 26.4.1 breaks existing ldap users with capital letters in username ldap
  • #​43637 Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#loginWithExistingUserWithBruteForceEnabled ci
  • #​43639 Local user can't login when ldap error ldap
  • #​43674 Setting "Backchannel logout session required" displayed incorrectly admin/ui
  • #​43682 When syncing roles, the database layer can see deadlocks
  • #​43687 H2 database URL augmentation does not consider db-url-properties dist/quarkus
  • #​43698 Role Mapper is updating the user every time on login identity-brokering
  • #​43713 Flaky test: org.keycloak.testsuite.oauth.ClientAuthSignedJWTTest#testClientWithGeneratedKeysJKS ci
  • #​43717 Unused message properties for the LDAP mappers admin/ui
  • #​43718 Email Not Persisted During Registration When "Email as Username" is Enabled and User Edit Permission is Disabled user-profile
  • #​43720 Wrongly spelled LDAP edit mode in the docs ldap
  • #​43723 Only add the none verifier when attestation conveyance preference is none (or default) authentication/webauthn
  • #​43734 Refresh token allowed for offline session even the related scope is removed
  • #​43736 FGAP V2: reset-password scope error when viewing users with Group permissions only core
  • #​43738 UPDATE_EMAIL action invalidates old email login/ui
  • #​43744 Increased memory usage due to leaking KeycloakSession instances admin/api
  • #​43752 LDAP synchronization happens too often in a cluster and always clears the cache ldap
  • #​43754 Flaky test: org.keycloak.testsuite.federation.ldap.LDAPProvidersIntegrationTest#updateLDAPUsernameTest ci
  • #​43755 Flaky test: org.keycloak.testsuite.account.AccountRestServiceTest#listApplicationsWithoutPermission ci
  • #​43759 QuarkusKeycloakSession not garbage collected when running Liquibase dist/quarkus
  • #​43761 QuarkusKeycloakSession kept in memory for each timer core
  • #​43763 Normalizing of Keycloak URLs not documented dist/quarkus
  • #​43774 Under OLMv1 service monitor check uses wrong namespace operator
  • #​43785 QuarkusKeycloakSession leak in DeclarativeUserProfileProvider user-profile
  • #​43793 import does not seem to run db migration import-export
  • #​43812 Admin console sends non-JSON payload with content-type: application/json admin/ui
  • #​43818 typos in Docs: server_admin/topics/sso-protocols/con-oidc-auth-flows.adoc oidc
  • #​43819 partial import fails to overwrite existing groups import-export
  • #​43832 Cannot issue vc of type oid4vc_natural_person oid4vc
  • #​43835 useHash hook does not correctly extract hash from pushState URL admin/ui
  • #​43845 [quarkus-next] Removed exception escaped OTel attribute dist/quarkus
  • #​43853 Ensure the logout endpoint removes the authentication session oidc
  • #​43863 JS CI failing after normalization testsuite
  • #​43867 JS Policy is used in the "Default Policy" for Authorization authorization-services
  • #​43883 Creating group policy on a client uses "manage-clients" role if FGAP V1 is disabled authorization-services
  • #​43886 Flaky test: org.keycloak.testsuite.model.session.UserSessionProviderOfflineModelTest#testLoadUserSessionsWithNotDeletedOfflineClientSessions ci
  • #​43933 AUTH_SESSION_ID cookie has the incorrect route core
  • #​43948 Adding a client mapper stays on creation screen, with error on second save admin/ui
  • #​43973 Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#testPostBrokerLoginFlowWithOTP ci
  • #​43993 MessageFormatterMethod does not detect/map SimpleNumber causing IllegalArgumentException login/ui
  • #​44010 Ordering attributes will unset the unmanaged attribute policy user-profile
  • #​44031 Can't build keycloak 26.4.4 with quarkus.launch.rebuild=true dist/quarkus
  • #​44056 Allow only normalized URLs in requests caused a regression in view authz permission details in Admin Consol admin/ui
  • #​44057 Retrieving row count to evaluate index creation takes a long time on PostgreSQL and big tables core
  • #​44113 Missing message properties when redenring pages for organization invites organizations
  • #​44116 [OID4VCI] Credential Offer must be created by Issuer not Holder oid4vc
  • #​44117 DockerClientTest failure testsuite
  • #​44125 Double-encoding of query parameter values (e.g. acr_values) for version 26.4 identity-brokering
  • #​44127 [Test Framework] Distribution server - logger output exception test-framework
  • #​44156 [BUG] 'master' realm lockout due to NullPointerException when "Conditional 2FA" is moved before "Username Password Form" authentication/webauthn
  • #​44163 Disabling/enabling workflows result in validation errors and the name is missing from representation core
  • #​44179 Test failure in operator KeycloakIngressTest.testIngressTLSTermination operator
  • #​44187 [Keycloak Docs CI] Broken links docs
  • #​44189 [jdbc-ping] SQLIntegrityConstraintViolationException: Duplicate entry infinispan
  • #​44217 OIDC identity provider should allow to setup JWKS URL (or hardcoded keys) when JWT authorization grant enabled identity-brokering
  • #​44229 Unexpected FORMAT_FAILURE error when using cache-config-file with feature-disabled=persistent-user-sessions infinispan
  • #​44246 Inconsistent formatting or RFC references docs
  • #​44256 [OID4VCI] JWT VC Issuer Metadata well-known endpoint should be available at /.well-known/jwt-vc-issuer/realms/{realm} oid4vc
  • #​44257 OIDC Dynamic Client Registration update problem when Service Account was enabled/ disabled oidc
  • #​44268 Tests for Admin Client fail testsuite
  • #​44269 Admin Client creates malformed paths for requests admin/client-js
  • #​44278 Stack trace in browser console when updating password admin/ui
  • #​44280 Unsupported Pod template can cause AUTO logic to keep StatefulSet at 0 replicas operator
  • #​44287 Caching of static theme resources in dev mode is disabled core
  • #​44289 Failure when decrypting SAML Assertions with HSM provided key saml
  • #​44329 View-Group Permission shows Users in User-List admin/fine-grained-permissions
  • #​44341 Grammar error in LDAP federation group mapper ldap
  • #​44342 Logical error in Danish email verification message - tells users to ignore if they DID create account translations
  • #​44349 Upgrade with Mysql and migration-strategy=manual when db user has non alter table permissions core
  • #​44377 Unlocalized date format in (email messages) translations
  • #​44387 Description of Passkey is not escaped on the login screen login/ui
  • #​44398 Delete user step in workflows is not removing other scheduled steps the user might have workflows
  • #​44399 Workflows are restarting on any event instead of the one that activates it workflows
  • #​44400 Removing a user's group is not activating workflows that use the user-group-membership-removed event workflows
  • #​44419 Compilation failure in OID4VCTimeNormalizationSdJwtTest
  • #​44430 NPE when importing SAML EntityDescriptor without SPSSODescriptor saml
  • #​44438 Intermittent ConcurrentModificationException during SAML initialization causing status code 400 for clients saml
  • #​44455 ClassCastException on mixing AddressMapper with ClaimMapper oidc
  • #​44480 Wrong persistent group permissions when multiple group membership changes happen in the same request core
  • #​44522 The existence of an organization attribute called “id” is not validated organizations
  • #​44540 [admin-api-v2] Create client does not return 201 status code admin/api
  • #​44543 Missing Romanian locale from Supported locales translations
  • #​44552 Manual sync not executed because of the last sync time ldap
  • #​44558 LDAP group mapper executed multiple times in the same request ldap
  • #​44577 Remote Infinispan should return count per client only for the current realm infinispan
  • #​44586 [admin-api-v2] Incorrect DTO/DAO mapping admin/api
  • #​44606 Unhandled error caused by unknown SAML tag during XML parsing saml
  • #​44626 Compilation failure in JWTAuthorizationGrantJWTClaimsClientPoliciesTest authentication
  • #​44642 Credential offer endpoint has parameter user_id, but expects username oid4vc
  • #​44661 Moved link in developer.mozilla.org docs
  • #​44700 ModelTests are broken after consolidating config logic testsuite
  • #​44702 Alias in JWT Authorization Grant idp should not be editable token-exchange
  • #​44712 Keycloak throws a 500 when invalid Accept header dist/quarkus
  • #​44725 Typo: missing '>' on closing in keycloak.v2 link-idp-action.ftl login/ui
  • #​44735 No "Sign in with Passkey" on first step with organization: scope authentication/webauthn
  • #​44742 OID4VCIssuerEndpoint.getCredentialOfferPreflight uses incorrect name of the parameter oid4vc
  • #​44776 Chrome and Firefox broken with new test framework on GtiHub Actions
  • #​44779 OID4VC metadata endpoint returns deferred_credential_endpoint even if not supported oid4vc
  • #​44791 Workflows look up entries from the database on each event
  • #​44793 CredentialRequest with credentialIdentifier does not work when credential-offer was created by OAuth2 authorization_code grant oid4vc
  • #​44796 Claims configued by OID4VCI protocol mappers as mandatory are not enforced to be mandatory oid4vc
  • #​44802 Notification_id returned from the credential response oid4vc
  • #​44908 Run on server with remote uses old classes testsuite
  • #​44918 Workflow tests failing in CI testsuite
  • #​44940 JWTClientSecretAuthenticator throws NPE if client assertion is not set oidc
  • #​44947 Test framework supplier dependencies broken test-framework
  • #​44956 Remove unused azure-credentials input from azure-create-database action ci
  • #​44966 Missing message keys for USER_SESSION_DELETED admin/ui
  • #​44971 DefaultCryptoSdJwsTest.shouldValidateAgeSinceIssued_IfJwtIsTooOld() sometimes fails in CI ci
  • #​44990 Cannot run arquillian testsuite with quarkus-embedded due to dependency conflict testsuite
  • #​45001 Workflows documentation references wrong events core
  • #​45020 ${kc.org} Organisation Confirm Membership Title in messages_de.properties should be ${kc.org.name} translations
  • #​45023 [Docs CI] ExternalLinksTest.checkExternalLinks:41 Broken links (1) in guide 'server_admin' docs
  • #​45040 Docs: upgrading/topics/changes/changes-26_4_6.adoc docs
  • #​45052 Default redirect URI for an organization should be the Home URL of the account client organizations
  • #​45077 Workflows documentation has non-working workflow examples core
  • #​45085 Missing repeatHelp translation key in Time policy admin/ui
  • #​45108 Admin UI: User attribute filter reset does not refresh user list admin/ui
  • #​45114 AdminEvent.getResourcePath() returns paths with duplicated slashes (//) after upgrading Keycloak (26.4.1 → 26.4.7) admin/client-java
  • #​45133 AdminUI test Sessions › Add session data is broken admin/ui

v26.4.7

Compare Source

Upgrading

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

All resolved issues

Enhancements

  • #​43156 [Docs] Warn users about printing headers in HTTP access logs docs
  • #​43643 Upgrade to Quarkus 3.27.1 dist/quarkus

Bugs

  • #​44438 Intermittent ConcurrentModificationException during SAML initialization causing status code 400 for clients saml
  • #​44480 Wrong persistent group permissions when multiple group membership changes happen in the same request core

v26.4.6

Compare Source

Highlights

This release adds filtering of LDAP referrals by default. This change enhances security and aligns with best practices for LDAP configurations.

If you can not upgrade to this release yet, we recommend disabling LDAP referrals in all LDAP providers in all of your realms.

For detailed upgrade instructions, review the upgrading guide.

Upgrading

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

All resolved issues

Security fixes

  • #​44478 CVE-2025-13467 Deserialization of untrusted data in ldap user federation

Bugs

  • #​43323 Sessions not removed when user is deleted infinispan
  • #​43738 UPDATE_EMAIL action invalidates old email login/ui
  • #​43754 Flaky test: org.keycloak.testsuite.federation.ldap.LDAPProvidersIntegrationTest#updateLDAPUsernameTest ci
  • #​43812 Admin console sends non-JSON payload with content-type: application/json admin/ui
  • #​44125 Double-encoding of query parameter values (e.g. acr_values) for version 26.4 identity-brokering
  • #​44187 [Keycloak Docs CI] Broken links docs
  • #​44189 [jdbc-ping] SQLIntegrityConstraintViolationException: Duplicate entry infinispan
  • #​44229 Unexpected FORMAT_FAILURE error when using cache-config-file with feature-disabled=persistent-user-sessions infinispan
  • #​44269 Admin Client creates malformed paths for requests admin/client-js
  • #​44287 Caching of static theme resources in dev mode is disabled core

v26.4.5

Compare Source

Upgrading

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

All resolved issues

Bugs

  • #​42601 Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#testPostBrokerLoginFlowWithOTP ci
  • #​43212 Document missing artifact dependency for UserStoragePrivateUtil docs
  • #​43564 Invalid liquibase check sum for jpa-changelog-2.5.0.xml core
  • #​43718 Email Not Persisted During Registration When "Email as Username" is Enabled and User Edit Permission is Disabled user-profile
  • #​43793 import does not seem to run db migration import-export
  • #​43883 Creating group policy on a client uses "manage-clients" role if FGAP V1 is disabled authorization-services
  • #​44010 Ordering attributes will unset the unmanaged attribute policy user-profile
  • #​44031 Can't build keycloak 26.4.4 with quarkus.launch.rebuild=true dist/quarkus
  • #​44056 Allow only normalized URLs in requests caused a regression in view authz permission details in Admin Consol admin/ui
  • #​44117 DockerClientTest failure testsuite

v26.4.4

Compare Source

Upgrading

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

All resolved issues

Enhancements

  • #​10388 Allow to hide client scopes from scopes_supported in discovery endpoint
  • #​43076 Add rate limiter for sending verification emails in context of update email
  • #​43509 Role authorization for workflows. admin/api

Bugs

  • #​41270 Cannot save new attribute group admin/ui
  • #​41271 Changing user profile attribute results in an error everytime admin/ui
  • #​43082 ExternalLinksTest is broken due to missing path parameters docs
  • #​43091 Duplicate Email Fields on Temporarily Locked Out Sign In With Organization Identity-First Login login/ui
  • #​43160 Regression in DEBUG_PORT handling since 26.4.0 – host binding (*:port / 0.0.0.0:port) no longer works dist/quarkus
  • #​43460 FGAP/UI: `reset-password` succeeds but UI shows 403 without Users:manage admin/fine-grained-permissions
  • #​43505 DPoP proof replay check doesn't consider clock skew oidc
  • #​43516 Deleting Client is slow and fails when a lot of client sessions exist core
  • #​43578 "admin" client role now requires server admin user admin/api
  • #​43579 403 Forbidden when assigning realm-management client roles with realm-admin despite FGAP disabled (regression in 26.4.0+) admin/fine-grained-permissions
  • #​43596 FGAP: user can no longer open account management page, broken by `reset-password` admin/fine-grained-permissions
  • #​43621 Version 26.4.1 breaks existing ldap users with capital letters in username ldap
  • #​43682 When syncing roles, the database layer can see deadlocks
  • #​43698 Role Mapper is updating the user every time on login identity-brokering
  • #​43723 Only add the none verifier when attestation conveyance preference is none (or default) authentication/webauthn
  • #​43734 Refresh token allowed for offline session even the related scope is removed
  • #​43736 FGAP V2: reset-password scope error when viewing users with Group permissions only core
  • #​43744 Increased memory usage due to leaking KeycloakSession instances admin/api
  • #​43759 QuarkusKeycloakSession not garbage collected when running Liquibase dist/quarkus
  • #​43761 QuarkusKeycloakSession kept in memory for each timer core
  • #​43763 Normalizing of Keycloak URLs not documented dist/quarkus
  • #​43774 Under OLMv1 service monitor check uses wrong namespace operator
  • #​43785 QuarkusKeycloakSession leak in DeclarativeUserProfileProvider user-profile
  • #​43853 Ensure the logout endpoint removes the authentication session oidc
  • #​43863 JS CI failing after normalization testsuite

v26.4.3

Compare Source


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [org.keycloak:keycloak-parent](http://keycloak.org) ([source](https://github.com/keycloak/keycloak)) | `26.4.2` → `26.5.7` | ![age](https://developer.mend.io/api/mc/badges/age/maven/org.keycloak:keycloak-parent/26.5.7?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.keycloak:keycloak-parent/26.4.2/26.5.7?slim=true) | --- ### Release Notes <details> <summary>keycloak/keycloak (org.keycloak:keycloak-parent)</summary> ### [`v26.5.7`](https://github.com/keycloak/keycloak/releases/tag/26.5.7) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.6...26.5.7) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/45493">#&#8203;45493</a> CVE-2025-14083 keycloak-server: Keycloak: Improper Access Control in Admin REST API leads to information disclosure <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45569">#&#8203;45569</a> CVE-2026-1002 - io.vertx/vertx-core: static handler component cache can be manipulated to deny the access to static files </li> <li><a href="https://github.com/keycloak/keycloak/issues/47069">#&#8203;47069</a> CVE-2026-3429 Improper Access Control for LoA During Credential Deletion <code>account/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/47716">#&#8203;47716</a> CVE-2026-4634 Keycloak Application-Level DoS via Scope Processing </li> <li><a href="https://github.com/keycloak/keycloak/issues/47717">#&#8203;47717</a> CVE-2026-4636 UMA Policy Resource Injection Allows Unauthorized Cross-User Permission Grants </li> <li><a href="https://github.com/keycloak/keycloak/issues/47718">#&#8203;47718</a> CVE-2026-3872 Redirect URI validation bypass via ..;/ path traversal in OIDC auth endpoint </li> <li><a href="https://github.com/keycloak/keycloak/issues/47719">#&#8203;47719</a> CVE-2026-4282 Privilege escalation via forged authorization codes due to SingleUseObjectProvider isolation flaw </li> </ul> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/46631">#&#8203;46631</a> Upgrade to Quarkus 3.27.3 <code>dist/quarkus</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/45204">#&#8203;45204</a> Call without Host header throws uncaught error <code>core</code></li> </ul> </div> ### [`v26.5.6`](https://github.com/keycloak/keycloak/releases/tag/26.5.6) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.5...26.5.6) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/45645">#&#8203;45645</a> CVE-2026-1180 - Blind Server-Side Request Forgery (SSRF) in Keycloak OIDC Dynamic Client Registration via jwks_uri <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45647">#&#8203;45647</a> CVE-2026-1035 - Keycloak Refresh Token Reuse Bypass via TOCTOU Race Condition <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45650">#&#8203;45650</a> CVE-2025-14777 - Keycloak IDOR in realm client creating/deleting </li> <li><a href="https://github.com/keycloak/keycloak/issues/45653">#&#8203;45653</a> CVE-2025-14082 keycloak-server: Keycloak Admin REST API: Improper Access Control leads to sensitive role metadata information disclosure </li> <li><a href="https://github.com/keycloak/keycloak/issues/46719">#&#8203;46719</a> CVE-2026-3121 - Keycloak: Privilege escalation via manage-clients permission </li> <li><a href="https://github.com/keycloak/keycloak/issues/46723">#&#8203;46723</a> CVE-2026-3190 - Information Disclosure via improper role enforcement in UMA 2.0 Protection API <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46922">#&#8203;46922</a> CVE-2026-3911 Keycloak: Information disclosure of disabled user attributes via administrative endpoint <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/47062">#&#8203;47062</a> CVE-2026-2366 Authorization Bypass: Unprivileged tokens can enumerate user organization memberships <code>organizations</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/45889">#&#8203;45889</a> Federated user disabled when external DB unavailable, never re-enabled <code>storage</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46239">#&#8203;46239</a> AUTH_SESSION_ID cookie reuse causes cross-user session contamination on re-authentication <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46296">#&#8203;46296</a> UsersResource.search briefRepresentation started to return user attributes <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46379">#&#8203;46379</a> Unexpected error when logging out with offline session and external IDP <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46459">#&#8203;46459</a> Operator-built DB config: targetServerType=primary not applied / connection validation not working after master-replica failover (26.5.0) <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46588">#&#8203;46588</a> Partial LDAP sync duration does not follow the defined value in user federation <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46605">#&#8203;46605</a> 26.5.4 startup regression with many realms: RealmCacheSession.prepareCachedRealm() scans master admin role composites per realm (O(N²)) <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46656">#&#8203;46656</a> Em-Hyphens in SPI options on cache configuration page <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46663">#&#8203;46663</a> JGroups bind port configuration ignored when --cache-embedded-network-bind-port set <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46669">#&#8203;46669</a> SPIFFE Client assertion throws a NullPointerException if no client is found <code>token-exchange</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/47079">#&#8203;47079</a> Do not allow fetching organizations of a member if not a member of the current organization <code>organizations</code></li> </ul> </div> ### [`v26.5.5`](https://github.com/keycloak/keycloak/releases/tag/26.5.5) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.4...26.5.5) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/46909">#&#8203;46909</a> CVE-2026-3047 SAML broker: Authentication bypass due to disabled SAML client completing IdP-initiated login </li> <li><a href="https://github.com/keycloak/keycloak/issues/46910">#&#8203;46910</a> CVE-2026-3009 Improper Enforcement of Disabled Identity Provider in IdentityBrokerService </li> <li><a href="https://github.com/keycloak/keycloak/issues/46911">#&#8203;46911</a> CVE-2026-2603 Disabled SAML IdP still allows IdP-initiated broker login </li> <li><a href="https://github.com/keycloak/keycloak/issues/46912">#&#8203;46912</a> CVE-2026-2092 saml broker encrypted assertion injection </li> </ul> </div> ### [`v26.5.4`](https://github.com/keycloak/keycloak/releases/tag/26.5.4) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.3...26.5.4) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/45646">#&#8203;45646</a> CVE-2026-1190 - Keycloak SAML brokering: Response delay due to unchecked NotOnOrAfter in SubjectConfirmationData <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45649">#&#8203;45649</a> CVE-2026-0707: Keycloak Authorization Header Parsing Leading to Potential Security Control Bypass </li> <li><a href="https://github.com/keycloak/keycloak/issues/45776">#&#8203;45776</a> CVE-2025-5416 keycloak-core: Keycloak Environment Information </li> <li><a href="https://github.com/keycloak/keycloak/issues/46372">#&#8203;46372</a> CVE-2026-2575 - Denial of Service due to excessive SAMLRequest decompression <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46462">#&#8203;46462</a> CVE-2026-2733 Missing Check on Disabled Client for Docker Registry Protocol </li> </ul> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/46090">#&#8203;46090</a> New key affinity for session ids </li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44488">#&#8203;44488</a> "Update email" AIA: "Back to Application" URL invokes OIDC callback with missing parameters <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45065">#&#8203;45065</a> Client deletion timeout due to large number of client roles <code>storage</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45680">#&#8203;45680</a> auth_mellon (SAML) authentication fails after upgrade to 26.5.1 (from 26.4.6) <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45728">#&#8203;45728</a> Information Disclosure of Client Secret on Unauthenticated Config Endpoint <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45874">#&#8203;45874</a> Disabled organizations still resolve in organization‑aware login flows <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45966">#&#8203;45966</a> KeycloakRealmImport: Realm created in DB but not visible in Admin Console until restart <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45980">#&#8203;45980</a> Keycloak cluster with 3 nodes and jdbc-ping stack fails to rejoin after temporary network partition <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46100">#&#8203;46100</a> Makes Database Query on Every Login Page Load Instead of Using Cache <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46150">#&#8203;46150</a> Move upgrading note for SAML to 26.5.4 <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46178">#&#8203;46178</a> Regression: cannot authenticate in keycloak-admin-client <code>adapter/javascript</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46290">#&#8203;46290</a> Incorrect code used error, leading to "400 / Code already used" during Infinispan state transfers <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46303">#&#8203;46303</a> JWT Authorization Grant: Always getting “Token was issued too far in the past to be used now” for EntraID issued tokens <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/46312">#&#8203;46312</a> io.fabric8:docker-maven-plugin:0.40.3:start failed: Cannot invoke "com.google.gson.JsonElement.isJsonNull()" because the return value of "com.google.gson.JsonObject.get(String)" is null <code>ci</code></li> </ul> </div> ### [`v26.5.3`](https://github.com/keycloak/keycloak/releases/tag/26.5.3) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.2...26.5.3) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/46144">#&#8203;46144</a> CVE-2026-1609 Disabled users can still obtain tokens via JWT Authorization Grant </li> <li><a href="https://github.com/keycloak/keycloak/issues/46145">#&#8203;46145</a> CVE-2026-1529 Forged invitation JWT enables cross-organization self-registration </li> <li><a href="https://github.com/keycloak/keycloak/issues/46146">#&#8203;46146</a> CVE-2026-1486 Logic Bypass in JWT Authorization Grant Allows Authentication via Disabled Identity Providers </li> <li><a href="https://github.com/keycloak/keycloak/issues/46147">#&#8203;46147</a> CVE-2025-14778 Incorrect ownership checks in /uma-policy/ </li> </ul> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/45892">#&#8203;45892</a> Upgrade minikube for CI tests <code>operator</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44379">#&#8203;44379</a> Node.js admin client does not refresh tokens <code>admin/client-js</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45459">#&#8203;45459</a> k8s multiple restart (oomkilled) in v26.5.0-0 during startup because of RAM <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45662">#&#8203;45662</a> Increase in startup memory consumption in post 26.5 versions <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45677">#&#8203;45677</a> Hibernate Validator is enabled by default when not used <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45708">#&#8203;45708</a> Unpexted value '' in mixed-cluster-compatibility-tests <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45745">#&#8203;45745</a> mixed-cluster-compatibility-tests fail due to incorrectly masked content in 26.5 branch <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45755">#&#8203;45755</a> Broken YAML indentation in operator rolling updates doc <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45780">#&#8203;45780</a> Remove fatal log messages from `ConsistentHash` </li> </ul> </div> ### [`v26.5.2`](https://github.com/keycloak/keycloak/releases/tag/26.5.2) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.1...26.5.2) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44994">#&#8203;44994</a> CVE-2025-67735 - netty-codec-http: Request Smuggling via CRLF Injection <code>dependencies</code></li> </ul> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/43443">#&#8203;43443</a> Keycloak should warn when ISPN or JGROUPS is running in debug level logging </li> <li><a href="https://github.com/keycloak/keycloak/issues/45498">#&#8203;45498</a> Ignore OpenAPI artifacts when disabled <code>dist/quarkus</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44785">#&#8203;44785</a> Can not get through SSO login if using a custom attribute with default value <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45015">#&#8203;45015</a> Deadlock in Infinispan virtual threads <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45250">#&#8203;45250</a> IDToken contains duplicate address claims <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45333">#&#8203;45333</a> User admin events don't show role, group mapping, reset password like events <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45396">#&#8203;45396</a> Database Migration fails when updating to 26.5.0 on MS SQL <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45415">#&#8203;45415</a> cache-remote-host becomes mandatory at build time when using clusterless feature <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45417">#&#8203;45417</a> Unmanaged Attributes Type (Only administrators can view) allows admin API to set Unmanaged Attributes <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45474">#&#8203;45474</a> Admin REST API document is not up to date <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45526">#&#8203;45526</a> Regression (26.5.1): Organizations domain resolution fails on MariaDB/MySQL due to ORG/ORG_DOMAIN collation mismatch <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45533">#&#8203;45533</a> Keycloak should not allow matrix parameters in URLs as we don't use them <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45570">#&#8203;45570</a> CVE-2025-66560 - io.quarkus/quarkus-rest: Quarkus REST Worker Thread Exhaustion Vulnerability </li> <li><a href="https://github.com/keycloak/keycloak/issues/45584">#&#8203;45584</a> Keycloak supported specs should list DPoP as supported <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45590">#&#8203;45590</a> OIDCIdentityProviderConfig issuer configuration <code>token-exchange</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45597">#&#8203;45597</a> Possible mismatch of charset/collation between columns on mysql/mariadb <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45651">#&#8203;45651</a> CVE-2025-14559 keycloak-services: Keycloak keycloak-services: Business logic flaw allows unauthorized token issuance for disabled users </li> </ul> </div> ### [`v26.5.1`](https://github.com/keycloak/keycloak/releases/tag/26.5.1) [Compare Source](https://github.com/keycloak/keycloak/compare/26.5.0...26.5.1) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44863">#&#8203;44863</a> x-robots HTTP header missing for static Keycloak resources, and REST endpoint responses </li> <li><a href="https://github.com/keycloak/keycloak/issues/45009">#&#8203;45009</a> Performance improvement: Missing indexes on BROKER_LINK table columns </li> <li><a href="https://github.com/keycloak/keycloak/issues/45182">#&#8203;45182</a> Allow full managing of realms from master realm without global admin role </li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/43975">#&#8203;43975</a> Test Framework -> Embedded server -> Maven execution failure: Failed to read script file from: scripts/default-policy.js <code>test-framework</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44371">#&#8203;44371</a> 403 Forbidden when assigning realm-management client roles despite FGAP disabled (regression in 26.4.0+) <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44417">#&#8203;44417</a> Security issue with Organization feature exposes and fills the account name automatically in user/password form <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44783">#&#8203;44783</a> Create Realm button is missing when user has create-realm role <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44860">#&#8203;44860</a> Admin UI: slow response time listing second user page <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45003">#&#8203;45003</a> Bug in JWTClientAuthenticator and JWTClientSecretAuthenticator causes NPE <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45093">#&#8203;45093</a> Enable visibility of Role Mapping tab for users with view-users role <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45107">#&#8203;45107</a> Failed upgrade to 26.4.7 - sql generated for manual database upgrade contains invalid statements <code>storage</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45116">#&#8203;45116</a> Realm-level admininistrators can no longer use Admin Console since 26.3.0 (UI fails to render) <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45185">#&#8203;45185</a> ExternalLinkTest fails due to missing _adding_context_for_log_messages anchor <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45226">#&#8203;45226</a> Failure when decrypting SAML Response since 26.5.0 <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45239">#&#8203;45239</a> Upgrade to 26.5.0 failing due to FK_ORG_INVITATION_ORG constraint <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45257">#&#8203;45257</a> Creating IdentityProvider with latest java admin-client may fail against Keycloak server 26.4 or older <code>admin/client-java</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45307">#&#8203;45307</a> UI Bug: WebAuthn passkey list is broken in keycloak v2 theme <code>login/ui</code></li> </ul> </div> ### [`v26.5.0`](https://github.com/keycloak/keycloak/releases/tag/26.5.0) [Compare Source](https://github.com/keycloak/keycloak/compare/26.4.7...26.5.0) <div> <h2>Highlights</h2> <div class="paragraph"> <p>This release features new capabilities for users and administrators of Keycloak. The highlights of this release are:</p> </div> <div class="ulist"> <ul> <li> <p>Workflows to automate administrative tasks and process within a realm.</p> </li> <li> <p>JWT Authorization Grants, our recommended alternative to external to internal token exchange.</p> </li> <li> <p>Guide for using Keycloak as an authorization server for Model Context Protocol (MCP) servers.</p> </li> <li> <p>Authenticating clients with Kubernetes service account tokens to avoid static client secrets.</p> </li> <li> <p>OpenTelemetry support for metrics and logging, combining all observability information in this popular standard.</p> </li> </ul> </div> <div class="paragraph"> <p>Read on to learn more about each new feature. If you are upgrading from a previous release, <a href="https://www.keycloak.org/docs/latest/upgrading/index.html">review also the changes listed in the upgrading guide</a>.</p> </div> <div class="sect2"> <h3 id="_security_and_standards">Security and Standards</h3> <div class="sect3"> <h4 id="_jwt_authorization_grant_preview">JWT Authorization Grant (preview)</h4> <div class="paragraph"> <p>Keycloak 26.5 introduces a new feature called JWT Authorization Grant, which adds support for <a href="https://datatracker.ietf.org/doc/html/rfc7523">RFC 7523</a> to use external signed JWT assertions to request OAuth 2.0 access tokens.</p> </div> <div class="paragraph"> <p>To accept signed JWT assertions, a trust relationship must be established between the external provider and Keycloak. This trust relationship can be configured through an identity provider in a dedicated section of the OpenID Connect v1.0 identity provider, or through the new JWT Authorization Grant identity provider.</p> </div> <div class="paragraph"> <p>JWT Authorization Grant is recommended as an alternative to <a href="https://www.keycloak.org/securing-apps/token-exchange#_external-token-to-internal-token-exchange">External to internal token exchange V1</a>. This feature is in preview, and additional details are available in the <a href="https://www.keycloak.org/securing-apps/jwt-authorization-grant">dedicated documentation</a>.</p> </div> </div> <div class="sect3"> <h4 id="_using_keycloak_as_an_authorization_server_for_model_context_protocol_mcp_servers">Using Keycloak as an authorization server for Model Context Protocol (MCP) servers</h4> <div class="paragraph"> <p>Using Keycloak as an authorization server for Model Context Protocol (MCP) servers is becoming popular, so this release ships additional documentation on how to do this.</p> </div> <div class="paragraph"> <p>See <a href="https://www.keycloak.org/securing-apps/mcp-authz-server">Integrating with Model Context Protocol (MCP)</a> for the new guide.</p> </div> <div class="paragraph"> <p>Many thanks to <a href="https://github.com/tnorimat">Takashi Norimatsu</a> for the contribution.</p> </div> </div> <div class="sect3"> <h4 id="_cors_enhancements">CORS enhancements</h4> <div class="paragraph"> <p>CORS (Cross Origin Resource Sharing) is a browser security feature that controls how web pages on one domain can request resources from a different domain.</p> </div> <div class="paragraph"> <p>For the OpenID Connect Dynamic Client Registration, you can now specify which CORS headers are allowed via the client registration access policies.</p> </div> <div class="paragraph"> <p>For the overall CORS configuration, you can now allow environment specific headers to be allowed using the SPI option <code>spi-cors--default--allowed-headers</code>.</p> </div> </div> <div class="sect3"> <h4 id="_logout_confirmation_page">Logout confirmation page</h4> <div class="paragraph"> <p>The client logout configuration now includes an option to show a logout confirmation page. When enabled, users will see a &#&#8203;8220;You are logged out&#&#8203;8221; confirmation page upon successful logout.</p> </div> <div class="paragraph"> <p>Many thanks to <a href="https://github.com/slaskawi">Sebastian Łaskawiec</a> for the contribution.</p> </div> </div> <div class="sect3"> <h4 id="_hiding_openid_connect_scopes_from_the_discovery_endpoint">Hiding OpenID Connect scopes from the discovery endpoint</h4> <div class="paragraph"> <p>Previously, all scopes of an OpenID Connect client were advertised in the discovery endpoint.</p> </div> <div class="paragraph"> <p>In some situation you might want to avoid it, as the calling client, for example, an MCP server might not support it, or you might want to hide some scopes for preventing their discovery via public APIs.</p> </div> <div class="paragraph"> <p>You can now prevent this by disabling <strong>Include in OpenID Provider Metadata</strong>.</p> </div> </div> </div> <div class="sect2"> <h3 id="_administration">Administration</h3> <div class="sect3"> <h4 id="_workflows_preview">Workflows (preview)</h4> <div class="paragraph"> <p>Keycloak introduces a new preview feature called Workflows, which allows administrators to automate administrative tasks and process within a realm, introducing a key capability for Identity Governance and Administration (IGA).</p> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/docs/26.5.0/server_admin/#_managing_workflows">Server Administration Guide</a>.</p> </div> </div> <div class="sect3"> <h4 id="_federated_client_authentication_preview">Federated client authentication (preview)</h4> <div class="paragraph"> <p>Federated client authentication remains preview due to receiving a number of enhancements and fixes.</p> </div> <div class="paragraph"> <p>There is now preview support to use Kubernetes service accounts tokens as credentials for clients, which avoids static secrets for OpenID Connect clients.</p> </div> <div class="paragraph"> <p>See <a href="https://www.keycloak.org/docs/latest/server_admin/index.html#_identity_broker_kubernetes">Kubernetes identity providers</a> in the Server Administration Guide for details.</p> </div> </div> <div class="sect3"> <h4 id="_organization_invitation_management">Organization invitation management</h4> <div class="paragraph"> <p>Organization administrators can now manage organization invitations through both the Admin Console and REST API:</p> </div> <div class="ulist"> <ul> <li> <p>View all sent invitations with their current status (Pending, Expired)</p> </li> <li> <p>Resend pending invitations to recipients</p> </li> <li> <p>Delete invitation records from the system</p> </li> <li> <p>Filter invitations by status for easier management</p> </li> </ul> </div> <div class="paragraph"> <p>All invitations are now persistently stored in the database, providing better tracking and management capabilities.</p> </div> <div class="paragraph"> <p>The invitation management features are available in the <strong>Invitations</strong> tab when managing an organization in the Admin Console, and through the Organizations REST API endpoints under <code>/admin/realms/{realm}/orgs/{orgId}/invitations</code>.</p> </div> </div> <div class="sect3"> <h4 id="_new_event_user_session_deleted">New event <code>USER_SESSION_DELETED</code></h4> <div class="paragraph"> <p>For each expired user session there is a new user event <code>USER_SESSION_DELETED</code> fired. This event is published approximately 3-10 minutes after the session has expired depending on job scheduling and load on the system. By default, this event is not persisted.</p> </div> </div> </div> <div class="sect2"> <h3 id="_configuring_and_running">Configuring and Running</h3> <div class="sect3"> <h4 id="_containers_for_powerpc_64_bit_little_endian_architecture">Containers for PowerPC 64-bit Little Endian architecture</h4> <div class="paragraph"> <p>The containers for both the Keycloak and its operator are not available as well for the PowerPC 64-bit Little Endian (ppc64le) architecture. This is in addition to the existing amd64 and arm64.</p> </div> <div class="paragraph"> <p>We expect this to allow users to optimize their usage of open hardware and power consumption.</p> </div> </div> <div class="sect3"> <h4 id="_improved_server_response_times">Improved server response times</h4> <div class="paragraph"> <p>Authentication, user, and client sessions are now created on the respective Keycloak node and avoid extra remote calls to neighbors when reading or writing them to the embedded caches. When you have sticky sessions enabled in your loadbalancer, you will benefit from this feature automatically, and you should see reduced response times when authenticating users.</p> </div> <div class="paragraph"> <p>Expired user sessions are now deleted from the database in small batches, instead of issuing a delete statements that affects the whole table. This should allow for better response times when there are a lot of sessions in the table.</p> </div> </div> <div class="sect3"> <h4 id="_enhanced_http_performance_preview">Enhanced HTTP performance (preview)</h4> <div class="paragraph"> <p>You can now enable a more efficient way to handle JSON data in the HTTP layer. This change increases throughput by ~5%, stabilizes response times, and reduces system resource usage.</p> </div> <div class="paragraph"> <p>In order to apply it, you need to explicitly enable the feature <code>http-optimized-serializers</code>.</p> </div> <div class="admonitionblock note"> <table> <tr> <td class="icon"> <div class="title">Note</div> </td> <td class="content"> This feature is <strong>preview</strong>. We gather more feedback about potential issues in <a href="https://github.com/keycloak/keycloak/discussions/43484">this discussion</a>. We appreciate any feedback. </td> </tr> </table> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/server/configuration-production">Configuring Keycloak for production</a> guide.</p> </div> </div> <div class="sect3"> <h4 id="_configure_retry_behavior_for_outgoing_http_requests">Configure retry behavior for outgoing HTTP requests</h4> <div class="paragraph"> <p>Keycloak has now more flexibility how to configure retrying of outgoing HTTP requests. This is useful for handling transient network errors or temporary unavailability of the service where Keycloak needs to send HTTP request. Retry behavior is disabled by default and must be explicitly enabled. More details are available in the <a href="https://www.keycloak.org/server/outgoinghttp">Outgoing HTTP requests documentation</a>.</p> </div> <div class="paragraph"> <p>Many thanks to <a href="https://github.com/chance-coleman">Chance Coleman</a> for the contribution.</p> </div> </div> <div class="sect3"> <h4 id="_enabledisable_features_via_a_single_option">Enable/disable features via a single option</h4> <div class="paragraph"> <p>You can now enable or disable individual features using the <code>feature-&lt;name&gt;</code> option (like <code>feature-spiffe=enabled</code>).</p> </div> <div class="paragraph"> <p>This provides a more fine-grained way to manage features and eliminates the need to maintain long lists of enabled or disabled features.</p> </div> <div class="paragraph"> <p>The <code>feature-&lt;name&gt;</code> option takes precedence over both <code>features</code> and <code>features-disabled</code>.</p> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/server/features">Enabling and disabling features</a> guide.</p> </div> </div> <div class="sect3"> <h4 id="_client_certificate_lookup_compliant_with_rfc_9440">Client certificate lookup compliant with RFC 9440</h4> <div class="paragraph"> <p>You can now use a new client certificate lookup provider that is compliant with <a href="https://datatracker.ietf.org/doc/html/rfc9440">RFC 9440</a>. This enables native support e.g. for Caddy and other reverse proxies that follow the RFC. For details, navigate to <a href="https://www.keycloak.org/server/reverseproxy#_enabling_client_certificate_lookup">Enabling Client Certificate Lookup</a> section of the documentation.</p> </div> </div> <div class="sect3"> <h4 id="_running_keycloak_as_a_windows_service">Running Keycloak as a Windows service</h4> <div class="paragraph"> <p>Keycloak can now be installed and run as a Windows service using Apache Commons Daemon (Procrun). The new <code>tools windows-service</code> CLI subcommand simplifies service installation and uninstallation.</p> </div> <div class="paragraph"> <p>The service runs <code>kc.bat start</code> as an external process, ensuring all environment variables and configuration files are respected. This provides seamless integration with the Windows Services management console and enables automatic startup on system boot without requiring a user to be logged on.</p> </div> <div class="paragraph"> <p>For more information, see the <a href="https://www.keycloak.org/server/windows-service">Running Keycloak as a Windows Service</a> guide.</p> </div> </div> </div> <div class="sect2"> <h3 id="_observability">Observability</h3> <div class="sect3"> <h4 id="_opentelemetry_enhancements">OpenTelemetry enhancements</h4> <div class="sect4"> <h5 id="_opentelemetry_logs_preview">OpenTelemetry Logs (preview)</h5> <div class="paragraph"> <p>Keycloak now supports exporting logs to OpenTelemetry collectors, enabling centralized log management. This preview feature allows you to export Keycloak logs to any OpenTelemetry-compatible backend and use the same OpenTelemetry collector for logs, metrics and traces.</p> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/observability/telemetry">Centralize your observability stack with OpenTelemetry</a> guide.</p> </div> </div> <div class="sect4"> <h5 id="_opentelemetry_metrics_experimental">OpenTelemetry Metrics (experimental)</h5> <div class="paragraph"> <p>Keycloak now provides the experimental support for exporting metrics to OpenTelemetry collectors by using the <a href="https://quarkus.io/guides/telemetry-micrometer-to-opentelemetry">Micrometer-to-OpenTelemetry bridge</a>. This experimental feature allows you to export Keycloak metrics to any OpenTelemetry-compatible backend and use the same OpenTelemetry collector for logs, metrics and traces.</p> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/observability/telemetry">Centralize your observability stack with OpenTelemetry</a> guide.</p> </div> </div> <div class="sect4"> <h5 id="_export_traces_with_custom_request_headers">Export traces with custom request headers</h5> <div class="paragraph"> <p>It is now possible to set request headers for exporting traces via OpenTelemetry Protocol (OTLP). It is mainly useful for providing tokens in the request.</p> </div> <div class="paragraph"> <p>You can specify these headers via the <code>tracing-header-&lt;header&gt;</code> wildcard option, accepting any custom header name.</p> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/observability/tracing">Root cause analysis with tracing</a> guide.</p> </div> </div> </div> <div class="sect3"> <h4 id="_mdc_logging_feature_supported">MDC Logging feature (supported)</h4> <div class="paragraph"> <p>The <code>log-mdc:v1</code> feature has been promoted from a preview feature to a supported feature.</p> </div> <div class="paragraph"> <p>MDC enables Keycloak to enrich log entries with contextual information such as realm, client, user ID and IP address, significantly improving debugging and observability.</p> </div> <div class="paragraph"> <p>For more details, see the <a href="https://www.keycloak.org/server/logging#_adding_context_for_log_messages">Adding context for log messages</a> guide.</p> </div> </div> </div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Deprecated features</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44121">#&#8203;44121</a> Deprecate Fine-Grained Admin Permissions v1 <code>admin/fine-grained-permissions</code></li> </ul> <h3>Removed features</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/42905">#&#8203;42905</a> Remove PostgreSQL 13.x support </li> </ul> <h3>New features</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/20761">#&#8203;20761</a> Support Caddy as a Reverse Proxy Provider for Client Certificate Authentication <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/37704">#&#8203;37704</a> Support for running Keycloak as a Windows Service </li> <li><a href="https://github.com/keycloak/keycloak/issues/38809">#&#8203;38809</a> Feature Request: Track Pending Organization Invitations in Keycloak Admin Console </li> <li><a href="https://github.com/keycloak/keycloak/issues/39221">#&#8203;39221</a> Admin API v2: Blueprint </li> <li><a href="https://github.com/keycloak/keycloak/issues/41261">#&#8203;41261</a> OpenTelemetry Support <code>observability</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42482">#&#8203;42482</a> Possibility to backchannel logout the clients belonging to a specific user session </li> <li><a href="https://github.com/keycloak/keycloak/issues/42912">#&#8203;42912</a> Containers for ppc64le </li> <li><a href="https://github.com/keycloak/keycloak/issues/43020">#&#8203;43020</a> Secure Client-Initiated Renegotiation - disable by default <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43106">#&#8203;43106</a> Expose scheduled tasks and start time </li> <li><a href="https://github.com/keycloak/keycloak/issues/44312">#&#8203;44312</a> Add support to use `kcw` with remote test server <code>test-framework</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44458">#&#8203;44458</a> Expose a configuration option to always display a logout confirmation screen </li> </ul> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/8863">#&#8203;8863</a> Add CORS support to OIDC dynamic client registration endpoints </li> <li><a href="https://github.com/keycloak/keycloak/issues/10388">#&#8203;10388</a> Allow to hide client scopes from scopes_supported in discovery endpoint </li> <li><a href="https://github.com/keycloak/keycloak/issues/12682">#&#8203;12682</a> Allow CORS Access-Control-Allow-Headers customization <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/14509">#&#8203;14509</a> Allow configuration for SMTP timeouts via configuration </li> <li><a href="https://github.com/keycloak/keycloak/issues/15502">#&#8203;15502</a> Ability to remove offline_access tokens from the Account Management client and/or Admin interface <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/17268">#&#8203;17268</a> [KC 20+] Obsolete/wrong documentation about service accounts? </li> <li><a href="https://github.com/keycloak/keycloak/issues/22938">#&#8203;22938</a> Fine-grained admin permission client manage does not work for an Authorization enabled client <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/33009">#&#8203;33009</a> Delete Client and role's admin event doesn't have representation while other delete entities have the representation <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/33146">#&#8203;33146</a> Prevent users configuring max-count=-1 for caches with a default upper-bound <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/35836">#&#8203;35836</a> SMTP Timeout Override </li> <li><a href="https://github.com/keycloak/keycloak/issues/38843">#&#8203;38843</a> Set `automountServiceAccountToken: false` on Keycloak pods <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/39881">#&#8203;39881</a> Picture of the token-exchange flow in the documentation <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/40799">#&#8203;40799</a> Provide a way to add custom labels to Realm Import job of Keycloak operator </li> <li><a href="https://github.com/keycloak/keycloak/issues/41006">#&#8203;41006</a> [OTel] Micrometer to OpenTelemetry bridge support for metrics <code>observability</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41007">#&#8203;41007</a> Including OTLP headers for authorization </li> <li><a href="https://github.com/keycloak/keycloak/issues/41019">#&#8203;41019</a> Validate client session session timeout and lifetime settings on edit <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41205">#&#8203;41205</a> Make MDC logging supported </li> <li><a href="https://github.com/keycloak/keycloak/issues/41263">#&#8203;41263</a> [OTel] Provide general options for telemetry settings <code>observability</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41264">#&#8203;41264</a> [OTel] Introduce preview support for OpenTelemetry Logs <code>observability</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41425">#&#8203;41425</a> Add more fields to the Welcome Page </li> <li><a href="https://github.com/keycloak/keycloak/issues/42124">#&#8203;42124</a> Add operation to cancel a workflow execution for a resource </li> <li><a href="https://github.com/keycloak/keycloak/issues/42223">#&#8203;42223</a> Create a LocalCacheProvider SPI </li> <li><a href="https://github.com/keycloak/keycloak/issues/42386">#&#8203;42386</a> [RLM] Review the action execution thread model </li> <li><a href="https://github.com/keycloak/keycloak/issues/42401">#&#8203;42401</a> Add configurable retry logic for OCSP certificate validation checks <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42445">#&#8203;42445</a> Default to log color enabled </li> <li><a href="https://github.com/keycloak/keycloak/issues/42446">#&#8203;42446</a> Make picocli auto color match the quarkus logic </li> <li><a href="https://github.com/keycloak/keycloak/issues/42618">#&#8203;42618</a> [RLM] - Allow updating workflow conditions </li> <li><a href="https://github.com/keycloak/keycloak/issues/42644">#&#8203;42644</a> No longer able to set a Keycloak Admin Client timeout <code>admin/client-js</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42687">#&#8203;42687</a> [RLM] - Ability to define workflows with YAML </li> <li><a href="https://github.com/keycloak/keycloak/issues/42694">#&#8203;42694</a> Workflows: review test coverage <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42695">#&#8203;42695</a> Workflows: Add OpenAPI annotations to all API methods </li> <li><a href="https://github.com/keycloak/keycloak/issues/42696">#&#8203;42696</a> [RLM] Review implemented conditions and add toPredicate implementation </li> <li><a href="https://github.com/keycloak/keycloak/issues/42704">#&#8203;42704</a> SELECT COUNT(*) FROM called multiple times for an index creation <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42715">#&#8203;42715</a> incorrect flow with login_hint specified for user in org email domain <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42776">#&#8203;42776</a> Session cache affinity </li> <li><a href="https://github.com/keycloak/keycloak/issues/42835">#&#8203;42835</a> Make API endpoint linkable in documentation <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42910">#&#8203;42910</a> [RLM] - Restarting a workflow for a resource based on the step chain <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42911">#&#8203;42911</a> [RLM] - Canceling workflows for a given resources when a new event is triggered </li> <li><a href="https://github.com/keycloak/keycloak/issues/42913">#&#8203;42913</a> [RLM] - Allow using time-based tokens when setting fields that expect a period or time </li> <li><a href="https://github.com/keycloak/keycloak/issues/42917">#&#8203;42917</a> Chore: Add missing translations for Korean (ko) </li> <li><a href="https://github.com/keycloak/keycloak/issues/42945">#&#8203;42945</a> [PERF] Jackson reflection-free serialization/deserialization <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42961">#&#8203;42961</a> [RLM] - Cache expressions using as a component note </li> <li><a href="https://github.com/keycloak/keycloak/issues/42990">#&#8203;42990</a> Hide read-only email attribute in update profile context with update email enabled <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42991">#&#8203;42991</a> Final review and update for UPDATE_EMAIL documentation <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43015">#&#8203;43015</a> Log FIPS provider using info debug level </li> <li><a href="https://github.com/keycloak/keycloak/issues/43076">#&#8203;43076</a> Add rate limiter for sending verification emails in context of update email </li> <li><a href="https://github.com/keycloak/keycloak/issues/43125">#&#8203;43125</a> Divide logging guide to sub-guides for every log handler <code>observability</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43137">#&#8203;43137</a> [RLM] Review naming of events to be in the past tense <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43156">#&#8203;43156</a> [Docs] Warn users about printing headers in HTTP access logs <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43183">#&#8203;43183</a> Relax CORS policy on credential offer endpoint </li> <li><a href="https://github.com/keycloak/keycloak/issues/43214">#&#8203;43214</a> [OID4VC] Ensure authorization_details from PAR requests are properly returned in token responses for conformace tests <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43256">#&#8203;43256</a> Expiry event for user sessions and timely DB removal of sessions </li> <li><a href="https://github.com/keycloak/keycloak/issues/43351">#&#8203;43351</a> Make pending email verification attribute removable by admin <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43357">#&#8203;43357</a> JDBC_PING should publish its physical address on startup </li> <li><a href="https://github.com/keycloak/keycloak/issues/43360">#&#8203;43360</a> Add the user session in the session context when it is validated or created </li> <li><a href="https://github.com/keycloak/keycloak/issues/43362">#&#8203;43362</a> Reduce the number entity manager flushes when creating a realm </li> <li><a href="https://github.com/keycloak/keycloak/issues/43365">#&#8203;43365</a> When reading events for the database, read them read-only </li> <li><a href="https://github.com/keycloak/keycloak/issues/43421">#&#8203;43421</a> All config formatting for list options could be improved </li> <li><a href="https://github.com/keycloak/keycloak/issues/43450">#&#8203;43450</a> Workflows UI needs to implement authorization <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43456">#&#8203;43456</a> Run time comparisons in SD-JWT and SD-JWT VP verification with account of possible clock skew </li> <li><a href="https://github.com/keycloak/keycloak/issues/43466">#&#8203;43466</a> Picocli refinements </li> <li><a href="https://github.com/keycloak/keycloak/issues/43509">#&#8203;43509</a> Role authorization for workflows. <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43512">#&#8203;43512</a> Export default routes from npm UI packages </li> <li><a href="https://github.com/keycloak/keycloak/issues/43536">#&#8203;43536</a> Remove need to specify workflow condition parameter in double quotes <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43537">#&#8203;43537</a> Fix inconsistencies in workflow condition evaluation <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43538">#&#8203;43538</a> Ensure delete-user step doesn't trigger removal of federated user from federation provider <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43541">#&#8203;43541</a> Ability to enable/disable feature via single property </li> <li><a href="https://github.com/keycloak/keycloak/issues/43559">#&#8203;43559</a> Add validation for Workflwow, Condition and Steps fields <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43604">#&#8203;43604</a> Warn or error on duplicate options <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43611">#&#8203;43611</a> Allow non-optimized start to run without a separate vm launch </li> <li><a href="https://github.com/keycloak/keycloak/issues/43643">#&#8203;43643</a> Upgrade to Quarkus 3.27.1 <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43650">#&#8203;43650</a> SPIFFE should support OIDC JWK endpoint </li> <li><a href="https://github.com/keycloak/keycloak/issues/43660">#&#8203;43660</a> Add operation to retrieve the workflows that are currently active for a resource <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43661">#&#8203;43661</a> Allow groups to be referenced by path in workflow conditions <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43665">#&#8203;43665</a> Workflows UI must allow for definition of workflows using YAML <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43666">#&#8203;43666</a> Admin client should be able to handle YAML payloads for workflows <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43694">#&#8203;43694</a> Avoid using UserCredentialManager from user storage extensions </li> <li><a href="https://github.com/keycloak/keycloak/issues/43715">#&#8203;43715</a> Provide a way to evaluate event properties when matching events to workflows <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43777">#&#8203;43777</a> Add missing secret warning status </li> <li><a href="https://github.com/keycloak/keycloak/issues/43801">#&#8203;43801</a> [OID4VCI] Handling KeyAttestationRequired properly <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43802">#&#8203;43802</a> Add autofocus property to "Sign in with passkey" button in keycloak.v2 login theme. </li> <li><a href="https://github.com/keycloak/keycloak/issues/43843">#&#8203;43843</a> [Login UI v2] Configurable Password Visibility-Toggle Icons </li> <li><a href="https://github.com/keycloak/keycloak/issues/43912">#&#8203;43912</a> Store workflows YAML definition as a blob <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43931">#&#8203;43931</a> Downscoping for standard token exchange <code>token-exchange/standard</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44005">#&#8203;44005</a> Improve error message for the HTTPS material loading <code>observability</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44164">#&#8203;44164</a> Add pagination and search by name capabilities to the workflows endpoint <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44183">#&#8203;44183</a> Allow UI to retrieve Workflow definitions without their ids <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44266">#&#8203;44266</a> Provide additional benchmarks for more than 100k users </li> <li><a href="https://github.com/keycloak/keycloak/issues/44274">#&#8203;44274</a> Keycloak compatibility with PostgreSQL 18 </li> <li><a href="https://github.com/keycloak/keycloak/issues/44296">#&#8203;44296</a> Avoid un-escaped strings in the login templates for HTML entities <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44396">#&#8203;44396</a> Ignore null values when serializing workflows using YAML <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44494">#&#8203;44494</a> Support EDB 18 </li> <li><a href="https://github.com/keycloak/keycloak/issues/44500">#&#8203;44500</a> HttpClient provider should allow connectionRequestTimeout to be settable </li> <li><a href="https://github.com/keycloak/keycloak/issues/44518">#&#8203;44518</a> Disable state transfer for session caches when persistent sessions are enabled </li> <li><a href="https://github.com/keycloak/keycloak/issues/44548">#&#8203;44548</a> Add MariaDB to MySQL description and specify SQL to support UTF-8 </li> <li><a href="https://github.com/keycloak/keycloak/issues/44571">#&#8203;44571</a> MCP Documentation for 26.5 </li> <li><a href="https://github.com/keycloak/keycloak/issues/44611">#&#8203;44611</a> Document recommended transaction isolation level for MS SQL in guides and warn if wrong level is detected on startup </li> <li><a href="https://github.com/keycloak/keycloak/issues/44621">#&#8203;44621</a> [OID4VCI] Realign naming of attribute configuring algorithms for credential signing <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44634">#&#8203;44634</a> Enhance health check docs </li> <li><a href="https://github.com/keycloak/keycloak/issues/44645">#&#8203;44645</a> Improve workflow concurrency settings to allow cancelling a workflow based on an event <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44708">#&#8203;44708</a> Improvements to the notify step <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44736">#&#8203;44736</a> Fix OID4VCI Wallet Interoperability Issues (Draft 15 Compatibility & Metadata Compliance) <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44753">#&#8203;44753</a> Avoid using HTML in backend messages in the login theme </li> <li><a href="https://github.com/keycloak/keycloak/issues/44787">#&#8203;44787</a> Avoid flushing user information in batch mode </li> <li><a href="https://github.com/keycloak/keycloak/issues/44789">#&#8203;44789</a> Allow restarting the step chain at a specific position <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44801">#&#8203;44801</a> Infinispan: LoginFailures entries should expire </li> <li><a href="https://github.com/keycloak/keycloak/issues/44842">#&#8203;44842</a> Publish an event for logging out a single session or all sessions or all sessions via the Account Console <code>events</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44843">#&#8203;44843</a> Publish an event when the UserSessionLImitsAuthenticator terminates an older session <code>events</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44865">#&#8203;44865</a> Allow running scheduled workflows <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44890">#&#8203;44890</a> Update the Quarkus README for better clarity </li> <li><a href="https://github.com/keycloak/keycloak/issues/44910">#&#8203;44910</a> Validate client session timeout and lifetime settings on realm settings edit </li> <li><a href="https://github.com/keycloak/keycloak/issues/44915">#&#8203;44915</a> Add Basque (eu) translation support for Keycloak UI </li> <li><a href="https://github.com/keycloak/keycloak/issues/44936">#&#8203;44936</a> Support running test methods on the server side </li> <li><a href="https://github.com/keycloak/keycloak/issues/45070">#&#8203;45070</a> ServiceMonitor is not created by keycloak operator <code>docs</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/26374">#&#8203;26374</a> Workflow failure: Quarkus IT - FipsDistTest#testUnsupportedHttpsPkcs12KeyStoreInStrictMode <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/30939">#&#8203;30939</a> Vulnerability in brute force detection settings <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/31401">#&#8203;31401</a> Kcadm.sh: (Better) Error messages on 302 redirect responses </li> <li><a href="https://github.com/keycloak/keycloak/issues/34868">#&#8203;34868</a> [Jenkins Operator CI] - Test remote - ClusteringTest on OpenShift <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/38438">#&#8203;38438</a> Avoid 'duplicated mappers' Quarkus message for kc.dir <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/38506">#&#8203;38506</a> keycloak-test-framework-bom manages more dependencies than intended <code>test-framework</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/38991">#&#8203;38991</a> [Test framework] Embedded server -> dependency download error when no version is specified <code>test-framework</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/39660">#&#8203;39660</a> Failed shouldPreventPathFileSeparatorInVaultSecretId test on Windows <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/40058">#&#8203;40058</a> [FGAP] Make additional rest endpoints respect permissions <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/40712">#&#8203;40712</a> Authorization -> Evaluate: always returns "No search results" <code>authorization-services</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/40756">#&#8203;40756</a> Wrong dependency registering in the testsuite <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/40965">#&#8203;40965</a> Group permission denies to view user <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/40990">#&#8203;40990</a> Fallback to English translations for unknown locale despite German being the realm default <code>translations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41270">#&#8203;41270</a> Cannot save new attribute group <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41271">#&#8203;41271</a> Changing user profile attribute results in an error everytime <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41292">#&#8203;41292</a> openid-connect flow is missing response type on language change <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42000">#&#8203;42000</a> Incorrect logic of getArray() in ComponentModelScope <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42166">#&#8203;42166</a> [Keycloak CI - Store MSSQL] GroupTest.createMultiDeleteMultiReadMulti:157 <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42225">#&#8203;42225</a> Slow initial GET /admin/realms/{realm}/users with cache enabled and large max parameter <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42470">#&#8203;42470</a> UserStorageProviderModel parameter in ImportSynchronization.sync() method contains stale configuration data <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42541">#&#8203;42541</a> Searching by non-searchable attributes returns all clients <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42552">#&#8203;42552</a> Missing license field and miscellaneous fields in NPM packages <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42565">#&#8203;42565</a> Standard Token Exchange: chain of exchanges eventually fails <code>token-exchange</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42588">#&#8203;42588</a> Key Type is not EC: ECDSA <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42601">#&#8203;42601</a> Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#testPostBrokerLoginFlowWithOTP <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42676">#&#8203;42676</a> Security Defenses realm settings lost when switching between Headers and Brute Force Detection tabs (v25+) <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42794">#&#8203;42794</a> [Windows] Make TrustedHostClientRegistrationPolicyTest Robust to Canonical Hostname localhost <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42795">#&#8203;42795</a> [Windows] Stabilize ResourceLoaderTest <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42851">#&#8203;42851</a> Group description missing on partial import <code>import-export</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42907">#&#8203;42907</a> Race condition in authorization service leads to NullPointerException when evaluating permissions during concurrent resource deletion <code>authorization-services</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42914">#&#8203;42914</a> Make sure TestEventsListenerProvider does not reuse the events in memory <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42960">#&#8203;42960</a> KC_VERBOSE is not honored for a fast start <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/42971">#&#8203;42971</a> create clients without required value <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43022">#&#8203;43022</a> Incorrect Basic Auth encoding for OIDC IDentity Provider when Client ID contains colon <code>identity-brokering</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43034">#&#8203;43034</a> Saving Client “Advanced” sets Request Object signature/encryption attributes to “any” even when not changed <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43042">#&#8203;43042</a> Avoid NPE in FederatedJWTClientAuthenticator when checking for supported assertion types <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43061">#&#8203;43061</a> Option description stuck with link <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43070">#&#8203;43070</a> Update email page with pending verification email messages prefilled with old email <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43080">#&#8203;43080</a> Fix punctuation for deleteConfirmGroup_one message <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43082">#&#8203;43082</a> ExternalLinksTest is broken due to missing path parameters <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43084">#&#8203;43084</a> Fix anchors in the documentation <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43087">#&#8203;43087</a> "Service accounts roles" should be "Service account roles" <code>translations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43091">#&#8203;43091</a> Duplicate Email Fields on Temporarily Locked Out Sign In With Organization Identity-First Login <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43096">#&#8203;43096</a> keycloak-operator 26.4.0 missing clusterrole permissions <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43104">#&#8203;43104</a> Release notes fix for update email <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43160">#&#8203;43160</a> Regression in DEBUG_PORT handling since 26.4.0 – host binding (*:port / 0.0.0.0:port) no longer works <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43161">#&#8203;43161</a> Restarting an user session broken for persistent sessions <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43164">#&#8203;43164</a> Keycloak docs state that only TLSv1.3 is used <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43166">#&#8203;43166</a> Backend url misses the path with reverse proxy <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43191">#&#8203;43191</a> Upgrade guide for 26.4.0 should mention new minimal PostgreSQL server version 13 requirement <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43195">#&#8203;43195</a> Field "Created at" shows "Invalid Date" when created through KeycloakRealmImport </li> <li><a href="https://github.com/keycloak/keycloak/issues/43202">#&#8203;43202</a> IntComponent doesn't show if a field is required <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43212">#&#8203;43212</a> Document missing artifact dependency for UserStoragePrivateUtil <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43218">#&#8203;43218</a> Cannot revoke access token generated by Standard Token Exchange <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43244">#&#8203;43244</a> UI crash on admin `/users/add-user` since 26.4.0 <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43254">#&#8203;43254</a> Make sure username and email attributes are lower cased when fetching their values from LDAP object <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43262">#&#8203;43262</a> XPathAttributeMapperTest fails on Ubuntu with OpenJDK 17 <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43263">#&#8203;43263</a> FIPS1402JWKTest and FIPS1402SecureRandomTest fails on Ubuntu with OpenJDK 25 <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43264">#&#8203;43264</a> SdJwtTest and UndisclosedClaimTest fails on Windows with OpenJDK 17 </li> <li><a href="https://github.com/keycloak/keycloak/issues/43269">#&#8203;43269</a> Keycloak 26.4 returns a different error response on a token request without Client Assertion (private_key_jwt client authentication) from Keycloak 26.3 does <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43270">#&#8203;43270</a> Keycloak 26.4 returns a different error response on a CIBA backchannel authentication request without Client Assertion (private_key_jwt client authentication) from Keycloak 26.3 does <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43286">#&#8203;43286</a> Broken links on DB server configuration guide <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43304">#&#8203;43304</a> SAML Client - Encrypt assertions toggle shows wrong dialog text (Client signature required) <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43323">#&#8203;43323</a> Sessions not removed when user is deleted <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43328">#&#8203;43328</a> "Remember me" user sessions remain valid after "remember me" realm setting is disabled <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43331">#&#8203;43331</a> NullPointerException when disabling Admin Permissions (FGAP) in Realm - GET /users returns 500 <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43335">#&#8203;43335</a> First JDBC_PING initialization happens in the JTA transaction context <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43349">#&#8203;43349</a> Client session may be lost during session restart <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43394">#&#8203;43394</a> SPIFFE client authentication does not work when JWT SVID includes `iss` claim </li> <li><a href="https://github.com/keycloak/keycloak/issues/43417">#&#8203;43417</a> Spotless fails on `main` <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43447">#&#8203;43447</a> [quarkus-next] DatasourcesConfigurationTest fails <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43459">#&#8203;43459</a> Invalid YAML in advanced Operator configurations <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43460">#&#8203;43460</a> FGAP/UI: `reset-password` succeeds but UI shows 403 without Users:manage <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43477">#&#8203;43477</a> Flaky test: org.keycloak.testsuite.webauthn.account.WebAuthnSigningInTest#setUpLinksTest <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43505">#&#8203;43505</a> DPoP proof replay check doesn't consider clock skew <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43515">#&#8203;43515</a> Social provider icons not displayed when alias differs from provider type <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43516">#&#8203;43516</a> Deleting Client is slow and fails when a lot of client sessions exist <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43523">#&#8203;43523</a> [Keycloak JavaScript CI] - Admin UI E2E (chromium) <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43532">#&#8203;43532</a> kcadm.ssh config credentials fails when there is a % in the client secret <code>admin/cli</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43544">#&#8203;43544</a> Intra-document links not rendered in downstream <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43547">#&#8203;43547</a> Unrecognized field "kty" (class org.keycloak.jose.jwk.JSONWebKeySet), not marked as ignorable (one known property: "keys"]) <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43561">#&#8203;43561</a> Server does not shutdown gracefully when started with --optimized <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43564">#&#8203;43564</a> Invalid liquibase check sum for jpa-changelog-2.5.0.xml <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43578">#&#8203;43578</a> "admin" client role now requires server admin user <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43579">#&#8203;43579</a> 403 Forbidden when assigning realm-management client roles with realm-admin despite FGAP disabled (regression in 26.4.0+) <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43596">#&#8203;43596</a> FGAP: user can no longer open account management page, broken by `reset-password` <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43621">#&#8203;43621</a> Version 26.4.1 breaks existing ldap users with capital letters in username <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43637">#&#8203;43637</a> Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#loginWithExistingUserWithBruteForceEnabled <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43639">#&#8203;43639</a> Local user can't login when ldap error <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43674">#&#8203;43674</a> Setting "Backchannel logout session required" displayed incorrectly <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43682">#&#8203;43682</a> When syncing roles, the database layer can see deadlocks </li> <li><a href="https://github.com/keycloak/keycloak/issues/43687">#&#8203;43687</a> H2 database URL augmentation does not consider db-url-properties <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43698">#&#8203;43698</a> Role Mapper is updating the user every time on login <code>identity-brokering</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43713">#&#8203;43713</a> Flaky test: org.keycloak.testsuite.oauth.ClientAuthSignedJWTTest#testClientWithGeneratedKeysJKS <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43717">#&#8203;43717</a> Unused message properties for the LDAP mappers <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43718">#&#8203;43718</a> Email Not Persisted During Registration When "Email as Username" is Enabled and User Edit Permission is Disabled <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43720">#&#8203;43720</a> Wrongly spelled LDAP edit mode in the docs <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43723">#&#8203;43723</a> Only add the none verifier when attestation conveyance preference is none (or default) <code>authentication/webauthn</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43734">#&#8203;43734</a> Refresh token allowed for offline session even the related scope is removed </li> <li><a href="https://github.com/keycloak/keycloak/issues/43736">#&#8203;43736</a> FGAP V2: reset-password scope error when viewing users with Group permissions only <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43738">#&#8203;43738</a> UPDATE_EMAIL action invalidates old email <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43744">#&#8203;43744</a> Increased memory usage due to leaking KeycloakSession instances <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43752">#&#8203;43752</a> LDAP synchronization happens too often in a cluster and always clears the cache <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43754">#&#8203;43754</a> Flaky test: org.keycloak.testsuite.federation.ldap.LDAPProvidersIntegrationTest#updateLDAPUsernameTest <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43755">#&#8203;43755</a> Flaky test: org.keycloak.testsuite.account.AccountRestServiceTest#listApplicationsWithoutPermission <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43759">#&#8203;43759</a> QuarkusKeycloakSession not garbage collected when running Liquibase <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43761">#&#8203;43761</a> QuarkusKeycloakSession kept in memory for each timer <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43763">#&#8203;43763</a> Normalizing of Keycloak URLs not documented <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43774">#&#8203;43774</a> Under OLMv1 service monitor check uses wrong namespace <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43785">#&#8203;43785</a> QuarkusKeycloakSession leak in DeclarativeUserProfileProvider <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43793">#&#8203;43793</a> import does not seem to run db migration <code>import-export</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43812">#&#8203;43812</a> Admin console sends non-JSON payload with content-type: application/json <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43818">#&#8203;43818</a> typos in Docs: server_admin/topics/sso-protocols/con-oidc-auth-flows.adoc <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43819">#&#8203;43819</a> partial import fails to overwrite existing groups <code>import-export</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43832">#&#8203;43832</a> Cannot issue vc of type oid4vc_natural_person <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43835">#&#8203;43835</a> useHash hook does not correctly extract hash from pushState URL <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43845">#&#8203;43845</a> [quarkus-next] Removed exception escaped OTel attribute <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43853">#&#8203;43853</a> Ensure the logout endpoint removes the authentication session <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43863">#&#8203;43863</a> JS CI failing after normalization <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43867">#&#8203;43867</a> JS Policy is used in the "Default Policy" for Authorization <code>authorization-services</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43883">#&#8203;43883</a> Creating group policy on a client uses "manage-clients" role if FGAP V1 is disabled <code>authorization-services</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43886">#&#8203;43886</a> Flaky test: org.keycloak.testsuite.model.session.UserSessionProviderOfflineModelTest#testLoadUserSessionsWithNotDeletedOfflineClientSessions <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43933">#&#8203;43933</a> AUTH_SESSION_ID cookie has the incorrect route <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43948">#&#8203;43948</a> Adding a client mapper stays on creation screen, with error on second save <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43973">#&#8203;43973</a> Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#testPostBrokerLoginFlowWithOTP <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43993">#&#8203;43993</a> MessageFormatterMethod does not detect/map SimpleNumber causing IllegalArgumentException <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44010">#&#8203;44010</a> Ordering attributes will unset the unmanaged attribute policy <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44031">#&#8203;44031</a> Can't build keycloak 26.4.4 with quarkus.launch.rebuild=true <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44056">#&#8203;44056</a> Allow only normalized URLs in requests caused a regression in view authz permission details in Admin Consol <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44057">#&#8203;44057</a> Retrieving row count to evaluate index creation takes a long time on PostgreSQL and big tables <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44113">#&#8203;44113</a> Missing message properties when redenring pages for organization invites <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44116">#&#8203;44116</a> [OID4VCI] Credential Offer must be created by Issuer not Holder <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44117">#&#8203;44117</a> DockerClientTest failure <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44125">#&#8203;44125</a> Double-encoding of query parameter values (e.g. acr_values) for version 26.4 <code>identity-brokering</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44127">#&#8203;44127</a> [Test Framework] Distribution server - logger output exception <code>test-framework</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44156">#&#8203;44156</a> [BUG] 'master' realm lockout due to NullPointerException when "Conditional 2FA" is moved before "Username Password Form" <code>authentication/webauthn</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44163">#&#8203;44163</a> Disabling/enabling workflows result in validation errors and the name is missing from representation <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44179">#&#8203;44179</a> Test failure in operator KeycloakIngressTest.testIngressTLSTermination <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44187">#&#8203;44187</a> [Keycloak Docs CI] Broken links <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44189">#&#8203;44189</a> [jdbc-ping] SQLIntegrityConstraintViolationException: Duplicate entry <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44217">#&#8203;44217</a> OIDC identity provider should allow to setup JWKS URL (or hardcoded keys) when JWT authorization grant enabled <code>identity-brokering</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44229">#&#8203;44229</a> Unexpected FORMAT_FAILURE error when using cache-config-file with feature-disabled=persistent-user-sessions <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44246">#&#8203;44246</a> Inconsistent formatting or RFC references <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44256">#&#8203;44256</a> [OID4VCI] JWT VC Issuer Metadata well-known endpoint should be available at /.well-known/jwt-vc-issuer/realms/{realm} <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44257">#&#8203;44257</a> OIDC Dynamic Client Registration update problem when Service Account was enabled/ disabled <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44268">#&#8203;44268</a> Tests for Admin Client fail <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44269">#&#8203;44269</a> Admin Client creates malformed paths for requests <code>admin/client-js</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44278">#&#8203;44278</a> Stack trace in browser console when updating password <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44280">#&#8203;44280</a> Unsupported Pod template can cause AUTO logic to keep StatefulSet at 0 replicas <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44287">#&#8203;44287</a> Caching of static theme resources in dev mode is disabled <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44289">#&#8203;44289</a> Failure when decrypting SAML Assertions with HSM provided key <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44329">#&#8203;44329</a> View-Group Permission shows Users in User-List <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44341">#&#8203;44341</a> Grammar error in LDAP federation group mapper <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44342">#&#8203;44342</a> Logical error in Danish email verification message - tells users to ignore if they DID create account <code>translations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44349">#&#8203;44349</a> Upgrade with Mysql and migration-strategy=manual when db user has non alter table permissions <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44377">#&#8203;44377</a> Unlocalized date format in (email messages) <code>translations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44387">#&#8203;44387</a> Description of Passkey is not escaped on the login screen <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44398">#&#8203;44398</a> Delete user step in workflows is not removing other scheduled steps the user might have <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44399">#&#8203;44399</a> Workflows are restarting on any event instead of the one that activates it <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44400">#&#8203;44400</a> Removing a user's group is not activating workflows that use the user-group-membership-removed event <code>workflows</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44419">#&#8203;44419</a> Compilation failure in OID4VCTimeNormalizationSdJwtTest </li> <li><a href="https://github.com/keycloak/keycloak/issues/44430">#&#8203;44430</a> NPE when importing SAML EntityDescriptor without SPSSODescriptor <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44438">#&#8203;44438</a> Intermittent ConcurrentModificationException during SAML initialization causing status code 400 for clients <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44455">#&#8203;44455</a> ClassCastException on mixing AddressMapper with ClaimMapper <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44480">#&#8203;44480</a> Wrong persistent group permissions when multiple group membership changes happen in the same request <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44522">#&#8203;44522</a> The existence of an organization attribute called “id” is not validated <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44540">#&#8203;44540</a> [admin-api-v2] Create client does not return 201 status code <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44543">#&#8203;44543</a> Missing Romanian locale from Supported locales <code>translations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44552">#&#8203;44552</a> Manual sync not executed because of the last sync time <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44558">#&#8203;44558</a> LDAP group mapper executed multiple times in the same request <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44577">#&#8203;44577</a> Remote Infinispan should return count per client only for the current realm <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44586">#&#8203;44586</a> [admin-api-v2] Incorrect DTO/DAO mapping <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44606">#&#8203;44606</a> Unhandled error caused by unknown SAML tag during XML parsing <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44626">#&#8203;44626</a> Compilation failure in JWTAuthorizationGrantJWTClaimsClientPoliciesTest <code>authentication</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44642">#&#8203;44642</a> Credential offer endpoint has parameter user_id, but expects username <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44661">#&#8203;44661</a> Moved link in developer.mozilla.org <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44700">#&#8203;44700</a> ModelTests are broken after consolidating config logic <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44702">#&#8203;44702</a> Alias in JWT Authorization Grant idp should not be editable <code>token-exchange</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44712">#&#8203;44712</a> Keycloak throws a 500 when invalid Accept header <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44725">#&#8203;44725</a> Typo: missing '>' on closing </form> in keycloak.v2 link-idp-action.ftl <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44735">#&#8203;44735</a> No "Sign in with Passkey" on first step with organization:<alias> scope <code>authentication/webauthn</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44742">#&#8203;44742</a> OID4VCIssuerEndpoint.getCredentialOfferPreflight uses incorrect name of the parameter <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44776">#&#8203;44776</a> Chrome and Firefox broken with new test framework on GtiHub Actions </li> <li><a href="https://github.com/keycloak/keycloak/issues/44779">#&#8203;44779</a> OID4VC metadata endpoint returns deferred_credential_endpoint even if not supported <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44791">#&#8203;44791</a> Workflows look up entries from the database on each event </li> <li><a href="https://github.com/keycloak/keycloak/issues/44793">#&#8203;44793</a> CredentialRequest with credentialIdentifier does not work when credential-offer was created by OAuth2 authorization_code grant <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44796">#&#8203;44796</a> Claims configued by OID4VCI protocol mappers as mandatory are not enforced to be mandatory <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44802">#&#8203;44802</a> Notification_id returned from the credential response <code>oid4vc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44908">#&#8203;44908</a> Run on server with remote uses old classes <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44918">#&#8203;44918</a> Workflow tests failing in CI <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44940">#&#8203;44940</a> JWTClientSecretAuthenticator throws NPE if client assertion is not set <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44947">#&#8203;44947</a> Test framework supplier dependencies broken <code>test-framework</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44956">#&#8203;44956</a> Remove unused azure-credentials input from azure-create-database action <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44966">#&#8203;44966</a> Missing message keys for USER_SESSION_DELETED <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44971">#&#8203;44971</a> DefaultCryptoSdJwsTest.shouldValidateAgeSinceIssued_IfJwtIsTooOld() sometimes fails in CI <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44990">#&#8203;44990</a> Cannot run arquillian testsuite with quarkus-embedded due to dependency conflict <code>testsuite</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45001">#&#8203;45001</a> Workflows documentation references wrong events <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45020">#&#8203;45020</a> ${kc.org} Organisation Confirm Membership Title in messages_de.properties should be ${kc.org.name} <code>translations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45023">#&#8203;45023</a> [Docs CI] ExternalLinksTest.checkExternalLinks:41 Broken links (1) in guide 'server_admin' <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45040">#&#8203;45040</a> Docs: upgrading/topics/changes/changes-26_4_6.adoc <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45052">#&#8203;45052</a> Default redirect URI for an organization should be the Home URL of the account client <code>organizations</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45077">#&#8203;45077</a> Workflows documentation has non-working workflow examples <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45085">#&#8203;45085</a> Missing repeatHelp translation key in Time policy <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45108">#&#8203;45108</a> Admin UI: User attribute filter reset does not refresh user list <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45114">#&#8203;45114</a> AdminEvent.getResourcePath() returns paths with duplicated slashes (//) after upgrading Keycloak (26.4.1 → 26.4.7) <code>admin/client-java</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/45133">#&#8203;45133</a> AdminUI test Sessions › Add session data is broken <code>admin/ui</code></li> </ul> </div> ### [`v26.4.7`](https://github.com/keycloak/keycloak/releases/tag/26.4.7) [Compare Source](https://github.com/keycloak/keycloak/compare/26.4.6...26.4.7) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/43156">#&#8203;43156</a> [Docs] Warn users about printing headers in HTTP access logs <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43643">#&#8203;43643</a> Upgrade to Quarkus 3.27.1 <code>dist/quarkus</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44438">#&#8203;44438</a> Intermittent ConcurrentModificationException during SAML initialization causing status code 400 for clients <code>saml</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44480">#&#8203;44480</a> Wrong persistent group permissions when multiple group membership changes happen in the same request <code>core</code></li> </ul> </div> ### [`v26.4.6`](https://github.com/keycloak/keycloak/releases/tag/26.4.6) [Compare Source](https://github.com/keycloak/keycloak/compare/26.4.5...26.4.6) <div> <h2>Highlights</h2> <div class="paragraph"> <p>This release adds filtering of LDAP referrals by default. This change enhances security and aligns with best practices for LDAP configurations.</p> </div> <div class="paragraph"> <p>If you can not upgrade to this release yet, we recommend disabling LDAP referrals in all LDAP providers in all of your realms.</p> </div> <div class="paragraph"> <p>For detailed upgrade instructions, <a href="https://www.keycloak.org/docs/latest/upgrading/index.html">review the upgrading guide</a>.</p> </div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Security fixes</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/44478">#&#8203;44478</a> CVE-2025-13467 Deserialization of untrusted data in ldap user federation </li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/43323">#&#8203;43323</a> Sessions not removed when user is deleted <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43738">#&#8203;43738</a> UPDATE_EMAIL action invalidates old email <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43754">#&#8203;43754</a> Flaky test: org.keycloak.testsuite.federation.ldap.LDAPProvidersIntegrationTest#updateLDAPUsernameTest <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43812">#&#8203;43812</a> Admin console sends non-JSON payload with content-type: application/json <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44125">#&#8203;44125</a> Double-encoding of query parameter values (e.g. acr_values) for version 26.4 <code>identity-brokering</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44187">#&#8203;44187</a> [Keycloak Docs CI] Broken links <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44189">#&#8203;44189</a> [jdbc-ping] SQLIntegrityConstraintViolationException: Duplicate entry <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44229">#&#8203;44229</a> Unexpected FORMAT_FAILURE error when using cache-config-file with feature-disabled=persistent-user-sessions <code>infinispan</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44269">#&#8203;44269</a> Admin Client creates malformed paths for requests <code>admin/client-js</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44287">#&#8203;44287</a> Caching of static theme resources in dev mode is disabled <code>core</code></li> </ul> </div> ### [`v26.4.5`](https://github.com/keycloak/keycloak/releases/tag/26.4.5) [Compare Source](https://github.com/keycloak/keycloak/compare/26.4.4...26.4.5) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/42601">#&#8203;42601</a> Flaky test: org.keycloak.testsuite.broker.KcOidcBrokerTest#testPostBrokerLoginFlowWithOTP <code>ci</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43212">#&#8203;43212</a> Document missing artifact dependency for UserStoragePrivateUtil <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43564">#&#8203;43564</a> Invalid liquibase check sum for jpa-changelog-2.5.0.xml <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43718">#&#8203;43718</a> Email Not Persisted During Registration When "Email as Username" is Enabled and User Edit Permission is Disabled <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43793">#&#8203;43793</a> import does not seem to run db migration <code>import-export</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43883">#&#8203;43883</a> Creating group policy on a client uses "manage-clients" role if FGAP V1 is disabled <code>authorization-services</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44010">#&#8203;44010</a> Ordering attributes will unset the unmanaged attribute policy <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44031">#&#8203;44031</a> Can't build keycloak 26.4.4 with quarkus.launch.rebuild=true <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44056">#&#8203;44056</a> Allow only normalized URLs in requests caused a regression in view authz permission details in Admin Consol <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/44117">#&#8203;44117</a> DockerClientTest failure <code>testsuite</code></li> </ul> </div> ### [`v26.4.4`](https://github.com/keycloak/keycloak/releases/tag/26.4.4) [Compare Source](https://github.com/keycloak/keycloak/compare/26.4.3...26.4.4) <div> <h2>Upgrading</h2> <p>Before upgrading refer to <a href="https://www.keycloak.org/docs/latest/upgrading/#migration-changes">the migration guide</a> for a complete list of changes.</p> <h2>All resolved issues</h2> <h3>Enhancements</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/10388">#&#8203;10388</a> Allow to hide client scopes from scopes_supported in discovery endpoint </li> <li><a href="https://github.com/keycloak/keycloak/issues/43076">#&#8203;43076</a> Add rate limiter for sending verification emails in context of update email </li> <li><a href="https://github.com/keycloak/keycloak/issues/43509">#&#8203;43509</a> Role authorization for workflows. <code>admin/api</code></li> </ul> <h3>Bugs</h3> <ul> <li><a href="https://github.com/keycloak/keycloak/issues/41270">#&#8203;41270</a> Cannot save new attribute group <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/41271">#&#8203;41271</a> Changing user profile attribute results in an error everytime <code>admin/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43082">#&#8203;43082</a> ExternalLinksTest is broken due to missing path parameters <code>docs</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43091">#&#8203;43091</a> Duplicate Email Fields on Temporarily Locked Out Sign In With Organization Identity-First Login <code>login/ui</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43160">#&#8203;43160</a> Regression in DEBUG_PORT handling since 26.4.0 – host binding (*:port / 0.0.0.0:port) no longer works <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43460">#&#8203;43460</a> FGAP/UI: `reset-password` succeeds but UI shows 403 without Users:manage <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43505">#&#8203;43505</a> DPoP proof replay check doesn't consider clock skew <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43516">#&#8203;43516</a> Deleting Client is slow and fails when a lot of client sessions exist <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43578">#&#8203;43578</a> "admin" client role now requires server admin user <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43579">#&#8203;43579</a> 403 Forbidden when assigning realm-management client roles with realm-admin despite FGAP disabled (regression in 26.4.0+) <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43596">#&#8203;43596</a> FGAP: user can no longer open account management page, broken by `reset-password` <code>admin/fine-grained-permissions</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43621">#&#8203;43621</a> Version 26.4.1 breaks existing ldap users with capital letters in username <code>ldap</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43682">#&#8203;43682</a> When syncing roles, the database layer can see deadlocks </li> <li><a href="https://github.com/keycloak/keycloak/issues/43698">#&#8203;43698</a> Role Mapper is updating the user every time on login <code>identity-brokering</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43723">#&#8203;43723</a> Only add the none verifier when attestation conveyance preference is none (or default) <code>authentication/webauthn</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43734">#&#8203;43734</a> Refresh token allowed for offline session even the related scope is removed </li> <li><a href="https://github.com/keycloak/keycloak/issues/43736">#&#8203;43736</a> FGAP V2: reset-password scope error when viewing users with Group permissions only <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43744">#&#8203;43744</a> Increased memory usage due to leaking KeycloakSession instances <code>admin/api</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43759">#&#8203;43759</a> QuarkusKeycloakSession not garbage collected when running Liquibase <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43761">#&#8203;43761</a> QuarkusKeycloakSession kept in memory for each timer <code>core</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43763">#&#8203;43763</a> Normalizing of Keycloak URLs not documented <code>dist/quarkus</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43774">#&#8203;43774</a> Under OLMv1 service monitor check uses wrong namespace <code>operator</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43785">#&#8203;43785</a> QuarkusKeycloakSession leak in DeclarativeUserProfileProvider <code>user-profile</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43853">#&#8203;43853</a> Ensure the logout endpoint removes the authentication session <code>oidc</code></li> <li><a href="https://github.com/keycloak/keycloak/issues/43863">#&#8203;43863</a> JS CI failing after normalization <code>testsuite</code></li> </ul> </div> ### [`v26.4.3`](https://github.com/keycloak/keycloak/compare/26.4.2...26.4.3) [Compare Source](https://github.com/keycloak/keycloak/compare/26.4.2...26.4.3) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDQuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwNC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Update dependency org.keycloak:keycloak-parent to v26.5.7
All checks were successful
/ Verify (pull_request) Successful in 1m13s
/ Verify (push) Successful in 1m17s
54097571a7
renovate changed title from Update dependency org.keycloak:keycloak-parent to v26.5.7 to Update dependency org.keycloak:keycloak-parent to v26.5.7 - autoclosed 2026-04-03 23:45:32 +02:00
renovate closed this pull request 2026-04-03 23:45:32 +02:00
All checks were successful
/ Verify (pull_request) Successful in 1m13s
/ Verify (push) Successful in 1m17s

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
CCCHH/keycloak-attribute-endpoints-provider!9
No description provided.