21787 Commits

Author SHA1 Message Date
Vault Automation
3c674ea8ae
VAULT-39383 updating go-discover (#9523) (#9534)
* updating go-discover

* adding changelog

* adjusting changelog

---------

Co-authored-by: JMGoldsmith <spartanaudio@gmail.com>
Co-authored-by: Tony Wittinger <anwittin@users.noreply.github.com>
2025-09-23 09:28:46 +02:00
Vault Automation
24f7d63a13
UI: Customize error handling for recovery errors (#9533) (#9550)
* add error template for recovery routes

* only render one link

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-22 15:51:00 -07:00
Vault Automation
2fb842d0c8
show recovery during production (#9532) (#9549)
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-22 15:50:51 -07:00
Vault Automation
3dace284b9
pipeline(changed-files): add 'github' changed file group (#9512) (#9543)
Add a new `github` changed file group that includes everything in the
`.github` directory. Further refine the `pipeline` group to only
include scripts, workflows, and actions files in `.github`. We also move
the `CODEOWNERS` file into `.github/` to simplify `github` grouping.

As `build` logic responds to changes to the `pipeline` group this will
result in no longer building and testing everything for simple
changes in `github` that don't affect the pipeline.

Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
2025-09-22 19:38:10 +00:00
Vault Automation
d1b34cf00c
pipeline(create-backport): fix inactive branch detection (#9531) (#9538)
When determining whether to skip a backport ref we currenly we have to
consider many factors:
  - Whether or not there are changed files?
  - If there are changed files, are some enterprise or CE?
  - Are there some changed files that ought to be backported to inactive
    branches?
  - Is the target branch active or not?

We had a large test suite that covered _most_ of these cases but because
the changed file set determines a lot of behavior we were missing cases
where we ought to backport normal mixed changed file sets for no other
reason other than the branch is active. After fixing and normalizing the
tests I fixed the source bug which is that we didn't strip the branch
prefix from the ref version when checking branch activeness.

Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
2025-09-22 17:38:51 +00:00
Vault Automation
5d9c784bb0
VAULT-35716 make allowed and denied_parameters compare lists (#9478) (#9524)
* make allowed and denied_parameters compare lists

* change name of env var

* add changelog

* linter fixes and unnecessary code removal

Co-authored-by: Bruno Oliveira de Souza <bruno.souza@hashicorp.com>
2025-09-22 11:20:37 -03:00
Vault Automation
be36cf4f8b
[VAULT-38602] Add improvements and additional testing to the login MFA self-enrollment endpoint (#9421) (#9521)
Co-authored-by: Kuba Wieczorek <kuba.wieczorek@hashicorp.com>
2025-09-19 23:32:29 +00:00
Vault Automation
ae1f92ddc4
Remove the crypto team as code owner of Go updates (#9485) (#9501)
- Now that all branches are upgraded to Go 1.24 we no longer need
   to guard against older branches from being upgraded for FIPS reasons.

Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2025-09-19 20:48:54 +00:00
Vault Automation
f66dc5a921
Avoid poisoning the trusted certificate cache on error (#9457) (#9496)
The code that loads the trusted certificate cache for cert-based
authentication ignores any error that occurs while attempting to load
any of the certificates that it finds. Undoubtedly some deployments
have broken certificates or other non-certificate files stored in
their respective back-ends, and so this is important behavior: we
don't want to fail authentication just because `README.md` is not a
valid certificate!

In addition, because listing files and loading certificates is
expensive, the server maintains a cache of trusted certificates. This
cache is populated the first time it's needed, and then used for the
lifetime of the process. If a file fails to load as a certificate,
then it is simply not included in the cache.

These two things lead to a problem when using a backend that might be
subject to transient failures: a hiccough in the certificate loading
process can cause the server to establish a cache that is missing an
otherwise valid certificate. This can then lead to clients failing to
authenticate to the server, until such time as the server is restarted
and the cache reloaded.

This change makes the certificate cache more resilient to loading
failures, by caching partial successes. With this patch, the cache
behavior becomes:

- If the cache exists *and* is either complete or it is not yet time
  to attempt to reload the certificates, then the cached results are
  used without reservation.

- Otherwise we attempt to load the certificates from storage:

  - If the cache does not already exist then a new, empty cache is
    created.

  - The storage is listed, we attempt to load everything in storage,
    skipping things that we have already successfully loaded, and
    skipping things that we cannot load, as usual.

  - Once we have attempted to load everything from storage, if there
    were any errors, we compute a deadline for retrying the load, with
    an exponentially increasing delay. If there were no errors, then
    the cache is considered complete, and there will be no retry.

This has the nice behavior that we recover from transient failures
eventually, while the exponential back-off ensures that we don't waste
too much time attempting to load certificates that can never be
loaded.

Co-authored-by: John Doty <john.doty@databricks.com>
Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2025-09-19 19:55:37 +00:00
Vault Automation
ab62e44b3a
Use reserved enterprise number for documentation purposes from RFC5612 (#9484) (#9492)
- Instead of using a reserved oid from LetsEncrypt in our tests
   and documentation (1.3.6.1.4.1.44947.1.2.4), use
   1.3.6.1.4.1.32473.1.2.4, which is in the reserved space for docs
   and examples based on RFC 5612

Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2025-09-19 19:00:07 +00:00
Vault Automation
b5ea7f1e74
Feature/vault 39458 (#9306) (#9321)
* Add Integrations Endpoint

* Test Fixes

* PR feed back, changelog, test docs, check authed

Co-authored-by: Kit Haines <khaines@mit.edu>
2025-09-19 14:49:53 -04:00
Vault Automation
41e73968b7
Add O= restrictions in addition to OU= restrictions to cert/auth (#9343) (#9465)
* Add O= restrictions in addition to OU= restrictions

* Add changelog

* Add goDoc to test

* Don't let test certificate expire.

Co-authored-by: Kit Haines <khaines@mit.edu>
2025-09-19 12:49:35 -04:00
Vault Automation
cccc6f9e4c
Backport [VAULT-39160] actions(hcp): add support for testing custom images on HCP into ce/main (#9433)
[VAULT-39160] actions(hcp): add support for testing custom images on HCP (#9345)

Add support for running the `cloud` scenario with a custom image in the
int HCP environment. We support two new tags that trigger new
functionality. If the `hcp/build-image` tag is present on a PR at the
time of `build`, we'll automatically trigger a custom build for the int
environment. If the `hcp/test` tag is present, we'll trigger a custom
build and run the `cloud` scenario with the resulting image.

* Fix a bug in our custom build pattern to handle prerelease versions.
* pipeline(hcp): add `--github-output` support to `show image` and
  `wait image` commands.
* enos(hcp/create_vault_cluster): use a unique identifier for HVN
  and vault clusters.
* actions(enos-cloud): add workflow to execute the `cloud` enos
  scenario.
* actions(build): add support for triggering a custom build and running
  the `enos-cloud` scenario.
* add more debug logging and query without a status
* add shim build-hcp-image for CE workflows

Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
2025-09-19 09:00:55 -07:00
Vault Automation
8ce8932117
UI: MFA self-enroll cleanup tasks (#9441) (#9456)
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-19 08:56:44 -07:00
Vault Automation
26d18367a1
VAULT-39444 Fix locking in rotation queue (#9336) (#9467)
* adding new locks

* adding initial testing

* changelog

* Update changelog/_9336.txt



* fixing test to use proper error output

* added additional locks on pops and last push.

* fixing tests since I cant use t.Fatalf in a go func

* adding rotation window, removing lock as reached a deadlock in test

* removing locking from the OnFailure

* removing unused locks.

---------

Co-authored-by: JMGoldsmith <spartanaudio@gmail.com>
Co-authored-by: John-Michael Faircloth <fairclothjm@users.noreply.github.com>
2025-09-19 17:40:11 +02:00
Vault Automation
5b2f37614c
Fix unsetting sys tunable values (on ent). (#9383) (#9458)
* Fix unsetting sys tunable values (on ent).

* Remove commented test, add GoDoc for test.

* Handle empty slices better (PR feedback).

* Fetch Auth endpoint without listing (PR feedback).

* Fatal vs. Error

* Add GetAuth instead of ListAuth

* Fix error format error.  Oops!

* One more list->get auth.  Remove extra check.

* Updated TuneMountWithContextAllowNil to use a struct (with all pointers).

* Allow setting empty values for userLockoutConfig too - use new struct.

* Extra pointer.

* Remove useless functions.

* Simple test to ensure any field we can set we can update and vice-versa.

* Add json tag checks.

Co-authored-by: Kit Haines <khaines@mit.edu>
2025-09-19 10:51:38 -04:00
Vault Automation
c73972ba52
Update vault-plugin-database-snowflake to v0.14.2 (#9417) (#9454)
* Update vault-plugin-database-snowflake to v0.14.2

* Add changelog

---------

Co-authored-by: hc-github-team-secure-vault-ecosystem <hc-github-team-secure-vault-ecosystem@users.noreply.github.com>
Co-authored-by: John-Michael Faircloth <fairclothjm@users.noreply.github.com>
2025-09-19 08:12:02 -05:00
Vault Automation
15ed6007d0
UI: Support database static roles recovery (#9374) (#9444)
* support read and recovery of database static roles

* add and update tests

* add changelog entry

* add manual database input support and fix search

* change dropdown alignment

* update changelog entry

* tidy

* update changelog and api headers

Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
2025-09-18 20:52:30 +00:00
Vault Automation
d1bad38f7f
Backport Don't allow non-pki mounts with pki-only license feature into ce/main (#9442) 2025-09-18 20:21:09 +00:00
Vault Automation
09b48c60b1
Revert "move all builds into docker container (#9264)" (#9426) (#9440)
This reverts commit a55e884517a7c1f25e097a52e1555d4f81137068.

Co-authored-by: Ryan Cragun <me@ryan.ec>
2025-09-18 18:04:41 +00:00
Vault Automation
5c750e4ebb
UI: Implement MFA TOTP self-enrollment (#9161) (#9427)
* support wide width splash page

* add enable_self_enrollment param to mfa-method config

* build and implement mfa setup-card display only component

* fix transition bug navigating away from mfa method

* rename mfa card

* WIP implement self-enrollment workflow

* wip integration tests

* convert mfa-form to typescript

* remove unused import

* show alert whenver there is a QR code

* organze mfa steps into Mfa::VerifyForm and Mfa::SelfEnroll

* WIP stretch goals of mfa redesign

* add copyright headers

* update test

* add support for multiple constraints with self-enrollment

* remove comment

* fix multi-method UX

* fix state for failed validation

* remove changing button for error states

* add error handling and validation messages

* minor cleanup for params

* first round of cleanup and reorganization

* final round of logic cleanup and organization

* touch ups after testing with live backend

* fix comment

* final test cleanup!

* Apply suggestions from code review

* improve mirage error handling to more accurately mimic real failures

* add test coverage

* make qr rendering logic easier

* address PR feedback

* submit enroll form on enter, remove code digit number from copy, reset enroll state

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-18 10:00:09 -07:00
Vault Automation
24cf5eef07
move client count typescript declarations to separate file (#9418) (#9429)
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-18 16:31:15 +00:00
Vault Automation
3aba34f58a
UI: Update header for Secret engines list page (#9416) (#9428)
* replacing page header with hds / updates

* add cluster name

* fix import

* move to exisiting getVersion task, update ref

Co-authored-by: Dan Rivera <dan.rivera@hashicorp.com>
2025-09-18 12:30:02 -04:00
Vault Automation
bf0cecea38
UI: Uninstall unused node-notifier dep (#9404) (#9419)
* remove node-notifier

* remove version pinning of node-notifier

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-18 08:53:41 -07:00
Vault Automation
02dd079e91
Backport UI: General settings Integration and Acceptance Tests. into ce/main (#9382)
* UI: General settings Integration and Acceptance Tests. (#9363)

* General settings integration tests

* Add page header integration tests

* Add page header test for plugin settings as a tab too

* More tests!

* Acceptance tests!

* Add more acceptnace tests

* Add copywrite headers

* Fix linting error

* Fix accessibility errors

* Remove unused vars

* Put mock secret engine back into beforeHook

* Add enterprise to key management test (#9392)

---------

Co-authored-by: Kianna <30884335+kiannaquach@users.noreply.github.com>
2025-09-17 16:47:58 -07:00
Vault Automation
8debe72733
VAULT-39598: Fixing Enos Dev Scenario KMIP Error (#9375) (#9396)
* testing kmip enos dev fix

* updating kmip

* updating kmip

* updating kmip

* updating kmip

* updating description

Co-authored-by: Tin Vo <tintvo08@gmail.com>
2025-09-17 11:57:29 -07:00
Vault Automation
cc9e227d0b
feat: pre-fill SAML login role from URL (#9394) (#9402)
* prefill role for saml auth method

* add changelog

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-17 18:16:57 +00:00
Vault Automation
dfc8b589be
feat: pre-fill OIDC login role from URL (#9342) (#9391)
* feat: pre-fill OIDC login role from URL

Closes #31340

* chore: add changelog file

* chore: format

* test: cover new behavior

* refactor: avoid router access within component

* chore: remove unused `value` from auth field model

* refactor: pass query param value by key

* =rename changelog

* Credit attribution.

 Co-authored-by: evan-cohen <25253818+evan-cohen@users.noreply.github.com>

---------

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
Co-authored-by: Evan Cohen <25253818+evan-cohen@users.noreply.github.com>
2025-09-17 09:42:12 -07:00
Vault Automation
de3d4453a3
UI: Improve formatting of API errors (#9330) (#9390)
* format error message with bullets

* format error message with bullets

* add changelog

* update kv error messages

* address tests and add coverage

* fix tests

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-09-17 09:41:24 -07:00
Vault Automation
64d421da69
UI: Add donut chart to client counts overview (#9040) (#9367)
* =replace client stats with donut chart viz

* update chart styling

* add a changelog entry

* test updates

* remove css changes

Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
2025-09-17 15:12:06 +00:00
Vault Automation
67b3e53325
move all builds into docker container (#9264) (#9384)
* move all builds into docker container

* pipe inputs.cgo-enabled into the right place

Co-authored-by: Josh Black <raskchanky@gmail.com>
2025-09-16 22:26:06 +00:00
Vault Automation
3942acf61a
[VAULT-39571] Update vault-reporting package to 0.8.0 (#9340) (#9344)
Co-authored-by: Eren Tantekin <eren.tantekin@hashicorp.com>
2025-09-16 15:17:27 -07:00
Vault Automation
f17451d675
[VAULT-39375] Ability to pick namespaces in usage dashboard (#9143) (#9259)
Co-authored-by: Eren Tantekin <eren.tantekin@hashicorp.com>
Co-authored-by: Jim Wright <jim.wright@hashicorp.com>
2025-09-16 13:36:39 -07:00
Vault Automation
64fd8225bc
Move PluginLicenseUtil to CE so it can be used via vault/sdk module (#9371) (#9381) 2025-09-16 20:22:17 +00:00
Vault Automation
528434ab83
UI: updates to how we handle unknown mount type (#9349) (#9378)
* updates to how we handle unknown mount type

* update test

Co-authored-by: Dan Rivera <dan.rivera@hashicorp.com>
2025-09-16 18:12:03 +00:00
Vault Automation
1515ea76fe
[VAULT-39375] Update vault-reporting to 0.5.1 (#9094) (#9141)
Co-authored-by: Eren Tantekin <eren.tantekin@hashicorp.com>
2025-09-16 11:01:11 -07:00
Vault Automation
3ce68d9623
[VAULT-38602] Remove the redundant PeekByKey method from the priority queue and login MFA priority queue (#9362) (#9373) 2025-09-16 17:19:39 +00:00
Vault Automation
bc60502ec9
Add role rotation info to create/update observations (#9254) (#9368)
* Add role rotation info to create/update observations

* observatin enhancements

* observatin enhancements

* remove log

* duration strings instead of seconds

* the stringening

* more times

* credential type

* Add rotation schedule/period to root rotation

* more ttls

* updates

Co-authored-by: Violet Hynes <violet.hynes@hashicorp.com>
2025-09-16 15:36:02 +00:00
Vault Automation
afd8a99bef
[VAULT-37521] UI: Enable secret engine remove bottom horizontal line (#9350) (#9353)
Co-authored-by: Shannon Roberts (Beagin) <beagins@users.noreply.github.com>
2025-09-16 08:04:57 -07:00
Vault Automation
37ddf246b4
use secure random number generation in lieu of (#9320) (#9355)
Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
2025-09-15 22:52:58 +00:00
Vault Automation
b4a1f08580
UI: Snapshot Recovery Improvements (#9225) (#9354)
* include mount and ns in recovery message, fix state issue

* fix state issue

* show in prod and add changelog

Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
2025-09-15 22:02:49 +00:00
Vault Automation
d058923558
[VAULT-38602] Ensure the requests to the new Login MFA TOTP self-enrollment endpoint are routed as login requests. (#9346) (#9348)
Co-authored-by: Kuba Wieczorek <kuba.wieczorek@hashicorp.com>
2025-09-15 19:27:25 +00:00
Vault Automation
7d026fa5a8
[VAULT-37521] UI: decouple auth and secret engines (#9307) (#9347)
* [VAULT-37521] UI: decouple auth and secret engines

* add copyright header

* address acceptance test failure

Co-authored-by: Shannon Roberts (Beagin) <beagins@users.noreply.github.com>
2025-09-15 18:22:35 +00:00
Vault Automation
8a3e640186
VAULT-37037 Use vault_index from events for Vault Proxy static secret cache (#9165) (#9311)
* VAULT-37037 Use vault_index from events for Vault Proxy static secret cache

* changelog

* Add sleep

* Clone, not modify, client

* whoops

* move the retries

Co-authored-by: Violet Hynes <violet.hynes@hashicorp.com>
2025-09-15 08:55:38 -07:00
Vault Automation
71da72b398
pipeline(hcp): fix JSON text output (#9302) (#9314)
Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
2025-09-12 11:54:13 -06:00
Vault Automation
6611a4a2a7
Support spiffe jwt-svid login requests in Authorization header, even when no X-Vault-Token header is present. (#9288) (#9313)
Co-authored-by: Nick Cabatoff <ncabatoff@hashicorp.com>
2025-09-12 11:48:46 -04:00
Vault Automation
0c3a3e239e
[VAULT-39457] UI: add changelog for plugin management updates (#9309) (#9310)
* [VAULT-39457] UI: add changelog for plugin management updates

* update filename

* update changelog

Co-authored-by: Shannon Roberts (Beagin) <beagins@users.noreply.github.com>
2025-09-12 07:55:47 -07:00
Vault Automation
2d551a8f4c
[VAULT-38468] Cumulative namespace counts API (#9186) (#9308)
* add endpoint

* add tests

* split out deleted namespace test

* add responses for openapi spec

* fix test flakiness and address comments

* add comment

Co-authored-by: Jenny Deng <jenny.deng@hashicorp.com>
2025-09-12 03:53:51 +00:00
Vault Automation
7a6d1b5b6b
adding tests for plugin settings page (#9292) (#9296)
Co-authored-by: Dan Rivera <dan.rivera@hashicorp.com>
2025-09-11 21:15:48 +00:00
Vault Automation
9e30dac947
updated vault ci access key name (#9238) (#9281)
Co-authored-by: kelly <69541941+kporter101@users.noreply.github.com>
2025-09-11 17:07:56 -04:00