pulumi-vault 5.21.0a1709368526__py3-none-any.whl → 6.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. pulumi_vault/__init__.py +76 -0
  2. pulumi_vault/_inputs.py +560 -0
  3. pulumi_vault/_utilities.py +41 -5
  4. pulumi_vault/ad/get_access_credentials.py +26 -9
  5. pulumi_vault/ad/secret_backend.py +16 -142
  6. pulumi_vault/ad/secret_library.py +16 -9
  7. pulumi_vault/ad/secret_role.py +14 -9
  8. pulumi_vault/alicloud/auth_backend_role.py +76 -190
  9. pulumi_vault/approle/auth_backend_login.py +12 -7
  10. pulumi_vault/approle/auth_backend_role.py +77 -191
  11. pulumi_vault/approle/auth_backend_role_secret_id.py +106 -7
  12. pulumi_vault/approle/get_auth_backend_role_id.py +18 -5
  13. pulumi_vault/audit.py +30 -21
  14. pulumi_vault/audit_request_header.py +11 -2
  15. pulumi_vault/auth_backend.py +66 -14
  16. pulumi_vault/aws/auth_backend_cert.py +18 -9
  17. pulumi_vault/aws/auth_backend_client.py +267 -22
  18. pulumi_vault/aws/auth_backend_config_identity.py +14 -9
  19. pulumi_vault/aws/auth_backend_identity_whitelist.py +20 -15
  20. pulumi_vault/aws/auth_backend_login.py +19 -22
  21. pulumi_vault/aws/auth_backend_role.py +77 -191
  22. pulumi_vault/aws/auth_backend_role_tag.py +12 -7
  23. pulumi_vault/aws/auth_backend_roletag_blacklist.py +18 -13
  24. pulumi_vault/aws/auth_backend_sts_role.py +61 -9
  25. pulumi_vault/aws/get_access_credentials.py +38 -9
  26. pulumi_vault/aws/get_static_access_credentials.py +19 -5
  27. pulumi_vault/aws/secret_backend.py +218 -9
  28. pulumi_vault/aws/secret_backend_role.py +185 -9
  29. pulumi_vault/aws/secret_backend_static_role.py +20 -11
  30. pulumi_vault/azure/_inputs.py +24 -0
  31. pulumi_vault/azure/auth_backend_config.py +153 -15
  32. pulumi_vault/azure/auth_backend_role.py +77 -191
  33. pulumi_vault/azure/backend.py +227 -21
  34. pulumi_vault/azure/backend_role.py +42 -37
  35. pulumi_vault/azure/get_access_credentials.py +41 -7
  36. pulumi_vault/azure/outputs.py +5 -0
  37. pulumi_vault/cert_auth_backend_role.py +87 -267
  38. pulumi_vault/config/__init__.pyi +5 -0
  39. pulumi_vault/config/_inputs.py +73 -0
  40. pulumi_vault/config/outputs.py +35 -0
  41. pulumi_vault/config/ui_custom_message.py +529 -0
  42. pulumi_vault/config/vars.py +5 -0
  43. pulumi_vault/consul/secret_backend.py +28 -19
  44. pulumi_vault/consul/secret_backend_role.py +18 -78
  45. pulumi_vault/database/_inputs.py +2808 -879
  46. pulumi_vault/database/outputs.py +749 -838
  47. pulumi_vault/database/secret_backend_connection.py +119 -112
  48. pulumi_vault/database/secret_backend_role.py +31 -22
  49. pulumi_vault/database/secret_backend_static_role.py +87 -13
  50. pulumi_vault/database/secrets_mount.py +427 -136
  51. pulumi_vault/egp_policy.py +16 -11
  52. pulumi_vault/gcp/_inputs.py +111 -0
  53. pulumi_vault/gcp/auth_backend.py +250 -33
  54. pulumi_vault/gcp/auth_backend_role.py +77 -269
  55. pulumi_vault/gcp/get_auth_backend_role.py +43 -5
  56. pulumi_vault/gcp/outputs.py +5 -0
  57. pulumi_vault/gcp/secret_backend.py +287 -12
  58. pulumi_vault/gcp/secret_impersonated_account.py +76 -15
  59. pulumi_vault/gcp/secret_roleset.py +31 -24
  60. pulumi_vault/gcp/secret_static_account.py +39 -32
  61. pulumi_vault/generic/endpoint.py +24 -17
  62. pulumi_vault/generic/get_secret.py +64 -8
  63. pulumi_vault/generic/secret.py +21 -16
  64. pulumi_vault/get_auth_backend.py +24 -7
  65. pulumi_vault/get_auth_backends.py +51 -9
  66. pulumi_vault/get_namespace.py +226 -0
  67. pulumi_vault/get_namespaces.py +153 -0
  68. pulumi_vault/get_nomad_access_token.py +31 -11
  69. pulumi_vault/get_policy_document.py +34 -19
  70. pulumi_vault/get_raft_autopilot_state.py +29 -10
  71. pulumi_vault/github/_inputs.py +55 -0
  72. pulumi_vault/github/auth_backend.py +19 -14
  73. pulumi_vault/github/outputs.py +5 -0
  74. pulumi_vault/github/team.py +16 -11
  75. pulumi_vault/github/user.py +16 -11
  76. pulumi_vault/identity/entity.py +20 -13
  77. pulumi_vault/identity/entity_alias.py +20 -13
  78. pulumi_vault/identity/entity_policies.py +28 -11
  79. pulumi_vault/identity/get_entity.py +42 -10
  80. pulumi_vault/identity/get_group.py +47 -9
  81. pulumi_vault/identity/get_oidc_client_creds.py +21 -7
  82. pulumi_vault/identity/get_oidc_openid_config.py +39 -9
  83. pulumi_vault/identity/get_oidc_public_keys.py +29 -10
  84. pulumi_vault/identity/group.py +58 -39
  85. pulumi_vault/identity/group_alias.py +16 -9
  86. pulumi_vault/identity/group_member_entity_ids.py +28 -66
  87. pulumi_vault/identity/group_member_group_ids.py +40 -19
  88. pulumi_vault/identity/group_policies.py +20 -7
  89. pulumi_vault/identity/mfa_duo.py +11 -6
  90. pulumi_vault/identity/mfa_login_enforcement.py +15 -6
  91. pulumi_vault/identity/mfa_okta.py +11 -6
  92. pulumi_vault/identity/mfa_pingid.py +7 -2
  93. pulumi_vault/identity/mfa_totp.py +7 -2
  94. pulumi_vault/identity/oidc.py +12 -7
  95. pulumi_vault/identity/oidc_assignment.py +24 -11
  96. pulumi_vault/identity/oidc_client.py +36 -23
  97. pulumi_vault/identity/oidc_key.py +30 -17
  98. pulumi_vault/identity/oidc_key_allowed_client_id.py +28 -15
  99. pulumi_vault/identity/oidc_provider.py +36 -21
  100. pulumi_vault/identity/oidc_role.py +42 -21
  101. pulumi_vault/identity/oidc_scope.py +20 -13
  102. pulumi_vault/identity/outputs.py +8 -3
  103. pulumi_vault/jwt/_inputs.py +55 -0
  104. pulumi_vault/jwt/auth_backend.py +45 -40
  105. pulumi_vault/jwt/auth_backend_role.py +133 -254
  106. pulumi_vault/jwt/outputs.py +5 -0
  107. pulumi_vault/kmip/secret_backend.py +24 -19
  108. pulumi_vault/kmip/secret_role.py +14 -9
  109. pulumi_vault/kmip/secret_scope.py +14 -9
  110. pulumi_vault/kubernetes/auth_backend_config.py +57 -5
  111. pulumi_vault/kubernetes/auth_backend_role.py +70 -177
  112. pulumi_vault/kubernetes/get_auth_backend_config.py +60 -8
  113. pulumi_vault/kubernetes/get_auth_backend_role.py +40 -5
  114. pulumi_vault/kubernetes/get_service_account_token.py +39 -11
  115. pulumi_vault/kubernetes/secret_backend.py +316 -27
  116. pulumi_vault/kubernetes/secret_backend_role.py +137 -46
  117. pulumi_vault/kv/_inputs.py +36 -4
  118. pulumi_vault/kv/get_secret.py +25 -8
  119. pulumi_vault/kv/get_secret_subkeys_v2.py +33 -10
  120. pulumi_vault/kv/get_secret_v2.py +85 -9
  121. pulumi_vault/kv/get_secrets_list.py +24 -11
  122. pulumi_vault/kv/get_secrets_list_v2.py +37 -15
  123. pulumi_vault/kv/outputs.py +8 -3
  124. pulumi_vault/kv/secret.py +23 -16
  125. pulumi_vault/kv/secret_backend_v2.py +20 -11
  126. pulumi_vault/kv/secret_v2.py +59 -50
  127. pulumi_vault/ldap/auth_backend.py +127 -166
  128. pulumi_vault/ldap/auth_backend_group.py +14 -9
  129. pulumi_vault/ldap/auth_backend_user.py +14 -9
  130. pulumi_vault/ldap/get_dynamic_credentials.py +23 -5
  131. pulumi_vault/ldap/get_static_credentials.py +24 -5
  132. pulumi_vault/ldap/secret_backend.py +354 -82
  133. pulumi_vault/ldap/secret_backend_dynamic_role.py +18 -11
  134. pulumi_vault/ldap/secret_backend_library_set.py +16 -9
  135. pulumi_vault/ldap/secret_backend_static_role.py +73 -12
  136. pulumi_vault/managed/_inputs.py +289 -132
  137. pulumi_vault/managed/keys.py +29 -57
  138. pulumi_vault/managed/outputs.py +89 -132
  139. pulumi_vault/mfa_duo.py +18 -11
  140. pulumi_vault/mfa_okta.py +18 -11
  141. pulumi_vault/mfa_pingid.py +18 -11
  142. pulumi_vault/mfa_totp.py +24 -17
  143. pulumi_vault/mongodbatlas/secret_backend.py +20 -15
  144. pulumi_vault/mongodbatlas/secret_role.py +47 -38
  145. pulumi_vault/mount.py +391 -51
  146. pulumi_vault/namespace.py +68 -83
  147. pulumi_vault/nomad_secret_backend.py +18 -13
  148. pulumi_vault/nomad_secret_role.py +14 -9
  149. pulumi_vault/okta/_inputs.py +47 -8
  150. pulumi_vault/okta/auth_backend.py +485 -39
  151. pulumi_vault/okta/auth_backend_group.py +14 -9
  152. pulumi_vault/okta/auth_backend_user.py +14 -9
  153. pulumi_vault/okta/outputs.py +13 -8
  154. pulumi_vault/outputs.py +5 -0
  155. pulumi_vault/password_policy.py +20 -13
  156. pulumi_vault/pkisecret/__init__.py +7 -0
  157. pulumi_vault/pkisecret/_inputs.py +115 -0
  158. pulumi_vault/pkisecret/backend_acme_eab.py +549 -0
  159. pulumi_vault/pkisecret/backend_config_acme.py +642 -0
  160. pulumi_vault/pkisecret/backend_config_cluster.py +369 -0
  161. pulumi_vault/pkisecret/backend_config_cmpv2.py +525 -0
  162. pulumi_vault/pkisecret/backend_config_est.py +619 -0
  163. pulumi_vault/pkisecret/get_backend_config_cmpv2.py +209 -0
  164. pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
  165. pulumi_vault/pkisecret/get_backend_issuer.py +67 -9
  166. pulumi_vault/pkisecret/get_backend_issuers.py +21 -8
  167. pulumi_vault/pkisecret/get_backend_key.py +24 -9
  168. pulumi_vault/pkisecret/get_backend_keys.py +21 -8
  169. pulumi_vault/pkisecret/outputs.py +109 -0
  170. pulumi_vault/pkisecret/secret_backend_cert.py +18 -11
  171. pulumi_vault/pkisecret/secret_backend_config_ca.py +16 -11
  172. pulumi_vault/pkisecret/secret_backend_config_issuers.py +14 -9
  173. pulumi_vault/pkisecret/secret_backend_config_urls.py +67 -11
  174. pulumi_vault/pkisecret/secret_backend_crl_config.py +14 -9
  175. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +16 -11
  176. pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +22 -17
  177. pulumi_vault/pkisecret/secret_backend_issuer.py +14 -9
  178. pulumi_vault/pkisecret/secret_backend_key.py +14 -9
  179. pulumi_vault/pkisecret/secret_backend_role.py +68 -14
  180. pulumi_vault/pkisecret/secret_backend_root_cert.py +16 -48
  181. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +18 -56
  182. pulumi_vault/pkisecret/secret_backend_sign.py +18 -54
  183. pulumi_vault/plugin.py +595 -0
  184. pulumi_vault/plugin_pinned_version.py +298 -0
  185. pulumi_vault/policy.py +14 -9
  186. pulumi_vault/provider.py +48 -53
  187. pulumi_vault/pulumi-plugin.json +2 -1
  188. pulumi_vault/quota_lease_count.py +60 -6
  189. pulumi_vault/quota_rate_limit.py +56 -2
  190. pulumi_vault/rabbitmq/_inputs.py +61 -0
  191. pulumi_vault/rabbitmq/outputs.py +5 -0
  192. pulumi_vault/rabbitmq/secret_backend.py +18 -13
  193. pulumi_vault/rabbitmq/secret_backend_role.py +54 -47
  194. pulumi_vault/raft_autopilot.py +14 -9
  195. pulumi_vault/raft_snapshot_agent_config.py +129 -224
  196. pulumi_vault/rgp_policy.py +14 -9
  197. pulumi_vault/saml/auth_backend.py +22 -17
  198. pulumi_vault/saml/auth_backend_role.py +92 -197
  199. pulumi_vault/secrets/__init__.py +3 -0
  200. pulumi_vault/secrets/_inputs.py +110 -0
  201. pulumi_vault/secrets/outputs.py +94 -0
  202. pulumi_vault/secrets/sync_association.py +56 -71
  203. pulumi_vault/secrets/sync_aws_destination.py +242 -27
  204. pulumi_vault/secrets/sync_azure_destination.py +92 -31
  205. pulumi_vault/secrets/sync_config.py +9 -4
  206. pulumi_vault/secrets/sync_gcp_destination.py +158 -25
  207. pulumi_vault/secrets/sync_gh_destination.py +189 -13
  208. pulumi_vault/secrets/sync_github_apps.py +375 -0
  209. pulumi_vault/secrets/sync_vercel_destination.py +74 -13
  210. pulumi_vault/ssh/_inputs.py +28 -28
  211. pulumi_vault/ssh/outputs.py +11 -28
  212. pulumi_vault/ssh/secret_backend_ca.py +108 -9
  213. pulumi_vault/ssh/secret_backend_role.py +112 -118
  214. pulumi_vault/terraformcloud/secret_backend.py +7 -54
  215. pulumi_vault/terraformcloud/secret_creds.py +14 -20
  216. pulumi_vault/terraformcloud/secret_role.py +16 -74
  217. pulumi_vault/token.py +28 -23
  218. pulumi_vault/tokenauth/auth_backend_role.py +78 -199
  219. pulumi_vault/transform/alphabet.py +16 -9
  220. pulumi_vault/transform/get_decode.py +45 -17
  221. pulumi_vault/transform/get_encode.py +45 -17
  222. pulumi_vault/transform/role.py +16 -9
  223. pulumi_vault/transform/template.py +30 -21
  224. pulumi_vault/transform/transformation.py +12 -7
  225. pulumi_vault/transit/get_decrypt.py +26 -21
  226. pulumi_vault/transit/get_encrypt.py +24 -19
  227. pulumi_vault/transit/secret_backend_key.py +27 -93
  228. pulumi_vault/transit/secret_cache_config.py +12 -7
  229. {pulumi_vault-5.21.0a1709368526.dist-info → pulumi_vault-6.5.0.dist-info}/METADATA +8 -7
  230. pulumi_vault-6.5.0.dist-info/RECORD +260 -0
  231. {pulumi_vault-5.21.0a1709368526.dist-info → pulumi_vault-6.5.0.dist-info}/WHEEL +1 -1
  232. pulumi_vault-5.21.0a1709368526.dist-info/RECORD +0 -244
  233. {pulumi_vault-5.21.0a1709368526.dist-info → pulumi_vault-6.5.0.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -18,16 +23,20 @@ class SecretsMountArgs:
18
23
  def __init__(__self__, *,
19
24
  path: pulumi.Input[str],
20
25
  allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
21
27
  audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
22
28
  audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
23
29
  cassandras: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountCassandraArgs']]]] = None,
24
30
  couchbases: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountCouchbaseArgs']]]] = None,
25
31
  default_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
32
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
33
  description: Optional[pulumi.Input[str]] = None,
27
34
  elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountElasticsearchArgs']]]] = None,
28
35
  external_entropy_access: Optional[pulumi.Input[bool]] = None,
29
36
  hanas: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountHanaArgs']]]] = None,
37
+ identity_token_key: Optional[pulumi.Input[str]] = None,
30
38
  influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]]] = None,
