Changelog

Stay up-to-date with the latest releases, new features, and bug fixes.
💡 Miss a feature? See our roadmap.
October 1, 2026

October 2026 Updates

Custom Claims & Mapping

You can now bring attributes from your SAML and custom OIDC connections into Hanko as custom claims, with definitions and mappings fully configurable in the Hanko Cloud Console.

Define the claims your application needs, such as department, groups, or employee ID, and map the corresponding attributes from each identity provider. Different providers can use different attribute names while your application receives a consistent set of claims.

Custom claims support typed values, including strings, numbers, booleans, and lists. Values are updated when users sign in through a mapped connection and can be included in session tokens using JWT templates. A new user.update.custom_claims webhook event lets your application react when values change.

Organizations & Roles

Group users into organizations and assign roles within each organization. A user can, for example, be an admin in one organization and a member in another.

You can manage organizations, memberships, and role assignments through the Admin API, and check the current user’s organization roles through a dedicated session-based endpoint.

This feature currently requires a Hanko Cloud Pro subscription and is managed through the Admin API. Support for managing organizations and roles in the Hanko Cloud Console is coming soon.

Other Improvements

  • Added support for importing bcrypt password hashes using the $2b$ format.
  • Added Korean UI translations and Polish email translations.
  • Improved passkey registration feedback and SAML/OIDC error handling.
  • Included security and reliability fixes across authentication flows.

‍

June 2, 2026

June 2026 Updates

Firebase Scrypt Password Hashes Import

The main feature of this release is support for Firebase Scrypt password hashes, specifically to enable importing Firebase users together with their existing Scrypt password hashes.

This makes it possible to migrate users from Firebase Authentication while preserving their password hashes, as exported via the Firebase CLI.

Beyond that, we updated a number of dependencies as usual.

April 8, 2026

April 2026 Updates

Inactivity Logouts

The main feature of this release is Inactivity Logouts, which allow user sessions to be proactively terminated if no user activity is detected.

This can be configured via a new configuration option. In addition, an idle_expires_at timestamp is now returned by the /sessions/validate endpoint, allowing frontends to react to upcoming idle logouts accordingly.

Beyond that, we updated a number of dependencies and included several small bug fixes.

‍

March 3, 2026

March 2026 Updates

This release improves user profile handling, enhances session token transparency, and includes important security fixes.

Name and Picture Attributes for Users

Users can now store name and picture attributes directly in Hanko.

This allows:

  • Richer user profiles
  • Better OIDC compatibility
  • Easier frontend integrations that expect display name and avatar fields

These attributes follow standard OIDC conventions, are available via the API, and can be managed like other user properties. The main source for these properties will be 3rd-party accounts like Google or GitHub for now. We will add the required functionality to manage these fields to the profile element in a later update.

AMR Values in Session Tokens

Session tokens now include AMR (Authentication Methods References) values.

This enables relying parties to:

  • Inspect how a user authenticated (e.g. passkey, password, MFA)
  • Improve auditability and policy decisions

The AMR claim follows standard OIDC conventions.

Extended /me Endpoint

The /me endpoint has been extended to return additional user information.

This reduces the need for follow-up requests and simplifies frontend integrations that rely on a single user introspection endpoint.

Prevent SQL Injection in audit_logs Queries

Replaced string concatenation with prepared statements when querying audit_logs.
This prevents potential SQL injection attacks and strengthens overall security.

Security Notification Webhooks Fixed

Security notification webhooks were not triggering correctly in certain scenarios.
This has been fixed and webhooks now work as expected.

January 20, 2026

January 2026 Updates

This release brings several security, reliability, and usability improvements across Hanko’s authentication stack. It includes stronger passcode options, better key management integration, more robust auth flows in Hanko Elements, improved device trust handling, and expanded localization support:

Alphanumeric passcodes

In addition to numeric passcodes, Hanko now supports optional alphanumeric passcodes. This increases entropy and makes passcode-based authentication more resilient against brute-force and guessing attacks.

External key providers (AWS KMS)

Hanko’s token signing engine can now be configured to use external HSMs and Key Management Systems, currently only AWS KMS is supported. This allows teams with higher security requirements to keep signing keys fully managed outside of Hanko.

Security notifications

Hanko now optionally sends email notifications for security-relevant actions (enabled by default), for example when a new passkey is added to an account. These notifications help users detect suspicious activity early and improve overall account security.

PKCE by default in Hanko Elements

Hanko Elements now uses PKCE-based flows by default. This resolves several issues with third-party integrations, especially in setups where the backend is not running on the same domain as the frontend.

Multi-user device trust support

Device trust cookies are no longer overwritten on shared machines or when multiple users log into the same application. This improves reliability for shared computers and multi-account setups while keeping device trust intact per user.

Dutch localization

Hanko now officially supports Dutch (NL). This includes UI text, backend mailing templates, and security notification emails, providing a more complete localized experience for Dutch-speaking users.

‍

December 3, 2025

December 2025 Updates

This release brings several updates to Hanko’s 3rd party (OAuth, OIDC) integration:

  • Authenticated users can now connect and manage configured 3rd party identities directly in the profile
  • Added support for OIDC ACR request parameter to enable custom communication between the 3rd party and Hanko
  • 3rd party identities no longer have to return an email address
November 13, 2025

November 2025 Updates

A smaller release, but with some important fixes and improvements. Most notably:

  • Flow locking mechanism to prevent concurrent execution of the same flow, addressing possible race conditions and side effects in actions (setting header tokens, sending emails, ...) in concurrent request scenarios
  • Option to configure (or omit) the 3rd-party prompt parameter to fine-tune the social SSO UX
  • Hanko Elements attributes working again (e.g. prefilled email or the mode attribute)
  • Hanko Elements UI fixes
October 28, 2025

PKCE

PKCE (Proof Key for Code Exchange)

The main feature of this release is PKCE support for 3rd-party OAuth flows of the Hanko API. When using Hanko with a mobile app, the oauth_state cookie might not be stored, so the thirdparty_oauth action now accepts a code_verifier. When the code_verifier is set, the state cookie is optional, but the code_verifier is required when exchanging the Hanko token with the exchange_token action.

September 10, 2025

Custom OAuth connections

In case you want to support any SSO provider that is not in the list of pre-built connections (like Apple, Google, Microsoft etc.), Hanko now supports custom social SSO connections, for both OAuth and OpenID Connect (OIDC) identity providers.

Custom Social Connections can be configured in Hanko Cloud Console. Each custom connection will get its own Continue with {provider_name} button on Hanko Elements.

August 7, 2025

User Metadata

Hanko now supports user metadata that can be attached to user profiles and managed via the Admin API. Metadata is organized into three categories:

Private

Private metadata cannot be accessed via the public API and should be used for sensitive data that should not be exposed to the client (e.g., internal flags/ids, configuration, or access control details).

Public

Public metadata can be read via the public API and should be used for non-sensitive information that you want accessible but not modifiable by the client (e.g., certain user roles, UI preferences, display options).

Unsafe

Unsafe metadata can be read and manipulated via the public API and should be used for non-sensitive, temporary or experimental data that doesn’t need strong safety guarantees.

‍

Metadata can be accessed in session JWT templates to map metadata to claims in a session token.

See Metadata docs for full details and examples.

Built and authenticate with Hanko

Get started for free