open-vault/vault
Calvin Leung Huang bb54e9c131 Backend plugin system (#2874)
* Add backend plugin changes

* Fix totp backend plugin tests

* Fix logical/plugin InvalidateKey test

* Fix plugin catalog CRUD test, fix NoopBackend

* Clean up commented code block

* Fix system backend mount test

* Set plugin_name to omitempty, fix handleMountTable config parsing

* Clean up comments, keep shim connections alive until cleanup

* Include pluginClient, disallow LookupPlugin call from within a plugin

* Add wrapper around backendPluginClient for proper cleanup

* Add logger shim tests

* Add logger, storage, and system shim tests

* Use pointer receivers for system view shim

* Use plugin name if no path is provided on mount

* Enable plugins for auth backends

* Add backend type attribute, move builtin/plugin/package

* Fix merge conflict

* Fix missing plugin name in mount config

* Add integration tests on enabling auth backend plugins

* Remove dependency cycle on mock-plugin

* Add passthrough backend plugin, use logical.BackendType to determine lease generation

* Remove vault package dependency on passthrough package

* Add basic impl test for passthrough plugin

* Incorporate feedback; set b.backend after shims creation on backendPluginServer

* Fix totp plugin test

* Add plugin backends docs

* Fix tests

* Fix builtin/plugin tests

* Remove flatten from PluginRunner fields

* Move mock plugin to logical/plugin, remove totp and passthrough plugins

* Move pluginMap into newPluginClient

* Do not create storage RPC connection on HandleRequest and HandleExistenceCheck

* Change shim logger's Fatal to no-op

* Change BackendType to uint32, match UX backend types

* Change framework.Backend Setup signature

* Add Setup func to logical.Backend interface

* Move OptionallyEnableMlock call into plugin.Serve, update docs and comments

* Remove commented var in plugin package

* RegisterLicense on logical.Backend interface (#3017)

* Add RegisterLicense to logical.Backend interface

* Update RegisterLicense to use callback func on framework.Backend

* Refactor framework.Backend.RegisterLicense

* plugin: Prevent plugin.SystemViewClient.ResponseWrapData from getting JWTs

* plugin: Revert BackendType to remove TypePassthrough and related references

* Fix typo in plugin backends docs
2017-07-20 13:28:40 -04:00
..
acl.go Clone policy permissions and then use existing values rather than policy values for modifications (#2826) 2017-06-07 13:49:51 -04:00
acl_test.go Clone policy permissions and then use existing values rather than policy values for modifications (#2826) 2017-06-07 13:49:51 -04:00
audit.go Add metrics counters for audit log failures (#3001) 2017-07-14 11:03:56 -04:00
audit_test.go Create and persist human-friendly-ish mount accessors (#2918) 2017-06-26 18:14:36 +01:00
audited_headers.go Delay salt initialization for audit backends 2017-05-23 20:36:20 -04:00
audited_headers_test.go Delay salt initialization for audit backends 2017-05-23 20:36:20 -04:00
auth.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
auth_test.go Cleaning up logical and auth unmount functions (#2994) 2017-07-13 10:57:14 -07:00
barrier.go More rep porting (#2391) 2017-02-16 23:09:39 -05:00
barrier_aes_gcm.go More rep porting (#2391) 2017-02-16 23:09:39 -05:00
barrier_aes_gcm_test.go Stop Vault Package Tests From Swallowing Errors (#2960) 2017-07-04 13:58:28 -04:00
barrier_test.go vault: adding ability to reload master key 2015-05-29 14:29:55 -07:00
barrier_view.go add gofmt checks to Vault and format existing code (#2745) 2017-05-19 08:34:17 -04:00
barrier_view_test.go Adding interface methods to logical.Backend for parity (#2242) 2017-01-07 18:18:22 -05:00
capabilities.go More rep porting (#2391) 2017-02-16 23:09:39 -05:00
capabilities_test.go Fix capabilities test case 2016-03-18 12:55:18 -04:00
cluster.go Revert grpc back a version (they introduced a panic) and clean up a bunch of old request forwarding stuff 2017-05-24 10:38:48 -04:00
cluster_test.go Port TestCluster changes from proxy branch 2017-07-03 14:54:01 -04:00
core.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
core_test.go Exclude /sys/leases/renew from registering with expiration manager (#2891) 2017-06-20 12:34:00 -04:00
cors.go Fix up CORS. 2017-06-17 01:26:25 -04:00
dynamic_system_view.go return a 404 when no plugin is found 2017-04-24 18:31:27 -07:00
expiration.go Dynamically load and invalidate the token store salt (#3021) 2017-07-18 09:02:03 -07:00
expiration_test.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
generate_root.go Port some replication bits to OSS (#2386) 2017-02-16 15:15:02 -05:00
generate_root_test.go Multi value test seal (#2281) 2017-01-17 15:43:10 -05:00
init.go More rep porting (#2391) 2017-02-16 23:09:39 -05:00
init_test.go Minor ports 2016-12-05 12:28:12 -05:00
keyring.go Added JSON Decode and Encode helpers. 2016-07-06 12:25:40 -04:00
keyring_test.go Fix keyring test 2017-01-24 12:58:14 -08:00
logical_cubbyhole.go Make cubbyhole local instead of replicated. (#2397) 2017-02-18 13:51:05 -05:00
logical_cubbyhole_test.go Make cubbyhole local instead of replicated. (#2397) 2017-02-18 13:51:05 -05:00
logical_passthrough.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
logical_passthrough_test.go Allow non-strings to be used to set ttl field in generic. (#2699) 2017-05-09 14:05:00 -04:00
logical_system.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
logical_system_helpers.go Understand local when persisting mount tables, to avoid invalidations when not necessary (#2427) 2017-03-02 14:37:59 -05:00
logical_system_integ_test.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
logical_system_test.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
mount.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
mount_test.go Cleaning up logical and auth unmount functions (#2994) 2017-07-13 10:57:14 -07:00
plugin_catalog.go Don't allow parent references in file paths 2017-05-12 13:52:33 -04:00
plugin_catalog_test.go Update the builtin keys; move catalog to core; protect against unset plugin directory 2017-04-24 10:30:33 -07:00
policy.go Clone policy permissions and then use existing values rather than policy values for modifications (#2826) 2017-06-07 13:49:51 -04:00
policy_store.go Revert "Remove wrapping/wrap from default policy and add a note about guarantees (#2957)" (#3008) 2017-07-13 18:47:29 -04:00
policy_store_test.go Wrapping enhancements (#1927) 2016-09-28 21:01:28 -07:00
policy_test.go Add max/min wrapping TTL ACL statements (#2411) 2017-02-27 14:42:00 -05:00
rekey.go Do some porting to make diffing easier 2017-02-24 10:45:29 -05:00
rekey_test.go More rep porting (#2391) 2017-02-16 23:09:39 -05:00
request_forwarding.go Log heartbeat stopping 2017-06-05 15:57:04 -04:00
request_forwarding_service.pb.go Add heartbeating and cluster address sharing to request forwarding (#2762) 2017-05-24 15:06:56 -04:00
request_forwarding_service.proto Add heartbeating and cluster address sharing to request forwarding (#2762) 2017-05-24 15:06:56 -04:00
request_handling.go Exclude /sys/leases/renew from registering with expiration manager (#2891) 2017-06-20 12:34:00 -04:00
request_handling_test.go Don't write salts in initialization, look up on demand (#2702) 2017-05-09 17:51:09 -04:00
rollback.go checking for nil backends before attempting to rollback on a backend (#2997) 2017-07-12 13:12:55 -07:00
rollback_test.go fix expiration tests 2017-06-30 21:31:27 -04:00
router.go Dynamically load and invalidate the token store salt (#3021) 2017-07-18 09:02:03 -07:00
router_test.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
seal.go Multi value test seal (#2281) 2017-01-17 15:43:10 -05:00
seal_test.go Split out TestSeal 2016-04-26 00:14:16 +00:00
seal_testing.go Update TestSeal to ignore setting the config to nil 2017-03-01 14:10:06 -08:00
testing.go Backend plugin system (#2874) 2017-07-20 13:28:40 -04:00
token_store.go Dynamically load and invalidate the token store salt (#3021) 2017-07-18 09:02:03 -07:00
token_store_test.go Dynamically load and invalidate the token store salt (#3021) 2017-07-18 09:02:03 -07:00
util.go Removed unused methods 2017-01-03 12:51:35 -05:00
util_test.go Utility Enhancements 2016-04-05 20:32:59 -04:00
wrapping.go Port some replication bits to OSS (#2386) 2017-02-16 15:15:02 -05:00