39
+ listing_visibility: Optional[pulumi.Input[str]] = None,
31
40
  local: Optional[pulumi.Input[bool]] = None,
32
41
  max_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
33
42
  mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountMongodbatlaArgs']]]] = None,
@@ -38,8 +47,10 @@ class SecretsMountArgs:
38
47
  mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountMysqlRdArgs']]]] = None,
39
48
  mysqls: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountMysqlArgs']]]] = None,
40
49
  namespace: Optional[pulumi.Input[str]] = None,
41
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
50
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
42
51
  oracles: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountOracleArgs']]]] = None,
52
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
53
+ plugin_version: Optional[pulumi.Input[str]] = None,
43
54
  postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountPostgresqlArgs']]]] = None,
44
55
  redis: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountRediArgs']]]] = None,
45
56
  redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountRedisElasticachArgs']]]] = None,
@@ -52,6 +63,7 @@ class SecretsMountArgs:
52
63
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_managed_keys: Set of managed key registry entry names that the mount in question is allowed to access
53
64
 
54
65
  The following arguments are common to all database engines:
66
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
55
67
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_request_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
56
68
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_response_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
57
69
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountCassandraArgs']]] cassandras: A nested block containing configuration options for Cassandra connections.
@@ -59,14 +71,17 @@ class SecretsMountArgs:
59
71
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountCouchbaseArgs']]] couchbases: A nested block containing configuration options for Couchbase connections.
60
72
  *See Configuration Options for more info*
61
73
  :param pulumi.Input[int] default_lease_ttl_seconds: Default lease duration for tokens and secrets in seconds
74
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
62
75
  :param pulumi.Input[str] description: Human-friendly description of the mount
63
76
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountElasticsearchArgs']]] elasticsearches: A nested block containing configuration options for Elasticsearch connections.
64
77
  *See Configuration Options for more info*
65
78
  :param pulumi.Input[bool] external_entropy_access: Boolean flag that can be explicitly set to true to enable the secrets engine to access Vault's external entropy source
66
79
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountHanaArgs']]] hanas: A nested block containing configuration options for SAP HanaDB connections.
67
80
  *See Configuration Options for more info*
81
+ :param pulumi.Input[str] identity_token_key: The key to use for signing plugin workload identity tokens
68
82
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]] influxdbs: A nested block containing configuration options for InfluxDB connections.
69
83
  *See Configuration Options for more info*
