Commit Graph

220 Commits

Author SHA1 Message Date
Clint
dc4e378f75
Combined Database backend: remove create/delete support (#6951)
* remove create/update database user for static accounts

* update tests after create/delete removed

* small cleanups

* update postgresql setcredentials test
2019-06-23 15:58:07 -05:00
Clint
35667f93a7
Combined Database Backend: Static Accounts (#6834)
* Add priority queue to sdk

* fix issue of storing pointers and now copy

* update to use copy structure

* Remove file, put Item struct def. into other file

* add link

* clean up docs

* refactor internal data structure to hide heap method implementations. Other cleanup after feedback

* rename PushItem and PopItem to just Push/Pop, after encapsulating the heap methods

* updates after feedback

* refactoring/renaming

* guard against pushing a nil item

* minor updates after feedback

* Add SetCredentials, GenerateCredentials gRPC methods to combined database backend gPRC

* Initial Combined database backend implementation of static accounts and automatic rotation

* vendor updates

* initial implementation of static accounts with Combined database backend, starting with PostgreSQL implementation

* add lock and setup of rotation queue

* vendor the queue

* rebase on new method signature of queue

* remove mongo tests for now

* update default role sql

* gofmt after rebase

* cleanup after rebasing to remove checks for ErrNotFound error

* rebase cdcr-priority-queue

* vendor dependencies with 'go mod vendor'

* website database docs for Static Role support

* document the rotate-role API endpoint

* postgres specific static role docs

* use constants for paths

* updates from review

* remove dead code

* combine and clarify error message for older plugins

* Update builtin/logical/database/backend.go

Co-Authored-By: Jim Kalafut <jim@kalafut.net>

* cleanups from feedback

* code and comment cleanups

* move db.RLock higher to protect db.GenerateCredentials call

* Return output with WALID if we failed to delete the WAL

* Update builtin/logical/database/path_creds_create.go

Co-Authored-By: Jim Kalafut <jim@kalafut.net>

* updates after running 'make fmt'

* update after running 'make proto'

* Update builtin/logical/database/path_roles.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* Update builtin/logical/database/path_roles.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* update comment and remove and rearrange some dead code

* Update website/source/api/secret/databases/index.html.md

Co-Authored-By: Jim Kalafut <jim@kalafut.net>

* cleanups after review

* Update sdk/database/dbplugin/grpc_transport.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* code cleanup after feedback

* remove PasswordLastSet; it's not used

* document GenerateCredentials and SetCredentials

* Update builtin/logical/database/path_rotate_credentials.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* wrap pop and popbykey in backend methods to protect against nil cred rotation queue

* use strings.HasPrefix instead of direct equality check for path

* Forgot to commit this

* updates after feedback

* re-purpose an outdated test to now check that static and dynamic roles cannot share a name

* check for unique name across dynamic and static roles

* refactor loadStaticWALs to return a map of name/setCredentialsWAL struct to consolidate where we're calling set credentials

* remove commented out code

* refactor to have loadstaticwals filter out wals for roles that no longer exist

* return error if nil input given

* add nil check for input into setStaticAccount

* Update builtin/logical/database/path_roles.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* add constant for queue tick time in seconds, used for comparrison in updates

* Update builtin/logical/database/path_roles.go

Co-Authored-By: Jim Kalafut <jim@kalafut.net>

* code cleanup after review

* remove misplaced code comment

* remove commented out code

* create a queue in the Factory method, even if it's never used

* update path_roles to use a common set of fields, with specific overrides for dynamic/static roles by type

* document new method

* move rotation things into a specific file

* rename test file and consolidate some static account tests

* Update builtin/logical/database/path_roles.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* Update builtin/logical/database/rotation.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* Update builtin/logical/database/rotation.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* Update builtin/logical/database/rotation.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* Update builtin/logical/database/rotation.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* Update builtin/logical/database/rotation.go

Co-Authored-By: Brian Kassouf <briankassouf@users.noreply.github.com>

* update code comments, method names, and move more methods into rotation.go

* update comments to be capitalized

* remove the item from the queue before we try to destroy it

* findStaticWAL returns an error

* use lowercase keys when encoding WAL entries

* small cleanups

* remove vestigial static account check

* remove redundant DeleteWAL call in populate queue

* if we error on loading role, push back to queue with 10 second backoff

* poll in initqueue to make sure the backend is setup and can write/delete data

* add revoke_user_on_delete flag to allow users to opt-in to revoking the static database user on delete of the Vault role. Default false

* add code comments on read-only loop

* code comment updates

* re-push if error returned from find static wal

* add locksutil and acquire locks when pop'ing from the queue

* grab exclusive locks for updating static roles

* Add SetCredentials and GenerateCredentials stubs to mockPlugin

* add a switch in initQueue to listen for cancelation

* remove guard on zero time, it should have no affect

* create a new context in Factory to pass on and use for closing the backend queue

* restore master copy of vendor dir
2019-06-19 14:45:39 -05:00
Becca Petrin
4ebfba2c2b Merge branch 'opensource-master' into add-elasticsearch-auth 2019-06-17 11:12:51 -07:00
Frederic Hemberger
03f349ee8f Website(api/secret/identity): Fix whitespace in JSON examples (#6889) 2019-06-16 09:26:37 -04:00
Becca Petrin
04c3bae2ef add elasticsearch database engine 2019-06-10 09:19:11 -07:00
Lexman
4ed616dacb transit cache is an Interface implemented by wrapped versions of sync… (#6225)
* transit cache is an Interface implemented by wrapped versions of syncmap and golang-lru

* transit cache is an Interface implemented by wrapped versions of syncmap and golang-lru

* changed some import paths to point to sdk

* Apply suggestions from code review

Co-Authored-By: Lexman42 <Lexman42@users.noreply.github.com>

* updates docs with information on transit/cache-config endpoint

* updates vendored files

* fixes policy tests to actually use a cache where expected and renames the struct and storage path used for cache configurations to be more generic

* updates document links

* fixed a typo in a documentation link

* changes cache_size to just size for the cache-config endpoint
2019-06-04 15:40:56 -07:00
Hugues Malphettes
7683d86119 [Doc]: PKI Fix allowed_uri_sans spelling mistake (#6660)
The doc of the PKI Role sample response currently reads:

`"allow_uri_sans": ["example.com","spiffe://*"],`

It should read:

  `"allowed_uri_sans": ["example.com","spiffe://*"],`
2019-04-30 17:48:51 -07:00
Becca Petrin
ac15b6ea57
Merge pull request #6642 from hashicorp/update-ad-docs
Update Active Directory secrets engine docs with new field
2019-04-29 13:48:09 -07:00
Becca Petrin
1f880f85a5 changes from feedback 2019-04-26 16:31:11 -07:00
Jim Kalafut
b8c8d48d4a
Minor GCP docs fixes (#6644) 2019-04-26 10:52:52 -07:00
Md Kamol Hasan
f272476453 Add delete roleset option (#6635) 2019-04-26 10:48:34 -07:00
Becca Petrin
a88b4a76c5 update ad docs with new field 2019-04-26 09:40:26 -07:00
Becca Petrin
decdbebcb1
Merge pull request #6380 from povils/aws_user_path
AWS add user_path option for role.
2019-04-23 09:05:35 -07:00
Brian Shumate
908f22b875 Link directly to the hints (#6623)
* Link directly to the hints

* Wrap
2019-04-22 16:10:38 -07:00
Povilas Susinskas
e1007d1e8e AWS backend: Add user_path option for role. 2019-04-22 18:07:21 +02:00
Brian Shumate
2a327a3cd0 Add some missing default values (#6611) 2019-04-18 22:24:20 -07:00
Michel Vocks
2ee02ef6da
Fixed small issues in identity group alias API docs (#6569) 2019-04-12 09:05:37 +02:00
Kamol Hasan
95c3e584ae Correct gcp api doc 2019-04-08 18:55:36 +06:00
Jeff Mitchell
5611b7136d Add missing serial_number parameter from pki docs 2019-03-23 12:14:32 -04:00
Jeff Mitchell
d096f62d8d
Remove response code info from non-overview API docs as it can be misinterpreted and is always the same anyways (#6459) 2019-03-22 11:15:37 -05:00
Andrej van der Zee
8e6c0ac473 Cassandra plugin: Support for datacenter aware deployments (#6127)
* Added option 'local_datacenter' to Casssandra database plugin for DC aware Casssandra deployments.

* Fixed spelling errors in Cassandra database plugin.

* Added website documentation.

* Added local_datacenter to Cassanra database plugin.

* Reverted datacenter-aware change in deprecated Cassandra builtin secret engine.
2019-03-14 13:37:28 -07:00
Alessandro De Blasis
85de0630e2 docs: pki - adding missing ext_key_usage_oids desc (#6367)
Adding missing entries

Just copied over the FieldSchema descriptions
2019-03-07 14:07:10 -05:00
Jim Kalafut
4784e74fa3
Use HashTypeMap and remove structs in batch HMAC (#6334) 2019-03-04 14:49:29 -08:00
martinwaite
05240c26d5 Batch hmac - (#5850) (#5875) 2019-03-04 12:26:20 -08:00
Jeff Mitchell
2a0fc7d9ba
Add missing consistency param in docs for Cassandra in combined DB (#6330) 2019-03-04 10:21:33 -05:00
Brad Jones
399056c73f
RabbitMQ 'vhost' parameter on roles endpoint should be 'vhosts'
In deploying this, I noted that passing `vhost` was unsuccessful, yet `vhosts` is.
2019-02-27 15:19:54 -07:00
Clint
7c78575660 Add signed key constraints to SSH CA [continued] (#6030)
* Adds the ability to enforce particular ssh key types and minimum key
lengths when using Signed SSH Certificates via the SSH Secret Engine.
2019-02-11 13:03:26 -05:00
Andrej van der Zee
d41c72664f Added socket keep alive option to Cassandra plugin. (#6201) 2019-02-10 18:34:50 -05:00
Brian Nuszkowski
9495b09de8 Add SHA1 signing/verification support to transit engine (#6037)
* Add SHA1 signing/verification support to transit engine

* Update signing/verification endpoint documentation to include sha1 hash algorithm
2019-02-07 15:31:31 -08:00
Martins Sipenko
f51e49e581 Fix section heading size (#6137) 2019-02-07 11:18:58 -08:00
Jeff Mitchell
f472965f24 Remove refresh_interval from kvv1 API docs and CLI docs since kv get doesn't use it 2019-02-06 21:51:08 -05:00
nickwales
281b7cad1d Removed typo (#6162) 2019-02-04 11:13:37 -05:00
Jeff Mitchell
e60b72250e Update example output for PKI serial -> serial_number
Fixes #6146
2019-02-01 10:29:34 -05:00
Jeff Mitchell
5d6f25d569
Implement JWS-compatible signature marshaling (#6077)
This currently only applies to ECDSA signatures, and is a toggleable
option.
2019-01-23 12:31:34 -05:00
Yoko
0374114d94
Document upper limit on Transit encryption size (#6014) 2019-01-08 17:57:43 -08:00
Giacomo Tirabassi
726aa02038 Influxdb secret engine built-in plugin (#5924)
* intial work for influxdb secret plugin

* fixed typo

* added comment

* added documentation

* added tests

* fixed tests

* added vendoring

* minor testing issue with hardcoded values

* minor fixes
2019-01-08 17:26:16 -08:00
Janosch Maier
34bdc25343 Docs: Fix project resource name in gcp roleset documentation (#5966)
The resource name when referring to a GCP project needs to have a "s". This PR adds the missing letter in the documentation.
2018-12-17 16:22:02 -08:00
Jeff Mitchell
516827962c
Update PKI docs (#5929) 2018-12-10 10:24:47 -05:00
Chris Hoffman
a05d2a7aba
removing beta tag (#5904) 2018-12-05 10:45:22 -05:00
ncabatoff
5fc67c909d
Fix documentation re substitutions. It appears this was broken from day one. (#5896) 2018-12-04 13:14:00 -05:00
Mike Christof
d4b2b5d1cb fixed api/secret/ssh docs (#5833) 2018-11-30 10:55:33 -08:00
Martins Sipenko
7d26a77b3e Remove false statement from docs. (#5854) 2018-11-27 07:47:34 -05:00
Clint
3f2e2f4c5d
Add read config endpoint docs (#5790)
* Add read config endpoint docs

* fix response code, remove empty fields from sample response
2018-11-15 11:51:06 -06:00
Nicolas Corrarello
53ad302a31 Adding support for Consul 1.4 ACL system (#5586)
* Adding support for Consul 1.4 ACL system

* Working tests

* Fixed logic gate

* Fixed logical gate that evaluate empty policy or empty list of policy names

* Ensure tests are run against appropiate Consul versions

* Running tests against official container with a 1.4.0-rc1 tag

* policies can never be nil (as even if it is empty will be an empty array)

* addressing feedback, refactoring tests

* removing cast

* converting old lease field to ttl, adding max ttl

* cleanup

* adding missing test

* testing wrong version

* adding support for local tokens

* addressing feedback
2018-11-02 10:44:12 -04:00
Jeff Mitchell
332be7a72e Fix website/path-help docs around pki/tidy 2018-10-30 21:33:30 -04:00
Christophe Tafani-Dereeper
74bf554666 Fix typo ('Gase' -> 'Case') (#5638) 2018-10-29 15:19:35 -04:00
Jeffrey Hogan
8d4caa0846 Use H3 for parameters to match existing pattern (#5566) 2018-10-26 19:13:14 -04:00
Chris Hoffman
149fc9f0e1
Adding gcpkms docs (#5590)
* adding gcpkms docs

* adding detail links

* adding 1.0 Beta badge
2018-10-23 12:14:32 -07:00
andrejvanderzee
d22949a7e6 Added role-option max_sts_ttl to cap TTL for AWS STS credentials. (#5500)
* Added role-option max_sts_ttl to cap TTL for AWS STS credentials.

* Allow for setting max_sts_ttl to 0 after it has been set already.

* Fixed message in error response for default_sts_ttl > max_sts_ttl.
2018-10-20 10:36:47 -04:00
Jim Kalafut
068da60712
Update Azure Secrets docs (#5554)
Add coverage of application_object_id parameter.
2018-10-19 13:48:15 -07:00