Changelog¶
The changelog format is based on Keep a Changelog.
This project uses Semantic Versioning - MAJOR.MINOR.PATCH
1.8.0 (2026-08-09)¶
No significant changes.
1.8.0 (2026-08-09)¶
Changed¶
Made
destroyandwipeoperations proxy todeleteon KV v1 secrets instead of refusing with an exception
Fixed¶
Fixed
vault_pki.certificate_managednot detecting changes to requestedalt_names#127Fixed KV lookup failures in very specific situations when a KV v1 mount has the full name of a KV v2 mount as a prefix
Fixed KVv2 paths whose root key started with KVv2 prefixes such as
data(example:secret_mount/database) from being mishandled and leading to permission denied/not found errorsFixed LeaseStore.get not flushing already expired leases from cache when called without
revokeargumentFixed
sdb.get/sdb.setraising an unhandledValueErrorinstead of a usage error when the SDB URI did not contain a path/key separatorFixed
sdb.setwith SDB module and single-use tokens issued by the master when thepatchoption was enabled in the profileFixed
sdb.setwith thepatchoption enabled unexpectedly overwriting the complete secret when its data could not be read (e.g. write-only policies or exhausted token uses)Fixed
vault.auth_inforunner crashing when AppRole is configured withbind_secret_id: falseFixed
vault.clear_cacherunner not clearing cached AppRole metadata/rendered policies whencache:backendissessionand not revoking impersonated minion tokensFixed
vault_db.connection_presentfailing and rewriting the connection on every run for plugins with secret parameters other thanpassword, e.g.private_keyformongodb_atlasFixed
vault_db.connection_presentmishandlingroot_rotation_statementspassed as a stringFixed
vault_db.connection_presentraising an uncaught exception instead of failing cleanly when required plugin parameters were missingFixed
vault_db.creds_cachedcrashing or misdetecting the need for renewal when the cached lease’smin_ttland the requestedvalid_forwere specified as a mix of time strings and integersFixed
vault_db.creds_cachedresetting cached lease attributes (renew_increment,revoke_delay,meta) that were not specified in the state call when applying other changesFixed
vault_db.creds_cached/creds_uncachedraising uncaught exceptions instead of reporting failures via the state resultFixed
vault_leasebeacon configuration validation raising an exception instead of reporting a validation failure when lease cache keys were not stringsFixed
vault_pki.certificate_managedcrashing instead of failing cleanly when the issuer reference did not existFixed
vault_pki.certificate_managedcrashing on subsequent runs whenencodingwas set toderFixed
vault_pki.certificate_managedwithappend_ca_chainnever converging for binary encodings. The chain is now included forpkcs7_der, while the impossible combination withderfails earlyFixed
vault_pki.issue_certificate/sign_certificatecorrupting SANs whenalt_namesis passed as a mappingFixed
vault_pki.list_certificates/list_revoked_certificatesraising an exception instead of returning an empty list when no (revoked) certificates are presentFixed
vault_pki.role_managedrewriting the role on every run when list-type (e.g.allowed_domains) or duration (not_before_duration, notttl/max_ttl) parameters were specified as stringsFixed
vault_secret.presentcrashing when replacing an existing scalar value with a mapping in the default patch modeFixed
vault_secret.presentfailing or silently dropping secret keys named like function parameters (e.g.path) or prefixed with double underscoresFixed
vault_ssh.ca_present/absentfailing to work as expected when the authenticated read CA config path was deniedFixed
vault_ssh.get_signing_policyreporting a phantom empty principal/extension whenallowed_users,allowed_domainsorallowed_extensionsare unset on the roleFixed
vault_ssh.list_roles_ipreturning None instead of an empty list when no role matches IP on recent Vault releasesFixed
vault_ssh.role_present_canever converging whenallowed_user_key_lengthsvalues were specified as comma-separated stringsFixed authenticated unwrap requests not deducting a token use
Fixed cache handling of static DB role credentials
Fixed cached accessor information being lost when token/SecretID information was refreshed
Fixed clearing session cache not invalidating active client in context, which could reintroduce stale data into permanent cache or cause unexpected permission issues during long-running contexts
Fixed crash during loading of
vault_pkimodules whencryptographywas not available. This should not happen in most cases since it’s a requirement of this extension and a Salt core requirement, but might happen when this extension is forwarded to the target host via Salt-SSH.Fixed handling of
all_principalsinvault_sshssh_pkibackendFixed handling of multiple values in
default_userinvault_sshssh_pkibackendFixed raw KeyError when
cert_typewas not passed and not inferrable from a role definition in thevault_sshssh_pkibackendFixed remaining token ttl being corrupted by the templated policy rendering logic released in 1.7.0 (only used in
vault_sshbackend forssh_pki.certificate_managed)Fixed several execution module functions (
vault.clear_cache/clear_token_cache/update_config,vault_pki.read_issuer,vault_ssh.list_roles_ip) leaking Vault exceptions instead of raisingCommandExecutionErrorFixed the
vault_leasebeacon crashing whenmin_ttlwas explicitly set tonullin the beacon configurationFixed the
vault_leasebeacon firing duplicate lease expiry events on the Salt event bus whencache:expire_eventswas enabledFixed the
vault_leasebeacon reporting stale lease information in expiry events when a renewal attempt did not manage to extend the lease tomin_ttlFixed the client unexpectedly raising ValueErrors when an error return was not valid JSON
Improved error and implemented a workaround when trying to set otherNames while simultaneously passing a private key to
vault_pki.sign_certificate
Added¶
Added the ability to override
server:urlin the minion config. The new value must be in a list of allowed values specified in the master configuration inserver:url_altsto take effect. #156Added
vault.patch_rawto patch secret data that cannot be passed as keyword argumentsAdded
vault_approleexecution, state and wrapper modules to manage and utilize the AppRole auth backendAdded
vault_gpgexecution, state and wrapper modules to interface with the custom plugin LeSuisse/vault-gpg-plugin. It’s now possible to generate, manage, import and export GPG keys and sign, decrypt and verify data.Added
vault_pluginexecution, state and wrapper modules to manage plugins and pinned versionsAdded expected creation path verification for wrapped secrets embedded in the
vault.get_configresponse (token and role_id), derived from the fresh config itselfAdded support for
allow_commas_in_identity_templatesfor SSH secret backend roles in OpenBaoAdded support for rendering of identity templates in
allowed_users,allowed_domainsanddefault_userinvault_sshssh_pkibackend
1.7.0 (2026-07-08)¶
Fixed¶
Fixed SDB patch fallback when PATCH requests are not allowed
Fixed
vault_db.creds_uncachedclearing cached credentials with custom cache key when cache key was not specifiedFixed
vault_db.static_role_presentmanagement ofrotation_statements, which was not passed to Vault, but the failure was alerted aboutFixed
vault_pki.certificate_manageddeleting symlinks in test mode whenfollow_symlinksis explicitly set tofalseFixed an existing DB connection’s explicit
plugin_versionbeing reset when it was not specified in a call tovault_db.write_connectionFixed autodetermination of unspecified
cert_typeinssh_pkibackend functionalityFixed clearing cache when
vault:cache:backendoverrides Salt’scacheFixed exception in
read_issuer_crlwhen issuer is missing - now returnsNone, as intendedFixed merging of
default_critical_optionsanddefault_extensionswith overrides inssh_pkibackendFixed passing multiple entries of the same SAN type in
vault_pki.(issue|sign)_certificateFixed reported failure in
vault_ssh.role_present_otpwhenportwas not set. The state application still worked.Fixed reporting of multiple subject element changes in
vault_pki.certificate_managedFixed revocation delay of leases with
renew_incrementsetFixed the pillar module’s
merge_listsbeing ignored when it was set tofalseand Salt’spillar_merge_listswas enabledSynchronized event format for
vault/lease/*/expirebetween sources tottl-ttlandttl_leftwere both used before, depending on the source of the event
Added¶
Added
read_certificate_fullexecution function to thevault_pkimodule, returning the certificate, its CA chain and miscellaneous information as a dictionary. #145Added support for rendering identity templates in the
ssh_pkibackend, which fixes idempotency whendefault_extensions_templateis enabled. This functionality requires an adjusted policy
1.6.0 (2026-05-20)¶
Fixed¶
Added¶
Added compatibility for
vault_sshto be used as thebackendfor the newssh_pki.certificate_managedstate introduced in Salt 3008, making stateful SSH certificate management using Vault-issued certificates possible on Salt 3008+ #138
1.5.0 (2026-03-09)¶
Fixed¶
Fixed
vault_ssh.ca_(present|absent)in OpenBao
Added¶
Added official OpenBao support #139
1.4.0 (2026-02-15)¶
Changed¶
Marked some API methods using
POST/PATCHrequests as safe to retry by default since they are effectively idempotent #97
Fixed¶
Fixed handling of
retry_after_maxwith urllib3 2.6.3, which introduced the same parameter and set its default to 6h. Whenretry_after_maxis explicitly set toNone, we default to 6h from now on too, otherwise the previous default of 60s applies. #130Fixed SDB URI resolution in
auth:tokento make documented token-from-env behavior work #133Fixed Vault client token lookups using an accessor. These lookups used the wrong API method (
GETinstead ofPOST)
Added¶
1.3.2 (2025-05-04)¶
Fixed¶
Fixed vault_pki.certificate_managed always recreating certificate with
append_ca_chain=True#123
1.3.1 (2025-03-24)¶
Fixed¶
Fixed running
vault.sync_approleson a fresh, empty mount #111
1.3.0 (2024-12-09)¶
Fixed¶
Fixed a crash when a templated field accesses an out-of-bounds list index
Added¶
When metadata that is written to Vault is templated using a list or dict, in addition to concatenating the values into a sorted comma-separated list, the master now additionally creates a separate suffixed key for each individual item #106
1.2.2 (2024-11-10)¶
Fixed¶
Fixed compatibility with master cluster mode #99
1.2.1 (2024-11-07)¶
Fixed¶
Fixed the client used for unwrapping authentication credentials not respecting
clientconfiguration when no cached configuration is available #95
v1.2.0 (2024-10-02)¶
Changed¶
Readded direct package dependency on cryptography
Fixed¶
Change unseal query to be always unauthenticated. #85
Added¶
Added support for credential orchestration in Salt-SSH wrappers, added wrappers for vault, vault_db, vault_pki modules #54
Added
vault_sshexecution, state and wrapper modules for managing and using the SSH secret backend #58Improved handling of KV v2 secret versions #61
Added
vault_secretstate module for statefully managing secrets #62
v1.1.1 (2024-07-24)¶
Changed¶
Required x509_v2 modules to be available for specific parameters to
vault_pki, dropped direct dependency on cryptography #78
Fixed¶
Fixed vault.update_config crash #77
v1.1.0 (2024-07-23)¶
Removed¶
Fixed¶
Fixed a crash when renewing/revoking leases that have been revoked on the Vault server early #45
Added¶
Added an optional switch for validating cached leases with the Vault server before returning them from the LeaseStore #46
Implemented setting per-lease defaults of lifecycle parameters #47
Implemented caching arbitrary metadata together with a lease and included it in expiry events #48
Added a LeaseStore method for listing cached lease information #49
Added
vault_dbmodules for management and usage of the Vault database secret backend #52Added
vault_leasebeacon module to monitor and renew cached leases #53Added vault_pki modules for interfacing with the PKI backend and managing X.509 certificates #58
Added support for retry logic and specific connection settings in
vault:client#65
v1.0.0 (2024-04-23)¶
Deprecated¶
Deprecated Vault pillar configuration with
confparameter andpath=prefix #30
Changed¶
Changed Vault pillar module configuration #30
Fixed¶
Fixed Salt master does not renew token #10
Fixed vault module fetching more than one secret in one run with single-use tokens #11
Fixed Vault verify option to work on minions when only specified in master config #12
Fixed vault command errors configured locally #13
Fixed sdb.get_or_set_hash with Vault single-use tokens #14
Fixed Vault session storage to allow unlimited use tokens #15
Fixed salt-minion 3006.0 KeyError without ‘vault’ config key #22
Fixed verify parameter for unwrap requests #34
Added¶
Added Vault AppRole and identity issuance to minions #16
Added Vault AppRole auth mount path configuration option #17
Added distribution of Vault authentication details via response wrapping #18
Added Vault token lifecycle management #19
Added Vault lease management utility #20
Added patch option to Vault SDB driver #21
Added inline specification of trusted CA root certificate for Vault #23
Added support for dictionary keys in pattern #26