84
+ :param pulumi.Input[str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
70
85
  :param pulumi.Input[bool] local: Boolean flag that can be explicitly set to true to enforce local mount in HA environment
71
86
  :param pulumi.Input[int] max_lease_ttl_seconds: Maximum possible lease duration for tokens and secrets in seconds
72
87
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountMongodbatlaArgs']]] mongodbatlas: A nested block containing configuration options for MongoDB Atlas connections.
@@ -84,9 +99,11 @@ class SecretsMountArgs:
84
99
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountMysqlArgs']]] mysqls: A nested block containing configuration options for MySQL connections.
85
100
  *See Configuration Options for more info*
86
101
  :param pulumi.Input[str] namespace: Target namespace. (requires Enterprise)
87
- :param pulumi.Input[Mapping[str, Any]] options: Specifies mount type specific options that are passed to the backend
102
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Specifies mount type specific options that are passed to the backend
88
103
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountOracleArgs']]] oracles: A nested block containing configuration options for Oracle connections.
89
104
  *See Configuration Options for more info*
105
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
106
+ :param pulumi.Input[str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
90
107
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountPostgresqlArgs']]] postgresqls: A nested block containing configuration options for PostgreSQL connections.
91
108
  *See Configuration Options for more info*
92
109
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountRediArgs']]] redis: A nested block containing configuration options for Redis connections.
@@ -102,6 +119,8 @@ class SecretsMountArgs:
102
119
  pulumi.set(__self__, "path", path)
103
120
  if allowed_managed_keys is not None:
104
121
  pulumi.set(__self__, "allowed_managed_keys", allowed_managed_keys)
122
+ if allowed_response_headers is not None:
123
+ pulumi.set(__self__, "allowed_response_headers", allowed_response_headers)
105
124
  if audit_non_hmac_request_keys is not None:
106
125
  pulumi.set(__self__, "audit_non_hmac_request_keys", audit_non_hmac_request_keys)
107
126
  if audit_non_hmac_response_keys is not None:
@@ -112,6 +131,8 @@ class SecretsMountArgs:
112
131
  pulumi.set(__self__, "couchbases", couchbases)
113
132
  if default_lease_ttl_seconds is not None:
114
133
  pulumi.set(__self__, "default_lease_ttl_seconds", default_lease_ttl_seconds)
134
+ if delegated_auth_accessors is not None:
135
+ pulumi.set(__self__, "delegated_auth_accessors", delegated_auth_accessors)
115
136
  if description is not None:
116
137
  pulumi.set(__self__, "description", description)
117
138
  if elasticsearches is not None:
@@ -120,8 +141,12 @@ class SecretsMountArgs:
120
141
  pulumi.set(__self__, "external_entropy_access", external_entropy_access)
121
142
  if hanas is not None:
122
143
  pulumi.set(__self__, "hanas", hanas)
144
+ if identity_token_key is not None:
145
+ pulumi.set(__self__, "identity_token_key", identity_token_key)
123
146
  if influxdbs is not None:
124
147
  pulumi.set(__self__, "influxdbs", influxdbs)
148
+ if listing_visibility is not None:
149
+ pulumi.set(__self__, "listing_visibility", listing_visibility)
125
150
  if local is not None:
126
151
  pulumi.set(__self__, "local", local)
127
152
  if max_lease_ttl_seconds is not None:
@@ -146,6 +171,10 @@ class SecretsMountArgs:
146
171
  pulumi.set(__self__, "options", options)
147
172
  if oracles is not None:
148
173
  pulumi.set(__self__, "oracles", oracles)
174
+ if passthrough_request_headers is not None:
175
+ pulumi.set(__self__, "passthrough_request_headers", passthrough_request_headers)
176
+ if plugin_version is not None:
177
+ pulumi.set(__self__, "plugin_version", plugin_version)
149
178
  if postgresqls is not None:
150
179
  pulumi.set(__self__, "postgresqls", postgresqls)
151
180
  if redis is not None:
@@ -185,6 +214,18 @@ class SecretsMountArgs:
185
214
  def allowed_managed_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
186
215
  pulumi.set(self, "allowed_managed_keys", value)
187
216
 
217
+ @property
218
+ @pulumi.getter(name="allowedResponseHeaders")
219
+ def allowed_response_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
220
+ """
221
+ List of headers to allow and pass from the request to the plugin
222
+ """
223
+ return pulumi.get(self, "allowed_response_headers")
224
+
225
+ @allowed_response_headers.setter
226
+ def allowed_response_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
227
+ pulumi.set(self, "allowed_response_headers", value)
228
+
188
229
  @property
189
230
  @pulumi.getter(name="auditNonHmacRequestKeys")
190
231
  def audit_non_hmac_request_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
@@ -247,6 +288,18 @@ class SecretsMountArgs:
247
288
  def default_lease_ttl_seconds(self, value: Optional[pulumi.Input[int]]):
248
289
  pulumi.set(self, "default_lease_ttl_seconds", value)
249
290
 
291
+ @property
292
+ @pulumi.getter(name="delegatedAuthAccessors")
293
+ def delegated_auth_accessors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
294
+ """
295
+ List of headers to allow and pass from the request to the plugin
296
+ """
297
+ return pulumi.get(self, "delegated_auth_accessors")
298
+
299
+ @delegated_auth_accessors.setter
300
+ def delegated_auth_accessors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
301
+ pulumi.set(self, "delegated_auth_accessors", value)
302
+
250
303
  @property
251
304
  @pulumi.getter
252
305
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -297,6 +350,18 @@ class SecretsMountArgs:
297
350
  def hanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountHanaArgs']]]]):
298
351
  pulumi.set(self, "hanas", value)
299
352
 
353
+ @property
354
+ @pulumi.getter(name="identityTokenKey")
355
+ def identity_token_key(self) -> Optional[pulumi.Input[str]]:
356
+ """
357
+ The key to use for signing plugin workload identity tokens
358
+ """
359
+ return pulumi.get(self, "identity_token_key")
360
+
361
+ @identity_token_key.setter
362
+ def identity_token_key(self, value: Optional[pulumi.Input[str]]):
363
+ pulumi.set(self, "identity_token_key", value)
364
+
300
365
  @property
301
366
  @pulumi.getter
302
367
  def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]]]:
@@ -310,6 +375,18 @@ class SecretsMountArgs:
310
375
  def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]]]):
311
376
  pulumi.set(self, "influxdbs", value)
312
377
 
378
+ @property
379
+ @pulumi.getter(name="listingVisibility")
380
+ def listing_visibility(self) -> Optional[pulumi.Input[str]]:
381
+ """
382
+ Specifies whether to show this mount in the UI-specific listing endpoint
383
+ """
384
+ return pulumi.get(self, "listing_visibility")
385
+
386
+ @listing_visibility.setter
387
+ def listing_visibility(self, value: Optional[pulumi.Input[str]]):
388
+ pulumi.set(self, "listing_visibility", value)
389
+
313
390
  @property
314
391
  @pulumi.getter
315
392
  def local(self) -> Optional[pulumi.Input[bool]]:
@@ -439,14 +516,14 @@ class SecretsMountArgs:
439
516
 
440
517
  @property
441
518
  @pulumi.getter
442
- def options(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
519
+ def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
443
520
  """
444
521
  Specifies mount type specific options that are passed to the backend
445
522
  """
446
523
  return pulumi.get(self, "options")
447
524
 
448
525
  @options.setter
449
- def options(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
526
+ def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
450
527
  pulumi.set(self, "options", value)
451
528
 
452
529
  @property
@@ -462,6 +539,30 @@ class SecretsMountArgs:
462
539
  def oracles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountOracleArgs']]]]):
463
540
  pulumi.set(self, "oracles", value)
464
541
 
542
+ @property
543
+ @pulumi.getter(name="passthroughRequestHeaders")
544
+ def passthrough_request_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
545
+ """
546
+ List of headers to allow and pass from the request to the plugin
547
+ """
548
+ return pulumi.get(self, "passthrough_request_headers")
549
+
550
+ @passthrough_request_headers.setter
551
+ def passthrough_request_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
552
+ pulumi.set(self, "passthrough_request_headers", value)
553
+
554
+ @property
555
+ @pulumi.getter(name="pluginVersion")
556
+ def plugin_version(self) -> Optional[pulumi.Input[str]]:
557
+ """
558
+ Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
559
+ """
560
+ return pulumi.get(self, "plugin_version")
561
+
562
+ @plugin_version.setter
563
+ def plugin_version(self, value: Optional[pulumi.Input[str]]):
564
+ pulumi.set(self, "plugin_version", value)
565
+
465
566
  @property
466
567
  @pulumi.getter
467
568
  def postgresqls(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountPostgresqlArgs']]]]:
@@ -545,17 +646,21 @@ class _SecretsMountState:
545
646
  def __init__(__self__, *,
546
647
  accessor: Optional[pulumi.Input[str]] = None,
547
648
  allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
649
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
548
650
  audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
549
651
  audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
550
652
  cassandras: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountCassandraArgs']]]] = None,
551
653
  couchbases: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountCouchbaseArgs']]]] = None,
552
654
  default_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
655
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
553
656
  description: Optional[pulumi.Input[str]] = None,
554
657
  elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountElasticsearchArgs']]]] = None,
555
658
  engine_count: Optional[pulumi.Input[int]] = None,
556
659
  external_entropy_access: Optional[pulumi.Input[bool]] = None,
557
660
  hanas: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountHanaArgs']]]] = None,
661
+ identity_token_key: Optional[pulumi.Input[str]] = None,
558
662
  influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]]] = None,
663
+ listing_visibility: Optional[pulumi.Input[str]] = None,
559
664
  local: Optional[pulumi.Input[bool]] = None,
560
665
  max_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
561
666
  mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountMongodbatlaArgs']]]] = None,
@@ -566,9 +671,11 @@ class _SecretsMountState:
566
671
  mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountMysqlRdArgs']]]] = None,
567
672
  mysqls: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountMysqlArgs']]]] = None,
568
673
  namespace: Optional[pulumi.Input[str]] = None,
569
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
674
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
570
675
  oracles: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountOracleArgs']]]] = None,
676
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
571
677
  path: Optional[pulumi.Input[str]] = None,
678
+ plugin_version: Optional[pulumi.Input[str]] = None,
572
679
  postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountPostgresqlArgs']]]] = None,
573
680
  redis: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountRediArgs']]]] = None,
574
681
  redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountRedisElasticachArgs']]]] = None,
@@ -581,6 +688,7 @@ class _SecretsMountState:
581
688
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_managed_keys: Set of managed key registry entry names that the mount in question is allowed to access
582
689
 
583
690
  The following arguments are common to all database engines:
691
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
584
692
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_request_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
585
693
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_response_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
586
694
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountCassandraArgs']]] cassandras: A nested block containing configuration options for Cassandra connections.
@@ -588,6 +696,7 @@ class _SecretsMountState:
588
696
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountCouchbaseArgs']]] couchbases: A nested block containing configuration options for Couchbase connections.
589
697
  *See Configuration Options for more info*
590
698
  :param pulumi.Input[int] default_lease_ttl_seconds: Default lease duration for tokens and secrets in seconds
699
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
591
700
  :param pulumi.Input[str] description: Human-friendly description of the mount
592
701
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountElasticsearchArgs']]] elasticsearches: A nested block containing configuration options for Elasticsearch connections.
593
702
  *See Configuration Options for more info*
@@ -595,8 +704,10 @@ class _SecretsMountState:
595
704
  :param pulumi.Input[bool] external_entropy_access: Boolean flag that can be explicitly set to true to enable the secrets engine to access Vault's external entropy source
596
705
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountHanaArgs']]] hanas: A nested block containing configuration options for SAP HanaDB connections.
597
706
  *See Configuration Options for more info*
707
+ :param pulumi.Input[str] identity_token_key: The key to use for signing plugin workload identity tokens
598
708
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]] influxdbs: A nested block containing configuration options for InfluxDB connections.
599
709
  *See Configuration Options for more info*
