Skip to content

Releases: hashicorp/vault

v1.21.2

07 Jan 18:09
781ba45

Choose a tag to compare

1.21.2

January 07, 2026

CHANGES:

  • auth/oci: bump plugin to v0.20.1
  • core: Bump Go version to 1.25.5
  • packaging: Container images are now exported using a compressed OCI image layout.
  • packaging: UBI container images are now built on the UBI 10 minimal image.
  • secrets/azure: Update plugin to v0.25.1+ent. Improves retry handling during Azure application and service principal creation to reduce transient failures.
  • storage: Upgrade aerospike client library to v8.

IMPROVEMENTS:

  • core: check rotation manager queue every 5 seconds instead of 10 seconds to improve responsiveness
  • go: update to golang/x/crypto to v0.45.0 to resolve GHSA-f6x5-jh6r-wrfv, GHSA-j5w8-q4qc-rx2x, GO-2025-4134 and GO-2025-4135.
  • rotation: Ensure rotations for shared paths only execute on the Primary cluster's active node. Ensure rotations for local paths execute on the cluster-local active node.
  • sdk/rotation: Prevent rotation attempts on read-only storage.
  • secrets-sync (enterprise): Added support for a boolean force_delete flag (default: false). When set to true, this flag allows deletion of a destination even if its associations cannot be unsynced. This option should be used only as a last-resort deletion mechanism, as any secrets already synced to the external provider will remain orphaned and require manual cleanup.
  • secrets/pki: Avoid loading issuer information multiple times per leaf certificate signing.

BUG FIXES:

  • core/activitylog (enterprise): Resolve a stability issue where Vault Enterprise could encounter a panic during month-end billing activity rollover.
  • http: skip JSON limit parsing on cluster listener.
  • quotas: Vault now protects plugins with ResolveRole operations from panicking on quota creation.
  • replication (enterprise): fix rare panic due to race when enabling a secondary with Consul storage.
  • rotation: Fix a bug where a performance secondary would panic if a write was made to a local mount.
  • secret-sync (enterprise): Improved unsync error handling by treating cases where the destination no longer exists as successful.
  • secrets-sync (enterprise): Corrected a bug where the deletion of the latest KV-V2 secret version caused the associated external secret to be deleted entirely. The sync job now implements a version fallback mechanism to find and sync the highest available active version, ensuring continuity and preventing the unintended deletion of the external secret resource.
  • secrets-sync (enterprise): Fix issue where secrets were not properly un-synced after destination config changes.
  • secrets-sync (enterprise): Fix issue where sync store deletion could be attempted when sync is disabled.
  • ui/pki: Fix handling of values that contain commas in list fields like crl_distribution_points.

v1.21.1

19 Nov 17:36
2453aac

Choose a tag to compare

1.21.1

November 20, 2025

SECURITY:

  • auth/aws: fix an issue where a user may be able to bypass authentication to Vault due to incorrect caching of the AWS client
  • ui: disable scarf analytics for ui builds

CHANGES:

  • auth/kubernetes: Update plugin to v0.23.1
  • auth/saml: Update plugin to v0.7.0
  • auth/saml: Update plugin to v0.7.1, which adds the environment variable VAULT_SAML_DENY_INTERNAL_URLS to allow prevention of idp_metadata_url, idp_sso_url, or acs_urls fields from containing URLs that resolve to internal IP addresses
  • core: Bump Go version to 1.25.4
  • secrets/azure: Update plugin to v0.25.0+ent
  • secrets/pki: sign-verbatim endpoints no longer ignore basic constraints extension in CSRs, using them in generated certificates if isCA=false or returning an error if isCA=true

IMPROVEMENTS:

  • Update github.com/dvsekhvalnov/jose2go to fix security vulnerability CVE-2025-63811.
  • api: Added sudo-permissioned sys/reporting/scan endpoint which will output a set of files containing information about Vault state to the location specified by the reporting_scan_directory config item.
  • auth/ldap: Require non-empty passwords on login command to prevent unauthenticated access to Vault.
  • core/metrics: Reading and listing from a snapshot are now tracked via the vault.route.read-snapshot.{mount_point} and vault.route.list-snapshot.{mount_point} metrics.
  • license utilization reporting (enterprise): Add metrics for the number of issued PKI certificates.
  • policies: add warning about list comparison when using allowed_parameters or denied_parameters
  • secret-sync: add parallelization support to sync and unsync operations for secret-key granularity associations
  • secrets/pki: Include the certificate's AuthorityKeyID in response fields for API endpoints that issue, sign, or fetch certs.
  • sys (enterprise): Add sys/billing/certificates API endpoint to retrieve the number of issued PKI certificates.
  • ui/activity (enterprise): Add clarifying text to explain the "Initial Usage" column will only have timestamps for clients initially used after upgrading to version 1.21
  • ui/activity (enterprise): Allow manual querying of client usage if there is a problem retrieving the license start time.
  • ui/activity (enterprise): Reduce requests to the activity export API by only fetching new data when the dashboard initially loads or is manually refreshed.
  • ui/activity (enterprise): Support filtering months dropdown by ISO timestamp or display value.
  • ui/activity: Display total instead of new monthly clients for HCP managed clusters
  • ui/pki: Adds support to configure server_flag, client_flag, code_signing_flag, and email_protection_flag parameters for creating/updating a role.

BUG FIXES:

  • activity (enterprise): sys/internal/counters/activity outputs the correct mount type when called from a non root namespace
  • auth/approle (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/aws (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/cert (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/github (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/ldap (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/okta (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/radius (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/scep (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth/userpass (enterprise): Role parameter alias_metadata now populates alias custom metadata field instead of alias metadata.
  • auth: fixed panic when supplying integer as a lease_id in renewal.
  • core/rotation: avoid shifting timezones by ignoring cron.SpecSchedule
  • core: interpret all new rotation manager rotation_schedules as UTC to avoid inadvertent use of tz-local
  • secrets/azure: Ensure proper installation of the Azure enterprise secrets plugin.
  • secrets/pki: Return error when issuing/signing certs whose NotAfter is before NotBefore or whose validity period isn't contained by the CA's.
  • ui (enterprise): Fix KV v2 not displaying secrets in namespaces.
  • ui (enterprise): Fixes login form so input renders correctly when token is a preferred login method for a namespace.
  • ui/pki: Fixes certificate parsing of the key_usage extension so details accurately reflect certificate values.
  • ui/pki: Fixes creating and updating a role so basic_constraints_valid_for_non_ca is correctly set.
  • ui: Fix KV v2 metadata list request failing for policies without a trailing slash in the path.
  • ui: Resolved a regression that prevented users with create and update permissions on KV v1 secrets from opening the edit view. The UI now correctly recognizes these capabilities and allows editing without requiring full read access.
  • ui: Update LDAP accounts checked-in table to display hierarchical LDAP libraries
  • ui: Update LDAP library count to reflect the total number of nodes instead of number of directories

v1.21.0

22 Oct 20:29
818ca8b

Choose a tag to compare

[VAULT-40260] This is an automated pull request to build all artifact…

v1.21.0-rc1

10 Oct 00:53
27ff647

Choose a tag to compare

v1.21.0-rc1 Pre-release
Pre-release
[VAULT-40007] This is an automated pull request to build all artifact…

v1.20.4

24 Sep 20:43
55bd8f1

Choose a tag to compare

[VAULT-39673] This is an automated pull request to build all artifact…

v1.20.3

28 Aug 18:21
7665ff2

Choose a tag to compare

[VAULT-39259] This is an automated pull request to build all artifact…

v1.20.2

06 Aug 04:09
824d129

Choose a tag to compare

August 06, 2025

SECURITY:

BUG FIXES:

  • agent/template: Fixed issue where templates would not render correctly if namespaces was provided by config, and the namespace and mount path of the secret were the same. [GH-31392]
  • identity/mfa: revert cache entry change from #31217 and document cache entry values [GH-31421]

v1.20.1

24 Jul 20:10
b403b1a

Choose a tag to compare

[VAULT-38326] This is an automated pull request to build all artifact…

v1.20.0

25 Jun 13:57
6fdd6b5

Choose a tag to compare

1.20.0

June 25, 2025

SECURITY:

  • core: require a nonce when cancelling a rekey operation that was initiated within the last 10 minutes. [GH-30794]

CHANGES:

  • UI: remove outdated and unneeded js string extensions [GH-29834]
  • activity (enterprise): The sys/internal/counters/activity endpoint will return actual values for new clients in the current month.
  • activity (enterprise): provided values for start_time and end_time in sys/internal/counters/activity are aligned to the corresponding billing period.
  • activity: provided value for end_time in sys/internal/counters/activity is now capped at the end of the last completed month. [GH-30164]
  • api: Update the default API client to check for the Retry-After header and, if it exists, wait for the specified duration before retrying the request. [GH-30887]
  • auth/alicloud: Update plugin to v0.21.0 [GH-30810]
  • auth/azure: Update plugin to v0.20.2. Login requires resource_group_name, vm_name, and vmss_name to match token claims [GH-30052]
  • auth/azure: Update plugin to v0.20.3 [GH-30082]
  • auth/azure: Update plugin to v0.20.4 [GH-30543]
  • auth/azure: Update plugin to v0.21.0 [GH-30872]
  • auth/azure: Update plugin to v0.21.1 [GH-31010]
  • auth/cf: Update plugin to v0.20.1 [GH-30583]
  • auth/cf: Update plugin to v0.21.0 [GH-30842]
  • auth/gcp: Update plugin to v0.20.2 [GH-30081]
  • auth/jwt: Update plugin to v0.23.2 [GH-30431]
  • auth/jwt: Update plugin to v0.24.1 [GH-30876]
  • auth/kerberos: Update plugin to v0.15.0 [GH-30845]
  • auth/kubernetes: Update plugin to v0.22.1 [GH-30910]
  • auth/oci: Update plugin to v0.19.0 [GH-30841]
  • auth/saml: Update plugin to v0.6.0
  • core: Bump Go version to 1.24.4.
  • core: Verify that the client IP address extracted from an X-Forwarded-For header is a valid IPv4 or IPv6 address [GH-29774]
  • database/couchbase: Update plugin to v0.14.0 [GH-30836]
  • database/elasticsearch: Update plugin to v0.18.0 [GH-30796]
  • database/mongodbatlas: Update plugin to v0.15.0 [GH-30856]
  • database/redis-elasticache: Update plugin to v0.7.0 [GH-30785]
  • database/redis: Update plugin to v0.6.0 [GH-30797]
  • database/snowflake: Update plugin to v0.14.0 [GH-30748]
  • database/snowflake: Update plugin to v0.14.1 [GH-30868]
  • logical/system: add ent stub for plugin catalog handling [GH-30890]
  • quotas/rate-limit: Round up the Retry-After value to the nearest second when calculating the retry delay. [GH-30887]
  • secrets/ad: Update plugin to v0.21.0 [GH-30819]
  • secrets/alicloud: Update plugin to v0.20.0 [GH-30809]
  • secrets/azure: Update plugin to v0.21.2 [GH-30037]
  • secrets/azure: Update plugin to v0.21.3 [GH-30083]
  • secrets/azure: Update plugin to v0.22.0 [GH-30832]
  • secrets/gcp: Update plugin to v0.21.2 [GH-29970]
  • secrets/gcp: Update plugin to v0.21.3 [GH-30080]
  • secrets/gcp: Update plugin to v0.22.0 [GH-30846]
  • secrets/gcpkms: Update plugin to v0.21.0 [GH-30835]
  • secrets/kubernetes: Update plugin to v0.11.0 [GH-30855]
  • secrets/kv: Update plugin to v0.24.0 [GH-30826]
  • secrets/mongodbatlas: Update plugin to v0.15.0 [GH-30860]
  • secrets/openldap: Update plugin to v0.15.2 [GH-30079]
  • secrets/openldap: Update plugin to v0.15.4 [GH-30279]
  • secrets/openldap: Update plugin to v0.16.0 [GH-30844]
  • secrets/terraform: Update plugin to v0.12.0 [GH-30905]
  • server: disable_mlock configuration option is now required for integrated storage and no longer has a default. If you are using the default value with integrated storage, you must now explicitly set disable_mlock to true or false or Vault server will fail to start. [GH-29974]
  • ui/activity: Replaces mount and namespace attribution charts with a table to allow sorting
    client count data by namespace, mount_path, mount_type or number of clients for
    a selected month. [GH-30678]
  • ui: Client count side nav link 'Vault Usage Metrics' renamed to 'Client Usage' [GH-30765]
  • ui: Client counting "running total" charts now reflect new clients only [GH-30506]
  • ui: Removed FormError component (not used) [GH-34699]
  • ui: Selecting a different method in the login form no longer updates the /vault/auth?with= query parameter [GH-30500]
  • ui: /vault/auth?with= query parameter now exclusively refers to the auth mount path and renders a simplified form [GH-30500]

FEATURES:

  • Auto Irrevocable Lease Removal (Enterprise): Add the Vault Enterprise configuration param, remove_irrevocable_lease_after. When set to a non-zero value, this will automatically delete irrevocable leases after the configured duration exceeds the lease's expire time. The minimum duration allowed for this field is two days. [GH-30703]
  • Development Cluster Configuration (Enterprise): Added development_cluster as a field to Vault's utilization reports.
    The field is configurable via HCL and indicates whether the cluster is being used in a development environment, defaults to false if not set. [GH-30659]
  • Entity-based and collective rate limit quotas (Enterprise): Add new group_by field to the rate limit quota API to support different grouping modes.
  • Login form customization (Enterprise): Adds support to choose a default and/or backup auth methods for the web UI login form to streamline the web UI login experience. [GH-30700]
  • Plugin Downloads: Support automatically downloading official HashiCorp secret and auth plugins from releases.hashicorp.com (beta)
  • SSH Key Signing Improvements (Enterprise): Add support for using managed keys to sign SSH keys in the SSH secrets engine.
  • Secret Recovery from Snapshot (Enterprise): Adds a framework to load an integrated storage
    snapshot into Vault and read, list, and recover KV v1 and cubbyhole secrets from the snapshot. [GH-30739]
  • UI Secrets Engines: TOTP secrets engine is now supported. [GH-29751]
  • UI Telemetry: Add Posthog for UI telemetry tracking on Vault Dedicated managed clusters [GH-30425]
  • Vault Namespace Picker: Updating the Vault Namespace Picker to enable search functionality, allow direct navigation to nested namespaces and improve accessibility. [GH-30490]
  • Vault PKI SCEP Server (Enterprise): Support for the Simple Certificate Enrollment Protocol (SCEP) has been added to the Vault PKI Plugin. This allows standard SCEP clients to request certificates from a Vault server with no knowledge of Vault APIs.

IMPROVEMENTS:

  • activity (enterprise): Added vault.client.billing_period.activity telemetry metric to emit information about the total number of distinct clients used in the current billing period.
  • activity: mount_type was added to the API response of sys/internal/counters/activity [GH-30071]
  • activity: mount_type was added to the API response of sys/internal/counters/activity
  • api (enterprise): Added a new API, /sys/utilization-report, giving a snapshot overview of Vault's utilization at a high level.
  • api/client: Add Cert auth method support. This allows the client to authenticate using a client certificate. [GH-29546]
  • core (en...
Read more

v1.20.0-rc2

17 Jun 20:20
2b4cfe1

Choose a tag to compare

v1.20.0-rc2 Pre-release
Pre-release
[VAULT-37186] This is an automated pull request to build all artifact…