Commit Graph

18722 Commits

Author SHA1 Message Date
Alexander Scheel
4b60ffd5ef Fix enabling tidy_acme=true in auto-tidy config (#20889)
This should help to prevent the issue of missing tidy configurations
in the future, by placing all related configuration options at the
top with common validation logic.

However, short from this approach is ensuring that each config option
can be specified independently. Thus, the test allows (for any added
and properly tracked tidy operations) verifying that we have enabled
proper storage/retention of that attribute.

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>
2023-05-31 13:16:12 +00:00
claire bontempo
4d7d175530 ui: pki prevent user from self cross-signing root issuer (#20876)
* throw error if self-cross-signing

* add test
2023-05-30 15:27:13 -07:00
Alexander Scheel
63ccb60b9a Transit BYOK export capabilities (#20736)
* Add WrapKey capabilities to keysutil

This allows one keysutil to wrap another key, assuming that key has an
type matching one of keysutil's allowed KeyTypes. This allows completing
the BYOK import loop with Transit, allowing imported wrapping keys to
export (wrap) other keys in transit, without having them leave in
plaintext.

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add /byok-export/:dst/:src[/:version] to Transit

Still respecting exportable, we allow encrypted-only export of transit
keys to another cluster using the BYOK semantics.

In particular, this allows an operator to securely establish key
material between two separate Transit installations. This potentially
allows one cluster to be used as a source cluster (encrypting a large
amount of data) and a second cluster to decrypt this data later. This
might be useful in hybrid or site-specific deployments of Vault for
instance.

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add missing dependency to sdk/, vault/

Also updates to a newer version while we're here.

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add documentation on BYOK export

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add tests for BYOK export/import

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add changelog entry

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Update website/content/api-docs/secret/transit.mdx

* Update builtin/logical/transit/path_byok.go

Co-authored-by: Matt Schultz <975680+schultz-is@users.noreply.github.com>

---------

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>
Co-authored-by: Matt Schultz <975680+schultz-is@users.noreply.github.com>
2023-05-30 21:42:41 +00:00
Steven Clark
10c16ccbcb Add Certbot unregister integration test (#20874)
* Add Certbot unregister integration test

 - Make sure we can unregister ACME accounts through Certbot to provide an additional validation.

* Add vault-crypto as a code owner for builtin/logical/pkiext
2023-05-30 17:24:28 -04:00
Milena Zlaticanin
08ee474850 fix cred generator for mongodb atlas x509 auth (#20867) 2023-05-30 12:07:58 -07:00
akshya96
b546455144 User Lockout Perf Standby Error oss (#20783)
* adding changes from ent

* add changelog

* removing new line

* rename changelog file name
2023-05-30 11:46:30 -07:00
Ikko Eltociear Ashimine
b62941563c website: fix typo in postgresql.mdx (#20847)
PostgresSQL -> PostgreSQL
2023-05-30 19:28:20 +01:00
Nick Cabatoff
0f4494018c Make sure we have upgrade migration disabled for ent, because it can make TestRaft_Autopilot_DeadServerCleanup flaky. (#20840) 2023-05-30 14:09:43 -04:00
Anton Averchenkov
21eccf8b8d agent: Add agent process supervisor tests (#20741) 2023-05-30 18:06:44 +00:00
Daniel Huckins
344ee1ec3e enable token ch (#20862)
Signed-off-by: Daniel Huckins <dhuckins@users.noreply.github.com>
2023-05-30 13:39:56 -04:00
claire bontempo
ea292e8142 Ui: Add contributing pattern doc (#19897)
* format readme to prepare for pattern info

* small text changes

* add markdown files for each section

* readme updates

* routing md draft

* add table of contents

* add oidc pr sample

* update routing

* add decorator section

* serializer docs

* add table of contents

* update readme

* add title

* add decorator section

* models readme

* update comments

* modify examples

* add bullets and more comments

* what the heck fix bullet

* model docs

* form docs

* routing doc

* serializer/adapter

* adds docs for model-validations decorator (#20596)

* UI Docs: Components (#20602)

* Add CSS best practices (#20370)

* wip--saving work

* wip

* friday morning....

* update

* fix exists to exist

* one more change

* UI docs: Add ember engine creation documentation (#20789)

---------

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
Co-authored-by: Kianna <30884335+kiannaquach@users.noreply.github.com>
2023-05-30 10:24:35 -07:00
claire bontempo
0615a50674 UI: updates info table row jsdoc (#20697)
* reuse format-duration helper

* add changelog

* update duration

* fix 0 assuming 0s

* VAULT-16593/ update tests, remove formatting assumptions

* more tests

* add calc function

* woops, typo use %

* update variable name

* add back one template test

* refactor to handle all duration string cases, including 3m

* ok lets do that differently

* comment cleanup

* address comments

* push to rerun checks
2023-05-30 10:21:07 -07:00
Milena Zlaticanin
be2464fbea Add docs for new client cert credential type (#20729)
* add docs for new client cert credential type

* fix links

* fix defaults
2023-05-30 09:34:38 -07:00
Anton Averchenkov
7f2d3f2c5c fix exitCh race condition (#20817) 2023-05-30 12:23:51 -04:00
Christopher Swenson
82359a9e8f fix: upgrade vault-plugin-auth-azure to v0.15.0 (#20816) 2023-05-30 09:12:09 -07:00
Christopher Swenson
e5ae00a767 fix: upgrade vault-plugin-secrets-gcp to v0.16.0 (#20818) 2023-05-30 09:11:53 -07:00
Milena Zlaticanin
7490a2ebb7 Add support for client cert credential type (#20425)
* poc: client cert credential type

* go mod tidy

* fix typo

* fix newUserReqToProto

* add changelog

* add newline

* fix changelog

* add test for the client cert generator

* Fix formatting

* unset signing bundle URLs

* set BasicConstraintsValidForNonCA to false

* backdate cert by 30s

* remove empty creation params URLs

* check cert BasicConstraintsValid

* set default key bits in newClientCertificateGenerator

* fix client cert gen test with default values

* Add default for key_type

* fix default key_type

* update test with default key type

* update test

* Update changelog/20425.txt

Co-authored-by: Austin Gebauer <34121980+austingebauer@users.noreply.github.com>

* set default key bits and sig bits

* remove the default for key type ad fix the test

* make fmt + add comments for each exported field

* restart test

---------

Co-authored-by: Austin Gebauer <agebauer@hashicorp.com>
Co-authored-by: Austin Gebauer <34121980+austingebauer@users.noreply.github.com>
2023-05-30 09:11:02 -07:00
Steven Clark
000d754c40 Make ACME EAB keys specific to the ACME directory they are created within (#20803)
* Update EAB management urls underneath pki/eab

 - It was decided that for ease of ACLing, the management
   paths for EAB apis should be outside of the acme path
   prefix
 - Delete duplicated tests, rely on the proper cluster
   based tests for EAB management.

* Update ACME EAB creation paths to be directory specific

 - Make the EAB creation APIs directory specific.
 - This commit is still missing the enforcement that
   they can be redeemed on a specific path.

* Enforce EAB tokens per ACME directory context like accounts

 - Do not allow an EAB from one ACME directory to be used
   in another.
 - Rework the ACME directory function to simply get the path from the request instead of parsing out the role/issuer name.
 - Add some commentary around expectations if operators change issuer names

* Add an EAB certbot integration test

 - Verify with the 3rd party certbot cli that our EAB workflow works as expected.

* Fix unit test

 - Unit test wasn't setting up r.Path within the request
   that we now use to determine the acme directory.
2023-05-30 11:49:01 -04:00
Hamid Ghaf
288399f228 OSS portion of additional DR failover tests (#20842) 2023-05-30 08:41:33 -07:00
Chelsea Shaw
3a02eb30bf Add 1.14 draft docs and UI known issue (#20665)
* Add 1.14 docs and UI known issue

* Hide navs

* Update language for known issue
2023-05-30 10:20:10 -05:00
Steven Clark
12d851de37 Only accept challenges on payload is {}, not "" (#20843)
- "" represents a POST-as-GET request which should just
   return the challenge object and not accept it.
 - "{}" as a payload will accept the challenge.
2023-05-30 11:03:12 -04:00
Steven Clark
7cf3ba33b5 ACME behavior changes - ExtKeyUsage verification and issuer leaf_not_after (#20835)
* ACME override issuer's leaf_not_after_behavior to truncate

 - To provide a better ACME experience as we don't allow clients to specify TTL times, we will override the issuer's leaf_not_after_behavior setting to 'truncate' if set to the default of 'err' and issue the certificate truncated to the issuer's NotAfter time.

* Only allow ServerAuth ExtKeyUsage from ACME certificates

 - Add an enforcement to ACME issued certificates that the only ExtKeyUsage we currently allow is the ServerAuth usage.

* Force ServerAuth as the ExtKeyUsage in ACME roles

 - Override a role's values related to ExtKeyUsage when
   running in ACME mode to only return the ServerAuth usage.
 - We do this as the majority of roles out there will most likely have the ClientAuth set to true which will cause friction using ACME.
2023-05-30 11:02:12 -04:00
Alexander Scheel
54685189eb Add initial ACME API documentation (#20752)
* Add initial ACME API documentation

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add note about required headers

The required header `Cache-Control: no-store` is automatically set by
Vault in wrapGenericHandler(...).

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add changelog entry

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Documentation typo fixes

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Clarify that account binding is to Vault, directories unauthenticated

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

---------

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>
Co-authored-by: Steven Clark <steven.clark@hashicorp.com>
2023-05-30 11:01:12 -04:00
Steven Clark
34571d4d23 Enforce PKI cluster local 'path' argument is set when enabling ACME (#20838)
* Fix error handling in ACME

 - If we don't match a specific ACME error, use ErrServerInternal instead of the last error type from the internal map
 - Logger parameters need two params

* Enforce cluster local path is set when enabling ACME

* Add a warning on ACME config read api if enabled but path not set

 - This might help expose that the local path configuration on a secondary cluster was not set which would prevent ACME from running.
2023-05-30 11:00:50 -04:00
Alexander Scheel
bd4d7269dd Better transit import export semantics (#20814)
* Allow public keys to be always exported

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Simplify import key version semantics

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Add tests for updated ImportVersion semantics

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

* Fix handling of RSA private key pairs

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>

---------

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>
2023-05-30 10:57:51 -04:00
Nick Cabatoff
3b5ca69b62 Remove feature toggle for SSCTs, VAULT_DISABLE_SERVER_SIDE_CONSISTENT_TOKENS (#20834) 2023-05-29 12:54:20 -04:00
Nick Cabatoff
6157b5ffcb Skip Aerospike test on 32-bits, warn users it's unsupported. (#20825) 2023-05-29 16:30:54 +00:00
Nick Cabatoff
c67242463c Revert #19676, we decided this was unnecessary. (#20826) 2023-05-29 14:30:34 +00:00
Violet Hynes
4d57b23d13 Update development version to 1.15 (#20820) 2023-05-29 09:41:00 -04:00
Angel Garbarino
c4198a32d5 Filter Auth methods by name or type (#20747)
* glimmerize controller

* search selects added and working

* add test and cleanup disable

* small fix on name filtering

* add changelog

* Add comment about individualized names

* Update methods.js

remove spaces
2023-05-26 16:07:36 +00:00
Violet Hynes
d7012c97f5 Update Vault Proxy changelog to use the new feature format (#20811) 2023-05-26 11:56:20 -04:00
Thy Ton
0c7a3c0300 update API docs for kubernetes secrets engine (#20726)
Co-authored-by: Tom Proctor <tomhjp@users.noreply.github.com>
2023-05-26 07:38:22 -07:00
Alexander Scheel
bb5249aad0 Increase retry limit on dnstest/server.go (#20810)
Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>
2023-05-26 14:33:21 +00:00
Violet Hynes
cb7531d3e1 Update auth/api submodules to new API version (#20809)
* Update auth/api submodules to new API version

* Update auth/api submodules to new API version
api/auth/aws/v0.4.1 api/auth/userpass/v0.4.1 api/auth/azure/v0.4.1 api/auth/gcp/v0.4.1 api/auth/kubernetes/v0.4.1 api/auth/approle/v0.4.1 api/auth/ldap/v0.4.1
2023-05-26 14:06:31 +00:00
Max Coulombe
681ae20fac Updated snowflake plugin to v0.8.0 (#20807)
* updated snowflake plugin to v0.8.0
2023-05-26 09:48:25 -04:00
Violet Hynes
8f9bcaf97d Update SDK and API for 1.14 release (#20808) 2023-05-26 09:34:58 -04:00
Ben Ash
262bdc067f Update VSO API reference docs for v0.1.0-beta.1 (#20801)
Co-authored-by: Kyle Schochenmaier <kschoche@gmail.com>
sdk/v0.9.1 api/v1.9.2
2023-05-25 20:31:45 -04:00
John-Michael Faircloth
71de665fd6 update secrets/kubernetes and auth/kubernetes plugin versions (#20802)
* update secrets/kubernetes and auth/kubernetes plugin versions

* add changelog
2023-05-25 18:54:45 -05:00
Christopher Swenson
2957b1edf1 fix: upgrade vault-plugin-auth-jwt to v0.16.0 (#20799) 2023-05-25 14:59:17 -07:00
Kyle Schochenmaier
021bd76819 [docs] update helm docs for vso beta1 release (#20776)
* update helm docs for vso beta1 release
2023-05-25 16:45:08 -05:00
claire bontempo
b61989892c ui: update pki link (#20791)
* fix link

* hold off change popup link

* clarify todo

* remove typo
2023-05-25 14:10:15 -07:00
Alexander Scheel
b8082f5234 sdk/helper/nonce -> go-secure-stdlib/nonceutil (#20737)
Depends on https://github.com/hashicorp/go-secure-stdlib/pull/73

Signed-off-by: Alexander Scheel <alex.scheel@hashicorp.com>
2023-05-25 20:57:08 +00:00
Larroyo
1336abddfe Make transit import command work for the transform backend (#20668)
* Add import and import-version commands for the transform backend
2023-05-25 15:33:27 -05:00
vinay-gopalan
bea964cb5d upgrade vault-plugin-secrets-alicloud to v0.15.0 (#20787) 2023-05-25 10:34:48 -07:00
Anton Averchenkov
30d3aa06c0 openapi: Fix response schema for pki list roles (#20782) 2023-05-25 13:34:34 -04:00
Robert
94e31c4667 auth/kerberos: upgrade plugin version (#20771)
* Upgrade vault-plugin-auth-kerberos to v0.10.0
2023-05-25 17:29:42 +00:00
Robert
8e0a615533 database/redis: upgrade plugin version (#20763)
* Upgrade vault-plugin-database-redis to v0.2.1
2023-05-25 17:25:18 +00:00
Raymond Ho
092f6b2bba fix: upgrade vault-plugin-auth-cf to v0.15.0 (#20785) 2023-05-25 17:10:51 +00:00
Robert
3f226edfc8 database/elasticsearch: upgrade plugin version (#20767)
* Upgrade vault-plugin-database-elasticsearch to v0.13.2
2023-05-25 17:09:41 +00:00
vinay-gopalan
e336bb4a19 upgrade vault-plugin-auth-alicloud to v0.15.0 (#20758) 2023-05-25 09:56:48 -07:00