710
+ :param pulumi.Input[str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
600
711
  :param pulumi.Input[bool] local: Boolean flag that can be explicitly set to true to enforce local mount in HA environment
601
712
  :param pulumi.Input[int] max_lease_ttl_seconds: Maximum possible lease duration for tokens and secrets in seconds
602
713
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountMongodbatlaArgs']]] mongodbatlas: A nested block containing configuration options for MongoDB Atlas connections.
@@ -614,10 +725,12 @@ class _SecretsMountState:
614
725
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountMysqlArgs']]] mysqls: A nested block containing configuration options for MySQL connections.
615
726
  *See Configuration Options for more info*
616
727
  :param pulumi.Input[str] namespace: Target namespace. (requires Enterprise)
617
- :param pulumi.Input[Mapping[str, Any]] options: Specifies mount type specific options that are passed to the backend
728
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Specifies mount type specific options that are passed to the backend
618
729
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountOracleArgs']]] oracles: A nested block containing configuration options for Oracle connections.
619
730
  *See Configuration Options for more info*
731
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
620
732
  :param pulumi.Input[str] path: Where the secret backend will be mounted
733
+ :param pulumi.Input[str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
621
734
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountPostgresqlArgs']]] postgresqls: A nested block containing configuration options for PostgreSQL connections.
622
735
  *See Configuration Options for more info*
623
736
  :param pulumi.Input[Sequence[pulumi.Input['SecretsMountRediArgs']]] redis: A nested block containing configuration options for Redis connections.
@@ -634,6 +747,8 @@ class _SecretsMountState:
634
747
  pulumi.set(__self__, "accessor", accessor)
635
748
  if allowed_managed_keys is not None:
636
749
  pulumi.set(__self__, "allowed_managed_keys", allowed_managed_keys)
750
+ if allowed_response_headers is not None:
751
+ pulumi.set(__self__, "allowed_response_headers", allowed_response_headers)
637
752
  if audit_non_hmac_request_keys is not None:
638
753
  pulumi.set(__self__, "audit_non_hmac_request_keys", audit_non_hmac_request_keys)
639
754
  if audit_non_hmac_response_keys is not None:
@@ -644,6 +759,8 @@ class _SecretsMountState:
644
759
  pulumi.set(__self__, "couchbases", couchbases)
645
760
  if default_lease_ttl_seconds is not None:
646
761
  pulumi.set(__self__, "default_lease_ttl_seconds", default_lease_ttl_seconds)
762
+ if delegated_auth_accessors is not None:
763
+ pulumi.set(__self__, "delegated_auth_accessors", delegated_auth_accessors)
647
764
  if description is not None:
648
765
  pulumi.set(__self__, "description", description)
649
766
  if elasticsearches is not None:
@@ -654,8 +771,12 @@ class _SecretsMountState:
654
771
  pulumi.set(__self__, "external_entropy_access", external_entropy_access)
655
772
  if hanas is not None:
656
773
  pulumi.set(__self__, "hanas", hanas)
774
+ if identity_token_key is not None:
775
+ pulumi.set(__self__, "identity_token_key", identity_token_key)
657
776
  if influxdbs is not None:
658
777
  pulumi.set(__self__, "influxdbs", influxdbs)
778
+ if listing_visibility is not None:
779
+ pulumi.set(__self__, "listing_visibility", listing_visibility)
659
780
  if local is not None:
660
781
  pulumi.set(__self__, "local", local)
661
782
  if max_lease_ttl_seconds is not None:
@@ -680,8 +801,12 @@ class _SecretsMountState:
680
801
  pulumi.set(__self__, "options", options)
681
802
  if oracles is not None:
682
803
  pulumi.set(__self__, "oracles", oracles)
804
+ if passthrough_request_headers is not None:
805
+ pulumi.set(__self__, "passthrough_request_headers", passthrough_request_headers)
683
806
  if path is not None:
684
807
  pulumi.set(__self__, "path", path)
808
+ if plugin_version is not None:
809
+ pulumi.set(__self__, "plugin_version", plugin_version)
685
810
  if postgresqls is not None:
686
811
  pulumi.set(__self__, "postgresqls", postgresqls)
687
812
  if redis is not None:
@@ -721,6 +846,18 @@ class _SecretsMountState:
721
846
  def allowed_managed_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
722
847
  pulumi.set(self, "allowed_managed_keys", value)
723
848
 
849
+ @property
850
+ @pulumi.getter(name="allowedResponseHeaders")
851
+ def allowed_response_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
852
+ """
853
+ List of headers to allow and pass from the request to the plugin
854
+ """
855
+ return pulumi.get(self, "allowed_response_headers")
856
+
857
+ @allowed_response_headers.setter
858
+ def allowed_response_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
859
+ pulumi.set(self, "allowed_response_headers", value)
860
+
724
861
  @property
725
862
  @pulumi.getter(name="auditNonHmacRequestKeys")
726
863
  def audit_non_hmac_request_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
@@ -783,6 +920,18 @@ class _SecretsMountState:
783
920
  def default_lease_ttl_seconds(self, value: Optional[pulumi.Input[int]]):
784
921
  pulumi.set(self, "default_lease_ttl_seconds", value)
785
922
 
923
+ @property
924
+ @pulumi.getter(name="delegatedAuthAccessors")
925
+ def delegated_auth_accessors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
926
+ """
927
+ List of headers to allow and pass from the request to the plugin
928
+ """
929
+ return pulumi.get(self, "delegated_auth_accessors")
930
+
931
+ @delegated_auth_accessors.setter
932
+ def delegated_auth_accessors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
933
+ pulumi.set(self, "delegated_auth_accessors", value)
934
+
786
935
  @property
787
936
  @pulumi.getter
788
937
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -845,6 +994,18 @@ class _SecretsMountState:
845
994
  def hanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountHanaArgs']]]]):
846
995
  pulumi.set(self, "hanas", value)
847
996
 
997
+ @property
998
+ @pulumi.getter(name="identityTokenKey")
999
+ def identity_token_key(self) -> Optional[pulumi.Input[str]]:
1000
+ """
1001
+ The key to use for signing plugin workload identity tokens
1002
+ """
1003
+ return pulumi.get(self, "identity_token_key")
1004
+
1005
+ @identity_token_key.setter
1006
+ def identity_token_key(self, value: Optional[pulumi.Input[str]]):
1007
+ pulumi.set(self, "identity_token_key", value)
1008
+
848
1009
  @property
849
1010
  @pulumi.getter
850
1011
  def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]]]:
@@ -858,6 +1019,18 @@ class _SecretsMountState:
858
1019
  def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountInfluxdbArgs']]]]):
859
1020
  pulumi.set(self, "influxdbs", value)
860
1021
 
1022
+ @property
1023
+ @pulumi.getter(name="listingVisibility")
1024
+ def listing_visibility(self) -> Optional[pulumi.Input[str]]:
1025
+ """
1026
+ Specifies whether to show this mount in the UI-specific listing endpoint
1027
+ """
1028
+ return pulumi.get(self, "listing_visibility")
1029
+
1030
+ @listing_visibility.setter
1031
+ def listing_visibility(self, value: Optional[pulumi.Input[str]]):
1032
+ pulumi.set(self, "listing_visibility", value)
1033
+
861
1034
  @property
862
1035
  @pulumi.getter
863
1036
  def local(self) -> Optional[pulumi.Input[bool]]:
@@ -987,14 +1160,14 @@ class _SecretsMountState:
987
1160
 
988
1161
  @property
989
1162
  @pulumi.getter
