open-consul/agent/structs
Mark Anderson 18193f2916
Support vault namespaces in connect CA (#12904)
* Support vault namespaces in connect CA

Follow on to some missed items from #12655

From an internal ticket "Support standard "Vault namespace in the
path" semantics for Connect Vault CA Provider"

Vault allows the namespace to be specified as a prefix in the path of
a PKI definition, but our usage of the Vault API includes calls that
don't support a namespaced key. In particular the sys.* family of
calls simply appends the key, instead of prefixing the namespace in
front of the path.

Unfortunately it is difficult to reliably parse a path with a
namespace; only vault knows what namespaces are present, and the '/'
separator can be inside a key name, as well as separating path
elements. This is in use in the wild; for example
'dc1/intermediate-key' is a relatively common naming schema.

Instead we add two new fields: RootPKINamespace and
IntermediatePKINamespace, which are the absolute namespace paths
'prefixed' in front of the respective PKI Paths.

Signed-off-by: Mark Anderson <manderson@hashicorp.com>
2022-05-04 19:41:55 -07:00
..
acl.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
acl_cache.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
acl_cache_test.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
acl_oss.go
acl_test.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
auto_encrypt.go
autopilot.go
autopilot_oss.go
catalog.go
catalog_oss.go
check_definition.go
check_definition_test.go
check_type.go
config_entry.go
config_entry_discoverychain.go
config_entry_discoverychain_oss.go
config_entry_discoverychain_test.go
config_entry_export_oss_test.go peering: initial sync (#12842) 2022-04-21 17:34:40 -05:00
config_entry_exports.go structs: ensure exported-services PeerName field can be addressed as peer_name (#12862) 2022-04-27 10:27:21 -05:00
config_entry_exports_test.go peering: initial sync (#12842) 2022-04-21 17:34:40 -05:00
config_entry_gateways.go
config_entry_gateways_test.go
config_entry_intentions.go
config_entry_intentions_oss.go
config_entry_intentions_test.go
config_entry_mesh.go Docs and changelog edits 2022-05-04 08:50:59 -07:00
config_entry_mesh_oss.go
config_entry_oss.go peering: initial sync (#12842) 2022-04-21 17:34:40 -05:00
config_entry_oss_test.go
config_entry_test.go Update mesh config tests 2022-05-04 08:50:59 -07:00
connect.go
connect_ca.go Support vault namespaces in connect CA (#12904) 2022-05-04 19:41:55 -07:00
connect_ca_test.go
connect_oss.go
connect_proxy_config.go peering: Make Upstream peer-aware (#12900) 2022-04-29 18:12:51 -04:00
connect_proxy_config_oss.go
connect_proxy_config_test.go
discovery_chain.go
discovery_chain_oss.go
errors.go
federation_state.go
identity.go
intention.go
intention_oss.go
intention_test.go
operator.go
peering.go peering: initial sync (#12842) 2022-04-21 17:34:40 -05:00
prepared_query.go peering: initial sync (#12842) 2022-04-21 17:34:40 -05:00
prepared_query_test.go
protobuf_compat.go
sanitize_oss.go
service_definition.go peering: Make Upstream peer-aware (#12900) 2022-04-29 18:12:51 -04:00
service_definition_test.go
snapshot.go
structs.go acl: gRPC login and logout endpoints (#12935) 2022-05-04 17:38:45 +01:00
structs_filtering_test.go peering: Make Upstream peer-aware (#12900) 2022-04-29 18:12:51 -04:00
structs_oss.go
structs_oss_test.go
structs_test.go peering: Make Upstream peer-aware (#12900) 2022-04-29 18:12:51 -04:00
system_metadata.go
testing.go
testing_catalog.go
testing_connect_proxy_config.go
testing_intention.go
testing_service_definition.go
txn.go