$npx -y @buildinternet/releases show rel_zYkwAk4DIriHywgc5EjqE
1.13.0
March 01, 2023
SECURITY:
secrets/ssh: removal of the deprecated dynamic keys mode. When any remaining dynamic key leases expire, an error stating secret is unsupported by this backend will be thrown by the lease manager. [GH-18874]
CHANGES:
auth/alicloud: require the role field on login [GH-19005]
auth/approle: Add maximum length of 4096 for approle role_names, as this value results in HMAC calculation [GH-17768]
auth: Returns invalid credentials for ldap, userpass and approle when wrong credentials are provided for existent users.
This will only be used internally for implementing user lockout. [GH-17104]
core: Bump Go version to 1.20.1.
core: Vault version has been moved out of sdk and into main vault module.
Plugins using sdk/useragent.String must instead use sdk/useragent.PluginString. [GH-14229]
logging: Removed legacy environment variable for log format ('LOGXI_FORMAT'), should use 'VAULT_LOG_FORMAT' instead [GH-17822]
plugins: Mounts can no longer be pinned to a specific builtin version. Mounts previously pinned to a specific builtin version will now automatically upgrade to the latest builtin version, and may now be overridden if an unversioned plugin of the same name and type is registered. Mounts using plugin versions without builtin in their metadata remain unaffected. [GH-18051]
plugins: GET /database/config/:name endpoint now returns an additional plugin_version field in the response data. [GH-16982]
plugins: GET /sys/auth/:path/tune and GET /sys/mounts/:path/tune endpoints may now return an additional plugin_version field in the response data if set. [GH-17167]
plugins: GET for /sys/auth, /sys/auth/:path, /sys/mounts, and /sys/mounts/:path paths now return additional plugin_version, running_plugin_version and running_sha256 fields in the response data for each mount. [GH-17167]
sdk: Remove version package, make useragent.String versionless. [GH-19068]
secrets/aws: do not create leases for non-renewable/non-revocable STS credentials to reduce storage calls [GH-15869]
secrets/gcpkms: Updated plugin from v0.13.0 to v0.14.0 [GH-19063]
sys/internal/inspect: Turns of this endpoint by default. A SIGHUP can now be used to reload the configs and turns this endpoint on.
Azure Auth Managed Identities: Allow any Azure resource that supports managed identities to authenticate with Vault [GH-19077]
Azure Auth Rotate Root: Add support for rotate root in Azure Auth engine [GH-19077]
Event System (Alpha): Vault has a new opt-in experimental event system. Not yet suitable for production use. Events are currently only generated on writes to the KV secrets engine, but external plugins can also be updated to start generating events. [GH-19194]
GCP Secrets Impersonated Account Support: Add support for GCP service account impersonation, allowing callers to generate a GCP access token without requiring Vault to store or retrieve a GCP service account key for each role. [GH-19018]
Kubernetes Secrets Engine UI: Kubernetes is now available in the UI as a supported secrets engine. [GH-17893]
New PKI UI: Add beta support for new and improved PKI UI [GH-18842]
PKI Cross-Cluster Revocations: Revocation information can now be
synchronized across primary and performance replica clusters offering
a unified CRL/OCSP view of revocations across cluster boundaries. [GH-19196]
Server UDS Listener: Adding listener to Vault server to serve http request via unix domain socket [GH-18227]
Transit managed keys: The transit secrets engine now supports configuring and using managed keys
User Lockout: Adds support to configure the user-lockout behaviour for failed logins to prevent
brute force attacks for userpass, approle and ldap auth methods. [GH-19230]
VMSS Flex Authentication: Adds support for Virtual Machine Scale Set Flex Authentication [GH-19077]
Namespaces (enterprise): Added the ability to allow access to secrets and more to be shared across namespaces that do not share a namespace hierarchy. Using the new sys/config/group-policy-application API, policies can be configured to apply outside of namespace hierarchy, allowing this kind of cross-namespace sharing.
OpenAPI-based Go & .NET Client Libraries (Beta): We have now made available two new OpenAPI-based Go & .NET Client libraries (beta). You can use them to perform various secret management operations easily from your applications.
IMPROVEMENTS:
Redis ElastiCache DB Engine: Renamed configuration parameters for disambiguation; old parameters still supported for compatibility. [GH-18752]
Bump github.com/hashicorp/go-plugin version from 1.4.5 to 1.4.8 [GH-19100]
api: Support VAULT_DISABLE_REDIRECTS environment variable (and --disable-redirects flag) to disable default client behavior and prevent the client following any redirection responses. [GH-17352]
audit: Add elide_list_responses option, providing a countermeasure for a common source of oversized audit log entries [GH-18128]
audit: Include stack trace when audit logging recovers from a panic. [GH-18121]
auth/azure: Adds support for authentication with Managed Service Identity (MSI) from a
Virtual Machine Scale Set (VMSS) in flexible orchestration mode. [GH-17540]
auth/oidc: Adds abort_on_error parameter to CLI login command to help in non-interactive contexts [GH-19076]
auth/oidc: Adds ability to set Google Workspace domain for groups search [GH-19076]
auth/token (enterprise): Allow batch token creation in perfStandby nodes
auth: Allow naming login MFA methods and using those names instead of IDs in satisfying MFA requirement for requests.
Make passcode arguments consistent across login MFA method types. [GH-18610]
auth: Provide an IP address of the requests from Vault to a Duo challenge after successful authentication. [GH-18811]
autopilot: Update version to v.0.2.0 to add better support for respecting min quorum
cli/kv: improve kv CLI to remove data or custom metadata using kv patch [GH-18067]
cli/pki: Add List-Intermediates functionality to pki client. [GH-18463]
cli/pki: Add health-check subcommand to evaluate the health of a PKI instance. [GH-17750]
cli/pki: Add pki issue command, which creates a CSR, has a vault mount sign it, then reimports it. [GH-18467]
cli/pki: Added "Reissue" command which allows extracting fields from an existing certificate to create a new certificate. [GH-18499]
cli/pki: Change the pki health-check --list default config output to JSON so it's a usable configuration file [GH-19269]
cli: Add support for creating requests to existing non-KVv2 PATCH-capable endpoints. [GH-17650]
cli: Add transit import key helper commands for BYOK to Transit/Transform. [GH-18887]
cli: Support the -format=raw option, to read non-JSON Vault endpoints and original response bodies. [GH-14945]
cli: updated vault operator rekey prompts to describe recovery keys when -target=recovery [GH-18892]
client/pki: Add a new command verify-sign which checks the relationship between two certificates. [GH-18437]
command/server: Environment variable keys are now logged at startup. [GH-18125]
core/fips: use upstream toolchain for FIPS 140-2 compliance again; this will appear as X=boringcrypto on the Go version in Vault server logs.
core/identity: Add machine-readable output to body of response upon alias clash during entity merge [GH-17459]
core/server: Added an environment variable to write goroutine stacktraces to a
temporary file for SIGUSR2 signals. [GH-17929]
core: Add RPCs to read and update userFailedLoginInfo map
core: Add experiments system and events.alpha1 experiment. [GH-18682]
core: Add read support to sys/loggers and sys/loggers/:name endpoints [GH-17979]
core: Add user lockout field to config and configuring this for auth mount using auth tune to prevent brute forcing in auth methods [GH-17338]
core: Add vault.core.locked_users telemetry metric to emit information about total number of locked users. [GH-18718]
core: Added sys/locked-users endpoint to list locked users. Changed api endpoint from
sys/lockedusers/[mount_accessor]/unlock/[alias_identifier] to sys/locked-users/[mount_accessor]/unlock/[alias_identifier]. [GH-18675]
core: Added sys/lockedusers/[mount_accessor]/unlock/[alias_identifier] endpoint to unlock an user
with given mount_accessor and alias_identifier if locked [GH-18279]
core: Added warning to /sys/seal-status and vault status command if potentially dangerous behaviour overrides are being used. [GH-17855]
core: Implemented background thread to update locked user entries every 15 minutes to prevent brute forcing in auth methods. [GH-18673]
core: License location is no longer cache exempt, meaning sys/health will not contribute as greatly to storage load when using consul as a storage backend. [GH-17265]
core: Update protoc from 3.21.5 to 3.21.7 [GH-17499]
core: add detect_deadlocks config to optionally detect core state deadlocks [GH-18604]
core: added changes for user lockout workflow. [GH-17951]
core: parallelize backend initialization to improve startup time for large numbers of mounts. [GH-18244]
database/postgres: Support multiline strings for revocation statements. [GH-18632]
database/redis-elasticache: changed config argument names for disambiguation [GH-19044]
database/snowflake: Allow parallel requests to Snowflake [GH-17593]
hcp/connectivity: Add foundational OSS support for opt-in secure communication between self-managed Vault nodes and HashiCorp Cloud Platform [GH-18228]
hcp/connectivity: Include HCP organization, project, and resource ID in server startup logs [GH-18315]
hcp/connectivity: Only update SCADA session metadata if status changes [GH-18585]
hcp/status: Add cluster-level status information [GH-18351]
hcp/status: Expand node-level status information [GH-18302]
logging: Vault Agent supports logging to a specified file path via environment variable, CLI or config [GH-17841]
logging: Vault agent and server commands support log file and log rotation. [GH-18031]
migration: allow parallelization of key migration for vault operator migrate in order to speed up a migration. [GH-18817]
namespaces (enterprise): Add new API, sys/config/group-policy-application, to allow group policies to be configurable
to apply to a group in any namespace. The default, within_namespace_hierarchy, is the current behaviour.
openapi: Add default values to thing_mount_path parameters [GH-18935]
openapi: Add logic to generate openapi response structures [GH-18192]
openapi: Add openapi response definitions to approle/path_login.go & approle/path_tidy_user_id.go [GH-18772]
openapi: Add openapi response definitions to approle/path_role.go [GH-18198]
openapi: Change gen_openapi.sh to generate schema with generic mount paths [GH-18934]
openapi: Mark request body objects as required [GH-17909]
openapi: add openapi response defintions to /sys/audit endpoints [GH-18456]
openapi: generic_mount_paths: Move implementation fully into server, rather than partially in plugin framework; recognize all 4 singleton mounts (auth/token, cubbyhole, identity, system) rather than just 2; change parameter from {mountPath} to {<type>_mount_path} [GH-18663]
plugins: Add plugin version information to key plugin lifecycle log lines. [GH-17430]
plugins: Allow selecting builtin plugins by their reported semantic version of the form vX.Y.Z+builtin or vX.Y.Z+builtin.vault. [GH-17289]
plugins: Let Vault unseal and mount deprecated builtin plugins in a
deactivated state if this is not the first unseal after an upgrade. [GH-17879]
plugins: Mark app-id auth method Removed and remove the plugin code. [GH-18039]
plugins: Mark logical database plugins Removed and remove the plugin code. [GH-18039]
sdk/ldap: Added support for paging when searching for groups using group filters [GH-17640]
sdk: Add response schema validation method framework/FieldData.ValidateStrict and two test helpers (ValidateResponse, ValidateResponseData) [GH-18635]
sdk: Adding FindResponseSchema test helper to assist with response schema validation in tests [GH-18636]
secrets/pki: Allow tidying of expired issuer certificates. [GH-17823]
secrets/pki: Allow tidying of the legacy ca_bundle, improving startup on post-migrated, seal-wrapped PKI mounts. [GH-18645]
secrets/pki: Respond with written data to config/auto-tidy, config/crl, and roles/:role. [GH-18222]
secrets/pki: Return issuer_id and issuer_name on /issuer/:issuer_ref/json endpoint. [GH-18482]
secrets/pki: Return new fields revocation_time_rfc3339 and issuer_id to existing certificate serial lookup api if it is revoked [GH-17774]
secrets/ssh: Allow removing SSH host keys from the dynamic keys feature. [GH-18939]
secrets/ssh: Evaluate ssh validprincipals user template before splitting [GH-16622]
secrets/transit: Add an optional reference field to batch operation items
which is repeated on batch responses to help more easily correlate inputs with outputs. [GH-18243]
secrets/transit: Add associated_data parameter for additional authenticated data in AEAD ciphers [GH-17638]
secrets/transit: Add support for PKCSv1_5_NoOID RSA signatures [GH-17636]
secrets/transit: Allow configuring whether upsert of keys is allowed. [GH-18272]
cli: Fix issue preventing kv commands from executing properly when the mount path provided by -mount flag and secret key path are the same. [GH-17679]
cli: Fix vault read handling to return raw data as secret.Data when there is no top-level data object from api response. [GH-17913]
cli: Remove empty table heading for vault secrets list -detailed output. [GH-17577]
command/namespace: Fix vault cli namespace patch examples in help text. [GH-18143]
core (enterprise): Fix missing quotation mark in error message
core (enterprise): Fix panic that could occur with SSCT alongside invoking external plugins for revocation.
core (enterprise): Fix panic when using invalid accessor for control-group request
core (enterprise): Fix perf standby WAL streaming silently failures when replication setup happens at a bad time.
core (enterprise): Supported storage check in vault server command will no longer prevent startup. Instead, a warning will be logged if configured to use storage backend other than raft or consul.
core/activity: add namespace breakdown for new clients when date range spans multiple months, including the current month. [GH-18766]
core/activity: de-duplicate namespaces when historical and current month data are mixed [GH-18452]
core/activity: fix the end_date returned from the activity log endpoint when partial counts are computed [GH-17856]
core/activity: include mount counts when de-duplicating current and historical month data [GH-18598]
core/activity: report mount paths (rather than mount accessors) in current month activity log counts and include deleted mount paths in precomputed queries. [GH-18916]
core/activity: return partial month counts when querying a historical date range and no historical data exists. [GH-17935]
core/auth: Return a 403 instead of a 500 for wrapping requests when token is not provided [GH-18859]
core/managed-keys (enterprise): Limit verification checks to mounts in a key's namespace
core/managed-keys (enterprise): Switch to using hash length as PSS Salt length within the test/sign api for better PKCS#11 compatibility
core/quotas (enterprise): Fix a lock contention issue that could occur and cause Vault to become unresponsive when creating, changing, or deleting lease count quotas.
core/quotas (enterprise): Fix a potential deadlock that could occur when using lease count quotas.
core/quotas: Fix issue with improper application of default rate limit quota exempt paths [GH-18273]
core/seal: Fix regression handling of the key_id parameter in seal configuration HCL. [GH-17612]
core: Fix panic caused in Vault Agent when rendering certificate templates [GH-17419]
core: Fix potential deadlock if barrier ciphertext is less than 4 bytes. [GH-17944]
core: Fix spurious permission denied for all HelpOperations on sudo-protected paths [GH-18568]
core: Fix vault operator init command to show the right curl string with -output-curl-string and right policy hcl with -output-policy [GH-17514]
core: Fixes spurious warnings being emitted relating to "unknown or unsupported fields" for JSON config [GH-17660]
core: Linux packages now have vendor label and set the default label to HashiCorp.
This fix is implemented for any future releases, but will not be updated for historical releases.
core: Prevent panics in sys/leases/lookup, sys/leases/revoke, and sys/leases/renew endpoints if provided lease_id is null [GH-18951]
core: fix GPG encryption to support subkeys. [GH-16224]
core: fix a start up race condition where performance standbys could go into a
mount loop if default policies are not yet synced from the active node. [GH-17801]
core: fix bug where context cancellations weren't forwarded to active node from performance standbys.
core: fix race when using SystemView.ReplicationState outside of a request context [GH-17186]
core: prevent memory leak when using control group factors in a policy [GH-17532]
core: prevent panic during mfa after enforcement's namespace is deleted [GH-17562]
core: prevent panic in login mfa enforcement delete after enforcement's namespace is deleted [GH-18923]
core: trying to unseal with the wrong key now returns HTTP 400 [GH-17836]
credential/cert: adds error message if no tls connection is found during the AliasLookahead operation [GH-17904]
database/mongodb: Fix writeConcern set to be applied to any query made on the database [GH-18546]
expiration: Prevent panics on perf standbys when an irrevocable lease gets deleted. [GH-18401]
kmip (enterprise): Fix a problem with some multi-part MAC Verify operations.
kmip (enterprise): Only require data to be full blocks on encrypt/decrypt operations using CBC and ECB block cipher modes.
license (enterprise): Fix bug where license would update even if the license didn't change.
licensing (enterprise): update autoloaded license cache after reload
login: Store token in tokenhelper for interactive login MFA [GH-17040]
openapi: Fix many incorrect details in generated API spec, by using better techniques to parse path regexps [GH-18554]
openapi: fix gen_openapi.sh script to correctly load vault plugins [GH-17752]
plugins/kv: KV v2 returns 404 instead of 500 for request paths that incorrectly include a trailing slash. [GH-17339]
plugins: Allow running external plugins which override deprecated builtins. [GH-17879]
plugins: Corrected the path to check permissions on when the registered plugin name does not match the plugin binary's filename. [GH-17340]
plugins: Listing all plugins while audit logging is enabled will no longer result in an internal server error. [GH-18173]
plugins: Only report deprecation status for builtin plugins. [GH-17816]
plugins: Skip loading but still mount data associated with missing plugins on unseal. [GH-18189]
plugins: Vault upgrades will no longer fail if a mount has been created using an explicit builtin plugin version. [GH-18051]
replication (enterprise): Fix bug where reloading external plugin on a secondary would
break replication.
sdk: Don't panic if system view or storage methods called during plugin setup. [GH-18210]
secret/pki: fix bug with initial legacy bundle migration (from < 1.11 into 1.11+) and missing issuers from ca_chain [GH-17772]
secrets/ad: Fix bug where updates to config would fail if password isn't provided [GH-19061]
secrets/gcp: fix issue where IAM bindings were not preserved during policy update [GH-19018]
secrets/mongodb-atlas: Fix a bug that did not allow WAL rollback to handle partial failures when creating API keys [GH-19111]
secrets/pki: Address nil panic when an empty POST request is sent to the OCSP handler [GH-18184]
secrets/pki: Allow patching issuer to set an empty issuer name. [GH-18466]
secrets/pki: Do not read revoked certificates from backend when CRL is disabled [GH-17385]
secrets/pki: Fix upgrade of missing expiry, delta_rebuild_interval by setting them to the default. [GH-17693]
secrets/pki: Fixes duplicate otherName in certificates created by the sign-verbatim endpoint. [GH-16700]
secrets/pki: OCSP GET request parameter was not being URL unescaped before processing. [GH-18938]
secrets/pki: Respond to tidy-status, tidy-cancel on PR Secondary clusters. [GH-17497]
secrets/pki: consistently use UTC for CA's notAfter exceeded error message [GH-18984]
secrets/pki: fix race between tidy's cert counting and tidy status reporting. [GH-18899]
secrets/transit: Do not warn about unrecognized parameter 'batch_input' [GH-18299]
secrets/transit: Honor partial_success_response_code on decryption failures. [GH-18310]
server/config: Use file.Stat when checking file permissions when VAULT_ENABLE_FILE_PERMISSIONS_CHECK is enabled [GH-19311]
storage/raft (enterprise): An already joined node can rejoin by wiping storage
and re-issueing a join request, but in doing so could transiently become a
non-voter. In some scenarios this resulted in loss of quorum. [GH-18263]
storage/raft: Don't panic on unknown raft ops [GH-17732]
storage/raft: Fix race with follower heartbeat tracker during teardown. [GH-18704]
ui/keymgmt: Sets the defaultValue for type when creating a key. [GH-17407]
ui: Fix bug where logging in via OIDC fails if browser is in fullscreen mode [GH-19071]
ui: Fixes issue with not being able to download raft snapshot via service worker [GH-17769]
ui: Fixes oidc/jwt login issue with alternate mount path and jwt login via mount path tab [GH-17661]
ui: Remove default and add default-service and default-batch to UI token_type for auth mount and tuning. [GH-19290]
ui: Remove default value of 30 to TtlPicker2 if no value is passed in. [GH-17376]
ui: allow selection of "default" for ssh algorithm_signer in web interface [GH-17894]
ui: cleanup unsaved auth method ember data record when navigating away from mount backend form [GH-18651]
ui: fix entity policies list link to policy show page [GH-17950]
ui: fixes query parameters not passed in api explorer test requests [GH-18743]
ui: fixes reliance on secure context (https) by removing methods using the Crypto interface [GH-19403]
ui: show Get credentials button for static roles detail page when a user has the proper permissions. [GH-19190]