990
- def options(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
1163
+ def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
991
1164
  """
992
1165
  Specifies mount type specific options that are passed to the backend
993
1166
  """
994
1167
  return pulumi.get(self, "options")
995
1168
 
996
1169
  @options.setter
997
- def options(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
1170
+ def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
998
1171
  pulumi.set(self, "options", value)
999
1172
 
1000
1173
  @property
@@ -1010,6 +1183,18 @@ class _SecretsMountState:
1010
1183
  def oracles(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountOracleArgs']]]]):
1011
1184
  pulumi.set(self, "oracles", value)
1012
1185
 
1186
+ @property
1187
+ @pulumi.getter(name="passthroughRequestHeaders")
1188
+ def passthrough_request_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1189
+ """
1190
+ List of headers to allow and pass from the request to the plugin
1191
+ """
1192
+ return pulumi.get(self, "passthrough_request_headers")
1193
+
1194
+ @passthrough_request_headers.setter
1195
+ def passthrough_request_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1196
+ pulumi.set(self, "passthrough_request_headers", value)
1197
+
1013
1198
  @property
1014
1199
  @pulumi.getter
1015
1200
  def path(self) -> Optional[pulumi.Input[str]]:
@@ -1022,6 +1207,18 @@ class _SecretsMountState:
1022
1207
  def path(self, value: Optional[pulumi.Input[str]]):
1023
1208
  pulumi.set(self, "path", value)
1024
1209
 
1210
+ @property
1211
+ @pulumi.getter(name="pluginVersion")
1212
+ def plugin_version(self) -> Optional[pulumi.Input[str]]:
1213
+ """
1214
+ Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1215
+ """
1216
+ return pulumi.get(self, "plugin_version")
1217
+
1218
+ @plugin_version.setter
1219
+ def plugin_version(self, value: Optional[pulumi.Input[str]]):
1220
+ pulumi.set(self, "plugin_version", value)
1221
+
1025
1222
  @property
1026
1223
  @pulumi.getter
1027
1224
  def postgresqls(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretsMountPostgresqlArgs']]]]:
@@ -1106,35 +1303,41 @@ class SecretsMount(pulumi.CustomResource):
1106
1303
  resource_name: str,
1107
1304
  opts: Optional[pulumi.ResourceOptions] = None,
1108
1305
  allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1306
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1109
1307
  audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1110
1308
  audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1111
- cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCassandraArgs']]]]] = None,
1112
- couchbases: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCouchbaseArgs']]]]] = None,
1309
+ cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCassandraArgs', 'SecretsMountCassandraArgsDict']]]]] = None,
1310
+ couchbases: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCouchbaseArgs', 'SecretsMountCouchbaseArgsDict']]]]] = None,
1113
1311
  default_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
1312
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1114
1313
  description: Optional[pulumi.Input[str]] = None,
1115
- elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountElasticsearchArgs']]]]] = None,
1314
+ elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountElasticsearchArgs', 'SecretsMountElasticsearchArgsDict']]]]] = None,
1116
1315
  external_entropy_access: Optional[pulumi.Input[bool]] = None,
1117
- hanas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountHanaArgs']]]]] = None,
1118
- influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountInfluxdbArgs']]]]] = None,
1316
+ hanas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountHanaArgs', 'SecretsMountHanaArgsDict']]]]] = None,
1317
+ identity_token_key: Optional[pulumi.Input[str]] = None,
1318
+ influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountInfluxdbArgs', 'SecretsMountInfluxdbArgsDict']]]]] = None,
1319
+ listing_visibility: Optional[pulumi.Input[str]] = None,
1119
1320
  local: Optional[pulumi.Input[bool]] = None,
1120
1321
  max_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
1121
- mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbatlaArgs']]]]] = None,
1122
- mongodbs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbArgs']]]]] = None,
1123
- mssqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMssqlArgs']]]]] = None,
1124
- mysql_auroras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlAuroraArgs']]]]] = None,
1125
- mysql_legacies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlLegacyArgs']]]]] = None,
1126
- mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlRdArgs']]]]] = None,
1127
- mysqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlArgs']]]]] = None,
1322
+ mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbatlaArgs', 'SecretsMountMongodbatlaArgsDict']]]]] = None,
1323
+ mongodbs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbArgs', 'SecretsMountMongodbArgsDict']]]]] = None,
1324
+ mssqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMssqlArgs', 'SecretsMountMssqlArgsDict']]]]] = None,
1325
+ mysql_auroras: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlAuroraArgs', 'SecretsMountMysqlAuroraArgsDict']]]]] = None,
1326
+ mysql_legacies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlLegacyArgs', 'SecretsMountMysqlLegacyArgsDict']]]]] = None,
1327
+ mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlRdArgs', 'SecretsMountMysqlRdArgsDict']]]]] = None,
1328
+ mysqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlArgs', 'SecretsMountMysqlArgsDict']]]]] = None,
1128
1329
  namespace: Optional[pulumi.Input[str]] = None,
1129
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1130
- oracles: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountOracleArgs']]]]] = None,
1330
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1331
+ oracles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountOracleArgs', 'SecretsMountOracleArgsDict']]]]] = None,
1332
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1131
1333
  path: Optional[pulumi.Input[str]] = None,
1132
- postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountPostgresqlArgs']]]]] = None,
1133
- redis: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRediArgs']]]]] = None,
1134
- redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedisElasticachArgs']]]]] = None,
1135
- redshifts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedshiftArgs']]]]] = None,
1334
+ plugin_version: Optional[pulumi.Input[str]] = None,
1335
+ postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountPostgresqlArgs', 'SecretsMountPostgresqlArgsDict']]]]] = None,
1336
+ redis: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRediArgs', 'SecretsMountRediArgsDict']]]]] = None,
1337
+ redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedisElasticachArgs', 'SecretsMountRedisElasticachArgsDict']]]]] = None,
1338
+ redshifts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedshiftArgs', 'SecretsMountRedshiftArgsDict']]]]] = None,
1136
1339
  seal_wrap: Optional[pulumi.Input[bool]] = None,
1137
- snowflakes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountSnowflakeArgs']]]]] = None,
1340
+ snowflakes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountSnowflakeArgs', 'SecretsMountSnowflakeArgsDict']]]]] = None,
1138
1341
  __props__=None):
1139
1342
  """
1140
1343
  ## Example Usage
@@ -1145,22 +1348,23 @@ class SecretsMount(pulumi.CustomResource):
1145
1348
 
1146
1349
  db = vault.database.SecretsMount("db",
1147
1350
  path="db",
1148
- mssqls=[vault.database.SecretsMountMssqlArgs(
1149
- name="db1",
1150
- username="sa",
1151
- password="super_secret_1",
1152
- connection_url="sqlserver://{{username}}:{{password}}@127.0.0.1:1433",
1153
- allowed_roles=["dev1"],
1154
- )],
1155
- postgresqls=[vault.database.SecretsMountPostgresqlArgs(
1156
- name="db2",
1157
- username="postgres",
1158
- password="super_secret_2",
1159
- connection_url="postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres",
1160
- verify_connection=True,
1161
- allowed_roles=["dev2"],
1162
- )])
1351
+ mssqls=[{
1352
+ "name": "db1",
1353
+ "username": "sa",
1354
+ "password": "super_secret_1",
1355
+ "connection_url": "sqlserver://{{username}}:{{password}}@127.0.0.1:1433",
1356
+ "allowed_roles": ["dev1"],
1357
+ }],
1358
+ postgresqls=[{
1359
+ "name": "db2",
1360
+ "username": "postgres",
1361
+ "password": "super_secret_2",
1362
+ "connection_url": "postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres",
1363
+ "verify_connection": True,
1364
+ "allowed_roles": ["dev2"],
1365
+ }])
1163
1366
  dev1 = vault.database.SecretBackendRole("dev1",
1367
+ name="dev1",
1164
1368
  backend=db.path,
1165
1369
  db_name=db.mssqls[0].name,
1166
1370
  creation_statements=[
@@ -1169,6 +1373,7 @@ class SecretsMount(pulumi.CustomResource):
1169
1373
  "GRANT SELECT ON SCHEMA::dbo TO [{{name}}];",
1170
1374
  ])
1171
1375
  dev2 = vault.database.SecretBackendRole("dev2",
1376
+ name="dev2",
1172
1377
  backend=db.path,
1173
1378
  db_name=db.postgresqls[0].name,
1174
1379
  creation_statements=[
@@ -1182,7 +1387,7 @@ class SecretsMount(pulumi.CustomResource):
1182
1387
  Database secret backend connections can be imported using the `path` e.g.
1183
1388
 
1184
1389
  ```sh
1185
- $ pulumi import vault:database/secretsMount:SecretsMount db db
1390
+ $ pulumi import vault:database/secretsMount:SecretsMount db db
1186
1391
  ```
1187
1392
 
1188
1393
  :param str resource_name: The name of the resource.
@@ -1190,52 +1395,58 @@ class SecretsMount(pulumi.CustomResource):
1190
1395
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_managed_keys: Set of managed key registry entry names that the mount in question is allowed to access
1191
1396
 
1192
1397
  The following arguments are common to all database engines:
1398
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
1193
1399
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_request_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
1194
1400
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_response_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
1195
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCassandraArgs']]]] cassandras: A nested block containing configuration options for Cassandra connections.
1401
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCassandraArgs', 'SecretsMountCassandraArgsDict']]]] cassandras: A nested block containing configuration options for Cassandra connections.
1196
1402
  *See Configuration Options for more info*
1197
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCouchbaseArgs']]]] couchbases: A nested block containing configuration options for Couchbase connections.
1403
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCouchbaseArgs', 'SecretsMountCouchbaseArgsDict']]]] couchbases: A nested block containing configuration options for Couchbase connections.
1198
1404
  *See Configuration Options for more info*
1199
1405
  :param pulumi.Input[int] default_lease_ttl_seconds: Default lease duration for tokens and secrets in seconds
1406
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
1200
1407
  :param pulumi.Input[str] description: Human-friendly description of the mount
1201
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountElasticsearchArgs']]]] elasticsearches: A nested block containing configuration options for Elasticsearch connections.
1408
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountElasticsearchArgs', 'SecretsMountElasticsearchArgsDict']]]] elasticsearches: A nested block containing configuration options for Elasticsearch connections.
1202
1409
  *See Configuration Options for more info*
1203
1410
  :param pulumi.Input[bool] external_entropy_access: Boolean flag that can be explicitly set to true to enable the secrets engine to access Vault's external entropy source
1204
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountHanaArgs']]]] hanas: A nested block containing configuration options for SAP HanaDB connections.
1411
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountHanaArgs', 'SecretsMountHanaArgsDict']]]] hanas: A nested block containing configuration options for SAP HanaDB connections.
1205
1412
  *See Configuration Options for more info*
1206
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountInfluxdbArgs']]]] influxdbs: A nested block containing configuration options for InfluxDB connections.
1413
+ :param pulumi.Input[str] identity_token_key: The key to use for signing plugin workload identity tokens
1414
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountInfluxdbArgs', 'SecretsMountInfluxdbArgsDict']]]] influxdbs: A nested block containing configuration options for InfluxDB connections.
1207
1415
  *See Configuration Options for more info*
1416
+ :param pulumi.Input[str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
1208
1417
  :param pulumi.Input[bool] local: Boolean flag that can be explicitly set to true to enforce local mount in HA environment
1209
1418
  :param pulumi.Input[int] max_lease_ttl_seconds: Maximum possible lease duration for tokens and secrets in seconds
1210
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbatlaArgs']]]] mongodbatlas: A nested block containing configuration options for MongoDB Atlas connections.
1419
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbatlaArgs', 'SecretsMountMongodbatlaArgsDict']]]] mongodbatlas: A nested block containing configuration options for MongoDB Atlas connections.
1211
1420
  *See Configuration Options for more info*
1212
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbArgs']]]] mongodbs: A nested block containing configuration options for MongoDB connections.
1421
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbArgs', 'SecretsMountMongodbArgsDict']]]] mongodbs: A nested block containing configuration options for MongoDB connections.
1213
1422
  *See Configuration Options for more info*
1214
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMssqlArgs']]]] mssqls: A nested block containing configuration options for MSSQL connections.
1423
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMssqlArgs', 'SecretsMountMssqlArgsDict']]]] mssqls: A nested block containing configuration options for MSSQL connections.
1215
1424
  *See Configuration Options for more info*
1216
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlAuroraArgs']]]] mysql_auroras: A nested block containing configuration options for Aurora MySQL connections.
1425
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlAuroraArgs', 'SecretsMountMysqlAuroraArgsDict']]]] mysql_auroras: A nested block containing configuration options for Aurora MySQL connections.
1217
1426
  *See Configuration Options for more info*
1218
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlLegacyArgs']]]] mysql_legacies: A nested block containing configuration options for legacy MySQL connections.
1427
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlLegacyArgs', 'SecretsMountMysqlLegacyArgsDict']]]] mysql_legacies: A nested block containing configuration options for legacy MySQL connections.
1219
1428
  *See Configuration Options for more info*
1220
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlRdArgs']]]] mysql_rds: A nested block containing configuration options for RDS MySQL connections.
1429
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlRdArgs', 'SecretsMountMysqlRdArgsDict']]]] mysql_rds: A nested block containing configuration options for RDS MySQL connections.
1221
1430
  *See Configuration Options for more info*
1222
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlArgs']]]] mysqls: A nested block containing configuration options for MySQL connections.
1431
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlArgs', 'SecretsMountMysqlArgsDict']]]] mysqls: A nested block containing configuration options for MySQL connections.
1223
1432
  *See Configuration Options for more info*
1224
1433
  :param pulumi.Input[str] namespace: Target namespace. (requires Enterprise)
1225
- :param pulumi.Input[Mapping[str, Any]] options: Specifies mount type specific options that are passed to the backend
1226
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountOracleArgs']]]] oracles: A nested block containing configuration options for Oracle connections.
1434
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Specifies mount type specific options that are passed to the backend
1435
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountOracleArgs', 'SecretsMountOracleArgsDict']]]] oracles: A nested block containing configuration options for Oracle connections.
1227
1436
  *See Configuration Options for more info*
1437
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
1228
1438
  :param pulumi.Input[str] path: Where the secret backend will be mounted
1229
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountPostgresqlArgs']]]] postgresqls: A nested block containing configuration options for PostgreSQL connections.
1439
+ :param pulumi.Input[str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1440
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountPostgresqlArgs', 'SecretsMountPostgresqlArgsDict']]]] postgresqls: A nested block containing configuration options for PostgreSQL connections.
1230
1441
  *See Configuration Options for more info*
1231
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRediArgs']]]] redis: A nested block containing configuration options for Redis connections.
1442
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRediArgs', 'SecretsMountRediArgsDict']]]] redis: A nested block containing configuration options for Redis connections.
1232
1443
  *See Configuration Options for more info*
1233
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedisElasticachArgs']]]] redis_elasticaches: A nested block containing configuration options for Redis ElastiCache connections.
1444
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedisElasticachArgs', 'SecretsMountRedisElasticachArgsDict']]]] redis_elasticaches: A nested block containing configuration options for Redis ElastiCache connections.
1234
1445
  *See Configuration Options for more info*
1235
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedshiftArgs']]]] redshifts: A nested block containing configuration options for AWS Redshift connections.
1446
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedshiftArgs', 'SecretsMountRedshiftArgsDict']]]] redshifts: A nested block containing configuration options for AWS Redshift connections.
1236
1447
  *See Configuration Options for more info*
1237
1448
  :param pulumi.Input[bool] seal_wrap: Boolean flag that can be explicitly set to true to enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
1238
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountSnowflakeArgs']]]] snowflakes: A nested block containing configuration options for Snowflake connections.
1449
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountSnowflakeArgs', 'SecretsMountSnowflakeArgsDict']]]] snowflakes: A nested block containing configuration options for Snowflake connections.
1239
1450
  *See Configuration Options for more info*
1240
1451
  """
1241
1452
  ...
@@ -1253,22 +1464,23 @@ class SecretsMount(pulumi.CustomResource):
1253
1464
 
1254
1465
  db = vault.database.SecretsMount("db",
1255
1466
  path="db",
1256
- mssqls=[vault.database.SecretsMountMssqlArgs(
1257
- name="db1",
1258
- username="sa",
1259
- password="super_secret_1",
1260
- connection_url="sqlserver://{{username}}:{{password}}@127.0.0.1:1433",
1261
- allowed_roles=["dev1"],
1262
- )],
1263
- postgresqls=[vault.database.SecretsMountPostgresqlArgs(
1264
- name="db2",
1265
- username="postgres",
1266
- password="super_secret_2",
1267
- connection_url="postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres",
1268
- verify_connection=True,
1269
- allowed_roles=["dev2"],
1270
- )])
1467
+ mssqls=[{
1468
+ "name": "db1",
1469
+ "username": "sa",
1470
+ "password": "super_secret_1",
1471
+ "connection_url": "sqlserver://{{username}}:{{password}}@127.0.0.1:1433",
1472
+ "allowed_roles": ["dev1"],
1473
+ }],
1474
+ postgresqls=[{
1475
+ "name": "db2",
1476
+ "username": "postgres",
1477
+ "password": "super_secret_2",
1478
+ "connection_url": "postgresql://{{username}}:{{password}}@127.0.0.1:5432/postgres",
1479
+ "verify_connection": True,
1480
+ "allowed_roles": ["dev2"],
1481
+ }])
1271
1482
  dev1 = vault.database.SecretBackendRole("dev1",
1483
+ name="dev1",
1272
1484
  backend=db.path,
1273
1485
  db_name=db.mssqls[0].name,
1274
1486
  creation_statements=[
@@ -1277,6 +1489,7 @@ class SecretsMount(pulumi.CustomResource):
1277
1489
  "GRANT SELECT ON SCHEMA::dbo TO [{{name}}];",
1278
1490
  ])
1279
1491
  dev2 = vault.database.SecretBackendRole("dev2",
1492
+ name="dev2",
1280
1493
  backend=db.path,
1281
1494
  db_name=db.postgresqls[0].name,
1282
1495
  creation_statements=[
@@ -1290,7 +1503,7 @@ class SecretsMount(pulumi.CustomResource):
1290
1503
  Database secret backend connections can be imported using the `path` e.g.
1291
1504
 
1292
1505
  ```sh
1293
- $ pulumi import vault:database/secretsMount:SecretsMount db db
1506
+ $ pulumi import vault:database/secretsMount:SecretsMount db db
1294
1507
  ```
1295
1508
 
1296
1509
  :param str resource_name: The name of the resource.
@@ -1309,35 +1522,41 @@ class SecretsMount(pulumi.CustomResource):
1309
1522
  resource_name: str,
1310
1523
  opts: Optional[pulumi.ResourceOptions] = None,
1311
1524
  allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1525
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1312
1526
  audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1313
1527
  audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1314
- cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCassandraArgs']]]]] = None,
1315
- couchbases: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCouchbaseArgs']]]]] = None,
1528
+ cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCassandraArgs', 'SecretsMountCassandraArgsDict']]]]] = None,
1529
+ couchbases: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCouchbaseArgs', 'SecretsMountCouchbaseArgsDict']]]]] = None,
1316
1530
  default_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
1531
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1317
1532
  description: Optional[pulumi.Input[str]] = None,
1318
- elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountElasticsearchArgs']]]]] = None,
1533
+ elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountElasticsearchArgs', 'SecretsMountElasticsearchArgsDict']]]]] = None,
1319
1534
  external_entropy_access: Optional[pulumi.Input[bool]] = None,
1320
- hanas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountHanaArgs']]]]] = None,
1321
- influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountInfluxdbArgs']]]]] = None,
1535
+ hanas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountHanaArgs', 'SecretsMountHanaArgsDict']]]]] = None,
1536
+ identity_token_key: Optional[pulumi.Input[str]] = None,
1537
+ influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountInfluxdbArgs', 'SecretsMountInfluxdbArgsDict']]]]] = None,
1538
+ listing_visibility: Optional[pulumi.Input[str]] = None,
1322
1539
  local: Optional[pulumi.Input[bool]] = None,
1323
1540
  max_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
1324
- mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbatlaArgs']]]]] = None,
1325
- mongodbs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbArgs']]]]] = None,
1326
- mssqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMssqlArgs']]]]] = None,
1327
- mysql_auroras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlAuroraArgs']]]]] = None,
1328
- mysql_legacies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlLegacyArgs']]]]] = None,
1329
- mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlRdArgs']]]]] = None,
1330
- mysqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlArgs']]]]] = None,
1541
+ mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbatlaArgs', 'SecretsMountMongodbatlaArgsDict']]]]] = None,
1542
+ mongodbs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbArgs', 'SecretsMountMongodbArgsDict']]]]] = None,
1543
+ mssqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMssqlArgs', 'SecretsMountMssqlArgsDict']]]]] = None,
1544
+ mysql_auroras: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlAuroraArgs', 'SecretsMountMysqlAuroraArgsDict']]]]] = None,
1545
+ mysql_legacies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlLegacyArgs', 'SecretsMountMysqlLegacyArgsDict']]]]] = None,
1546
+ mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlRdArgs', 'SecretsMountMysqlRdArgsDict']]]]] = None,
1547
+ mysqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlArgs', 'SecretsMountMysqlArgsDict']]]]] = None,
1331
1548
  namespace: Optional[pulumi.Input[str]] = None,
1332
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1333
- oracles: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountOracleArgs']]]]] = None,
1549
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1550
+ oracles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountOracleArgs', 'SecretsMountOracleArgsDict']]]]] = None,
1551
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1334
1552
  path: Optional[pulumi.Input[str]] = None,
1335
- postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountPostgresqlArgs']]]]] = None,
1336
- redis: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRediArgs']]]]] = None,
1337
- redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedisElasticachArgs']]]]] = None,
1338
- redshifts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedshiftArgs']]]]] = None,
1553
+ plugin_version: Optional[pulumi.Input[str]] = None,
1554
+ postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountPostgresqlArgs', 'SecretsMountPostgresqlArgsDict']]]]] = None,
1555
+ redis: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRediArgs', 'SecretsMountRediArgsDict']]]]] = None,
1556
+ redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedisElasticachArgs', 'SecretsMountRedisElasticachArgsDict']]]]] = None,
1557
+ redshifts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedshiftArgs', 'SecretsMountRedshiftArgsDict']]]]] = None,
1339
1558
  seal_wrap: Optional[pulumi.Input[bool]] = None,
1340
- snowflakes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountSnowflakeArgs']]]]] = None,
1559
+ snowflakes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountSnowflakeArgs', 'SecretsMountSnowflakeArgsDict']]]]] = None,
1341
1560
  __props__=None):
1342
1561
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1343
1562
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1348,16 +1567,20 @@ class SecretsMount(pulumi.CustomResource):
1348
1567
  __props__ = SecretsMountArgs.__new__(SecretsMountArgs)
1349
1568
 
1350
1569
  __props__.__dict__["allowed_managed_keys"] = allowed_managed_keys
1570
+ __props__.__dict__["allowed_response_headers"] = allowed_response_headers
1351
1571
  __props__.__dict__["audit_non_hmac_request_keys"] = audit_non_hmac_request_keys
1352
1572
  __props__.__dict__["audit_non_hmac_response_keys"] = audit_non_hmac_response_keys
1353
1573
  __props__.__dict__["cassandras"] = cassandras
1354
1574
  __props__.__dict__["couchbases"] = couchbases
1355
1575
  __props__.__dict__["default_lease_ttl_seconds"] = default_lease_ttl_seconds
1576
+ __props__.__dict__["delegated_auth_accessors"] = delegated_auth_accessors
1356
1577
  __props__.__dict__["description"] = description
1357
1578
  __props__.__dict__["elasticsearches"] = elasticsearches
1358
1579
  __props__.__dict__["external_entropy_access"] = external_entropy_access
1359
1580
  __props__.__dict__["hanas"] = hanas
1581
+ __props__.__dict__["identity_token_key"] = identity_token_key
1360
1582
  __props__.__dict__["influxdbs"] = influxdbs
1583
+ __props__.__dict__["listing_visibility"] = listing_visibility
1361
1584
  __props__.__dict__["local"] = local
1362
1585
  __props__.__dict__["max_lease_ttl_seconds"] = max_lease_ttl_seconds
1363
1586
  __props__.__dict__["mongodbatlas"] = mongodbatlas
@@ -1370,9 +1593,11 @@ class SecretsMount(pulumi.CustomResource):
1370
1593
  __props__.__dict__["namespace"] = namespace
1371
1594
  __props__.__dict__["options"] = options
1372
1595
  __props__.__dict__["oracles"] = oracles
1596
+ __props__.__dict__["passthrough_request_headers"] = passthrough_request_headers
1373
1597
  if path is None and not opts.urn:
1374
1598
  raise TypeError("Missing required property 'path'")
1375
1599
  __props__.__dict__["path"] = path
1600
+ __props__.__dict__["plugin_version"] = plugin_version
1376
1601
  __props__.__dict__["postgresqls"] = postgresqls
1377
1602
  __props__.__dict__["redis"] = redis
1378
1603
  __props__.__dict__["redis_elasticaches"] = redis_elasticaches
@@ -1393,36 +1618,42 @@ class SecretsMount(pulumi.CustomResource):
1393
1618
  opts: Optional[pulumi.ResourceOptions] = None,
1394
1619
  accessor: Optional[pulumi.Input[str]] = None,
1395
1620
  allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1621
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1396
1622
  audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1397
1623
  audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1398
- cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCassandraArgs']]]]] = None,
1399
- couchbases: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCouchbaseArgs']]]]] = None,
1624
+ cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCassandraArgs', 'SecretsMountCassandraArgsDict']]]]] = None,
1625
+ couchbases: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCouchbaseArgs', 'SecretsMountCouchbaseArgsDict']]]]] = None,
1400
1626
  default_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
1627
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1401
1628
  description: Optional[pulumi.Input[str]] = None,
1402
- elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountElasticsearchArgs']]]]] = None,
1629
+ elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountElasticsearchArgs', 'SecretsMountElasticsearchArgsDict']]]]] = None,
1403
1630
  engine_count: Optional[pulumi.Input[int]] = None,
1404
1631
  external_entropy_access: Optional[pulumi.Input[bool]] = None,
1405
- hanas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountHanaArgs']]]]] = None,
1406
- influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountInfluxdbArgs']]]]] = None,
1632
+ hanas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountHanaArgs', 'SecretsMountHanaArgsDict']]]]] = None,
1633
+ identity_token_key: Optional[pulumi.Input[str]] = None,
1634
+ influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountInfluxdbArgs', 'SecretsMountInfluxdbArgsDict']]]]] = None,
1635
+ listing_visibility: Optional[pulumi.Input[str]] = None,
1407
1636
  local: Optional[pulumi.Input[bool]] = None,
1408
1637
  max_lease_ttl_seconds: Optional[pulumi.Input[int]] = None,
1409
- mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbatlaArgs']]]]] = None,
1410
- mongodbs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbArgs']]]]] = None,
1411
- mssqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMssqlArgs']]]]] = None,
1412
- mysql_auroras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlAuroraArgs']]]]] = None,
1413
- mysql_legacies: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlLegacyArgs']]]]] = None,
1414
- mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlRdArgs']]]]] = None,
1415
- mysqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlArgs']]]]] = None,
1638
+ mongodbatlas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbatlaArgs', 'SecretsMountMongodbatlaArgsDict']]]]] = None,
1639
+ mongodbs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbArgs', 'SecretsMountMongodbArgsDict']]]]] = None,
1640
+ mssqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMssqlArgs', 'SecretsMountMssqlArgsDict']]]]] = None,
1641
+ mysql_auroras: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlAuroraArgs', 'SecretsMountMysqlAuroraArgsDict']]]]] = None,
1642
+ mysql_legacies: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlLegacyArgs', 'SecretsMountMysqlLegacyArgsDict']]]]] = None,
1643
+ mysql_rds: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlRdArgs', 'SecretsMountMysqlRdArgsDict']]]]] = None,
1644
+ mysqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlArgs', 'SecretsMountMysqlArgsDict']]]]] = None,
1416
1645
  namespace: Optional[pulumi.Input[str]] = None,
1417
- options: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1418
- oracles: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountOracleArgs']]]]] = None,
1646
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1647
+ oracles: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountOracleArgs', 'SecretsMountOracleArgsDict']]]]] = None,
1648
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1419
1649
  path: Optional[pulumi.Input[str]] = None,
1420
- postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountPostgresqlArgs']]]]] = None,
1421
- redis: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRediArgs']]]]] = None,
1422
- redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedisElasticachArgs']]]]] = None,
1423
- redshifts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedshiftArgs']]]]] = None,
1650
+ plugin_version: Optional[pulumi.Input[str]] = None,
1651
+ postgresqls: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountPostgresqlArgs', 'SecretsMountPostgresqlArgsDict']]]]] = None,
1652
+ redis: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRediArgs', 'SecretsMountRediArgsDict']]]]] = None,
1653
+ redis_elasticaches: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedisElasticachArgs', 'SecretsMountRedisElasticachArgsDict']]]]] = None,
1654
+ redshifts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedshiftArgs', 'SecretsMountRedshiftArgsDict']]]]] = None,
1424
1655
  seal_wrap: Optional[pulumi.Input[bool]] = None,
1425
- snowflakes: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountSnowflakeArgs']]]]] = None) -> 'SecretsMount':
1656
+ snowflakes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountSnowflakeArgs', 'SecretsMountSnowflakeArgsDict']]]]] = None) -> 'SecretsMount':
1426
1657
  """
1427
1658
  Get an existing SecretsMount resource's state with the given name, id, and optional extra
1428
1659
  properties used to qualify the lookup.
@@ -1434,53 +1665,59 @@ class SecretsMount(pulumi.CustomResource):
1434
1665
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_managed_keys: Set of managed key registry entry names that the mount in question is allowed to access
1435
1666
 
1436
1667
  The following arguments are common to all database engines:
1668
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
1437
1669
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_request_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
1438
1670
  :param pulumi.Input[Sequence[pulumi.Input[str]]] audit_non_hmac_response_keys: Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
1439
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCassandraArgs']]]] cassandras: A nested block containing configuration options for Cassandra connections.
1671
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCassandraArgs', 'SecretsMountCassandraArgsDict']]]] cassandras: A nested block containing configuration options for Cassandra connections.
1440
1672
  *See Configuration Options for more info*
1441
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountCouchbaseArgs']]]] couchbases: A nested block containing configuration options for Couchbase connections.
1673
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountCouchbaseArgs', 'SecretsMountCouchbaseArgsDict']]]] couchbases: A nested block containing configuration options for Couchbase connections.
1442
1674
  *See Configuration Options for more info*
1443
1675
  :param pulumi.Input[int] default_lease_ttl_seconds: Default lease duration for tokens and secrets in seconds
1676
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
1444
1677
  :param pulumi.Input[str] description: Human-friendly description of the mount
1445
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountElasticsearchArgs']]]] elasticsearches: A nested block containing configuration options for Elasticsearch connections.
1678
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountElasticsearchArgs', 'SecretsMountElasticsearchArgsDict']]]] elasticsearches: A nested block containing configuration options for Elasticsearch connections.
1446
1679
  *See Configuration Options for more info*
1447
1680
  :param pulumi.Input[int] engine_count: The total number of database secrets engines configured.
1448
1681
  :param pulumi.Input[bool] external_entropy_access: Boolean flag that can be explicitly set to true to enable the secrets engine to access Vault's external entropy source
1449
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountHanaArgs']]]] hanas: A nested block containing configuration options for SAP HanaDB connections.
1682
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountHanaArgs', 'SecretsMountHanaArgsDict']]]] hanas: A nested block containing configuration options for SAP HanaDB connections.
1450
1683
  *See Configuration Options for more info*
1451
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountInfluxdbArgs']]]] influxdbs: A nested block containing configuration options for InfluxDB connections.
1684
+ :param pulumi.Input[str] identity_token_key: The key to use for signing plugin workload identity tokens
1685
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountInfluxdbArgs', 'SecretsMountInfluxdbArgsDict']]]] influxdbs: A nested block containing configuration options for InfluxDB connections.
1452
1686
  *See Configuration Options for more info*
1687
+ :param pulumi.Input[str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
1453
1688
  :param pulumi.Input[bool] local: Boolean flag that can be explicitly set to true to enforce local mount in HA environment
1454
1689
  :param pulumi.Input[int] max_lease_ttl_seconds: Maximum possible lease duration for tokens and secrets in seconds
1455
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbatlaArgs']]]] mongodbatlas: A nested block containing configuration options for MongoDB Atlas connections.
1690
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbatlaArgs', 'SecretsMountMongodbatlaArgsDict']]]] mongodbatlas: A nested block containing configuration options for MongoDB Atlas connections.
1456
1691
  *See Configuration Options for more info*
1457
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMongodbArgs']]]] mongodbs: A nested block containing configuration options for MongoDB connections.
1692
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMongodbArgs', 'SecretsMountMongodbArgsDict']]]] mongodbs: A nested block containing configuration options for MongoDB connections.
1458
1693
  *See Configuration Options for more info*
1459
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMssqlArgs']]]] mssqls: A nested block containing configuration options for MSSQL connections.
1694
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMssqlArgs', 'SecretsMountMssqlArgsDict']]]] mssqls: A nested block containing configuration options for MSSQL connections.
1460
1695
  *See Configuration Options for more info*
1461
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlAuroraArgs']]]] mysql_auroras: A nested block containing configuration options for Aurora MySQL connections.
1696
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlAuroraArgs', 'SecretsMountMysqlAuroraArgsDict']]]] mysql_auroras: A nested block containing configuration options for Aurora MySQL connections.
1462
1697
  *See Configuration Options for more info*
1463
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlLegacyArgs']]]] mysql_legacies: A nested block containing configuration options for legacy MySQL connections.
1698
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlLegacyArgs', 'SecretsMountMysqlLegacyArgsDict']]]] mysql_legacies: A nested block containing configuration options for legacy MySQL connections.
1464
1699
  *See Configuration Options for more info*
1465
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlRdArgs']]]] mysql_rds: A nested block containing configuration options for RDS MySQL connections.
1700
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlRdArgs', 'SecretsMountMysqlRdArgsDict']]]] mysql_rds: A nested block containing configuration options for RDS MySQL connections.
1466
1701
  *See Configuration Options for more info*
1467
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountMysqlArgs']]]] mysqls: A nested block containing configuration options for MySQL connections.
1702
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountMysqlArgs', 'SecretsMountMysqlArgsDict']]]] mysqls: A nested block containing configuration options for MySQL connections.
1468
1703
  *See Configuration Options for more info*
1469
1704
  :param pulumi.Input[str] namespace: Target namespace. (requires Enterprise)
1470
- :param pulumi.Input[Mapping[str, Any]] options: Specifies mount type specific options that are passed to the backend
1471
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountOracleArgs']]]] oracles: A nested block containing configuration options for Oracle connections.
1705
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] options: Specifies mount type specific options that are passed to the backend
1706
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountOracleArgs', 'SecretsMountOracleArgsDict']]]] oracles: A nested block containing configuration options for Oracle connections.
1472
1707
  *See Configuration Options for more info*
1708
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
1473
1709
  :param pulumi.Input[str] path: Where the secret backend will be mounted
1474
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountPostgresqlArgs']]]] postgresqls: A nested block containing configuration options for PostgreSQL connections.
1710
+ :param pulumi.Input[str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1711
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountPostgresqlArgs', 'SecretsMountPostgresqlArgsDict']]]] postgresqls: A nested block containing configuration options for PostgreSQL connections.
1475
1712
  *See Configuration Options for more info*
1476
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRediArgs']]]] redis: A nested block containing configuration options for Redis connections.
1713
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRediArgs', 'SecretsMountRediArgsDict']]]] redis: A nested block containing configuration options for Redis connections.
1477
1714
  *See Configuration Options for more info*
1478
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedisElasticachArgs']]]] redis_elasticaches: A nested block containing configuration options for Redis ElastiCache connections.
1715
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedisElasticachArgs', 'SecretsMountRedisElasticachArgsDict']]]] redis_elasticaches: A nested block containing configuration options for Redis ElastiCache connections.
1479
1716
  *See Configuration Options for more info*
1480
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountRedshiftArgs']]]] redshifts: A nested block containing configuration options for AWS Redshift connections.
1717
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountRedshiftArgs', 'SecretsMountRedshiftArgsDict']]]] redshifts: A nested block containing configuration options for AWS Redshift connections.
1481
1718
  *See Configuration Options for more info*
1482
1719
  :param pulumi.Input[bool] seal_wrap: Boolean flag that can be explicitly set to true to enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
1483
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecretsMountSnowflakeArgs']]]] snowflakes: A nested block containing configuration options for Snowflake connections.
1720
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretsMountSnowflakeArgs', 'SecretsMountSnowflakeArgsDict']]]] snowflakes: A nested block containing configuration options for Snowflake connections.
1484
1721
  *See Configuration Options for more info*
1485
1722
  """
1486
1723
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -1489,17 +1726,21 @@ class SecretsMount(pulumi.CustomResource):
1489
1726
 
1490
1727
  __props__.__dict__["accessor"] = accessor
1491
1728
  __props__.__dict__["allowed_managed_keys"] = allowed_managed_keys
1729
+ __props__.__dict__["allowed_response_headers"] = allowed_response_headers
1492
1730
  __props__.__dict__["audit_non_hmac_request_keys"] = audit_non_hmac_request_keys
1493
1731
  __props__.__dict__["audit_non_hmac_response_keys"] = audit_non_hmac_response_keys
1494
1732
  __props__.__dict__["cassandras"] = cassandras
1495
1733
  __props__.__dict__["couchbases"] = couchbases
1496
1734
  __props__.__dict__["default_lease_ttl_seconds"] = default_lease_ttl_seconds
1735
+ __props__.__dict__["delegated_auth_accessors"] = delegated_auth_accessors
1497
1736
  __props__.__dict__["description"] = description
1498
1737
  __props__.__dict__["elasticsearches"] = elasticsearches
1499
1738
  __props__.__dict__["engine_count"] = engine_count
1500
1739
  __props__.__dict__["external_entropy_access"] = external_entropy_access
1501
1740
  __props__.__dict__["hanas"] = hanas
1741
+ __props__.__dict__["identity_token_key"] = identity_token_key
1502
1742
  __props__.__dict__["influxdbs"] = influxdbs
1743
+ __props__.__dict__["listing_visibility"] = listing_visibility
1503
1744
  __props__.__dict__["local"] = local
1504
1745
  __props__.__dict__["max_lease_ttl_seconds"] = max_lease_ttl_seconds
1505
1746
  __props__.__dict__["mongodbatlas"] = mongodbatlas
@@ -1512,7 +1753,9 @@ class SecretsMount(pulumi.CustomResource):
1512
1753
  __props__.__dict__["namespace"] = namespace
1513
1754
  __props__.__dict__["options"] = options
1514
1755
  __props__.__dict__["oracles"] = oracles
1756
+ __props__.__dict__["passthrough_request_headers"] = passthrough_request_headers
1515
1757
  __props__.__dict__["path"] = path
1758
+ __props__.__dict__["plugin_version"] = plugin_version
1516
1759
  __props__.__dict__["postgresqls"] = postgresqls
1517
1760
  __props__.__dict__["redis"] = redis
1518
1761
  __props__.__dict__["redis_elasticaches"] = redis_elasticaches
@@ -1539,6 +1782,14 @@ class SecretsMount(pulumi.CustomResource):
1539
1782
  """
1540
1783
  return pulumi.get(self, "allowed_managed_keys")
1541
1784
 
1785
+ @property
1786
+ @pulumi.getter(name="allowedResponseHeaders")
1787
+ def allowed_response_headers(self) -> pulumi.Output[Optional[Sequence[str]]]:
1788
+ """
1789
+ List of headers to allow and pass from the request to the plugin
1790
+ """
1791
+ return pulumi.get(self, "allowed_response_headers")
1792
+
1542
1793
  @property
1543
1794
  @pulumi.getter(name="auditNonHmacRequestKeys")
1544
1795
  def audit_non_hmac_request_keys(self) -> pulumi.Output[Sequence[str]]:
@@ -1581,6 +1832,14 @@ class SecretsMount(pulumi.CustomResource):
1581
1832
  """
1582
1833
  return pulumi.get(self, "default_lease_ttl_seconds")
1583
1834
 
1835
+ @property
1836
+ @pulumi.getter(name="delegatedAuthAccessors")
1837
+ def delegated_auth_accessors(self) -> pulumi.Output[Optional[Sequence[str]]]:
1838
+ """
1839
+ List of headers to allow and pass from the request to the plugin
1840
+ """
1841
+ return pulumi.get(self, "delegated_auth_accessors")
1842
+
1584
1843
  @property
1585
1844
  @pulumi.getter
1586
1845
  def description(self) -> pulumi.Output[Optional[str]]:
@@ -1623,6 +1882,14 @@ class SecretsMount(pulumi.CustomResource):
1623
1882
  """
1624
1883
  return pulumi.get(self, "hanas")
1625
1884
 
1885
+ @property
1886
+ @pulumi.getter(name="identityTokenKey")
1887
+ def identity_token_key(self) -> pulumi.Output[Optional[str]]:
1888
+ """
1889
+ The key to use for signing plugin workload identity tokens
1890
+ """
1891
+ return pulumi.get(self, "identity_token_key")
1892
+
1626
1893
  @property
1627
1894
  @pulumi.getter
1628
1895
  def influxdbs(self) -> pulumi.Output[Optional[Sequence['outputs.SecretsMountInfluxdb']]]:
@@ -1632,6 +1899,14 @@ class SecretsMount(pulumi.CustomResource):
1632
1899
  """
1633
1900
  return pulumi.get(self, "influxdbs")
1634
1901
 
1902
+ @property
1903
+ @pulumi.getter(name="listingVisibility")
1904
+ def listing_visibility(self) -> pulumi.Output[Optional[str]]:
1905
+ """
1906
+ Specifies whether to show this mount in the UI-specific listing endpoint
1907
+ """
1908
+ return pulumi.get(self, "listing_visibility")
1909
+
1635
1910
  @property
1636
1911
  @pulumi.getter
1637
1912
  def local(self) -> pulumi.Output[Optional[bool]]:
@@ -1721,7 +1996,7 @@ class SecretsMount(pulumi.CustomResource):
1721
1996
 
1722
1997
  @property
1723
1998
  @pulumi.getter
1724
- def options(self) -> pulumi.Output[Optional[Mapping[str, Any]]]:
1999
+ def options(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1725
2000
  """
1726
2001
  Specifies mount type specific options that are passed to the backend
1727
2002
  """
@@ -1736,6 +2011,14 @@ class SecretsMount(pulumi.CustomResource):
1736
2011
  """
1737
2012
  return pulumi.get(self, "oracles")
1738
2013
 
2014
+ @property
2015
+ @pulumi.getter(name="passthroughRequestHeaders")
2016
+ def passthrough_request_headers(self) -> pulumi.Output[Optional[Sequence[str]]]:
2017
+ """
2018
+ List of headers to allow and pass from the request to the plugin
2019
+ """
2020
+ return pulumi.get(self, "passthrough_request_headers")
2021
+
1739
2022
  @property
1740
2023
  @pulumi.getter
1741
2024
  def path(self) -> pulumi.Output[str]:
@@ -1744,6 +2027,14 @@ class SecretsMount(pulumi.CustomResource):
1744
2027
  """
1745
2028
  return pulumi.get(self, "path")
1746
2029
 
2030
+ @property
2031
+ @pulumi.getter(name="pluginVersion")
2032
+ def plugin_version(self) -> pulumi.Output[Optional[str]]:
2033
+ """
2034
+ Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
2035
+ """
2036
+ return pulumi.get(self, "plugin_version")
2037
+
1747
2038
  @property
1748
2039
  @pulumi.getter
1749
2040
  def postgresqls(self) -> pulumi.Output[Optional[Sequence['outputs.SecretsMountPostgresql']]]: