pulumi-vault 7.6.0a1764657486__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 (274) hide show
  1. pulumi_vault/__init__.py +1399 -0
  2. pulumi_vault/_inputs.py +2701 -0
  3. pulumi_vault/_utilities.py +331 -0
  4. pulumi_vault/ad/__init__.py +12 -0
  5. pulumi_vault/ad/get_access_credentials.py +177 -0
  6. pulumi_vault/ad/secret_backend.py +1916 -0
  7. pulumi_vault/ad/secret_library.py +546 -0
  8. pulumi_vault/ad/secret_role.py +499 -0
  9. pulumi_vault/alicloud/__init__.py +9 -0
  10. pulumi_vault/alicloud/auth_backend_role.py +866 -0
  11. pulumi_vault/approle/__init__.py +12 -0
  12. pulumi_vault/approle/auth_backend_login.py +571 -0
  13. pulumi_vault/approle/auth_backend_role.py +1082 -0
  14. pulumi_vault/approle/auth_backend_role_secret_id.py +796 -0
  15. pulumi_vault/approle/get_auth_backend_role_id.py +169 -0
  16. pulumi_vault/audit.py +499 -0
  17. pulumi_vault/audit_request_header.py +277 -0
  18. pulumi_vault/auth_backend.py +565 -0
  19. pulumi_vault/aws/__init__.py +22 -0
  20. pulumi_vault/aws/auth_backend_cert.py +420 -0
  21. pulumi_vault/aws/auth_backend_client.py +1259 -0
  22. pulumi_vault/aws/auth_backend_config_identity.py +494 -0
  23. pulumi_vault/aws/auth_backend_identity_whitelist.py +380 -0
  24. pulumi_vault/aws/auth_backend_login.py +1046 -0
  25. pulumi_vault/aws/auth_backend_role.py +1961 -0
  26. pulumi_vault/aws/auth_backend_role_tag.py +638 -0
  27. pulumi_vault/aws/auth_backend_roletag_blacklist.py +366 -0
  28. pulumi_vault/aws/auth_backend_sts_role.py +414 -0
  29. pulumi_vault/aws/get_access_credentials.py +369 -0
  30. pulumi_vault/aws/get_static_access_credentials.py +137 -0
  31. pulumi_vault/aws/secret_backend.py +2018 -0
  32. pulumi_vault/aws/secret_backend_role.py +1188 -0
  33. pulumi_vault/aws/secret_backend_static_role.py +639 -0
  34. pulumi_vault/azure/__init__.py +15 -0
  35. pulumi_vault/azure/_inputs.py +108 -0
  36. pulumi_vault/azure/auth_backend_config.py +1096 -0
  37. pulumi_vault/azure/auth_backend_role.py +1176 -0
  38. pulumi_vault/azure/backend.py +1793 -0
  39. pulumi_vault/azure/backend_role.py +883 -0
  40. pulumi_vault/azure/get_access_credentials.py +400 -0
  41. pulumi_vault/azure/outputs.py +107 -0
  42. pulumi_vault/cert_auth_backend_role.py +1539 -0
  43. pulumi_vault/config/__init__.py +9 -0
  44. pulumi_vault/config/__init__.pyi +164 -0
  45. pulumi_vault/config/_inputs.py +73 -0
  46. pulumi_vault/config/outputs.py +1225 -0
  47. pulumi_vault/config/ui_custom_message.py +530 -0
  48. pulumi_vault/config/vars.py +230 -0
  49. pulumi_vault/consul/__init__.py +10 -0
  50. pulumi_vault/consul/secret_backend.py +1517 -0
  51. pulumi_vault/consul/secret_backend_role.py +847 -0
  52. pulumi_vault/database/__init__.py +14 -0
  53. pulumi_vault/database/_inputs.py +11907 -0
  54. pulumi_vault/database/outputs.py +8496 -0
  55. pulumi_vault/database/secret_backend_connection.py +1676 -0
  56. pulumi_vault/database/secret_backend_role.py +840 -0
  57. pulumi_vault/database/secret_backend_static_role.py +881 -0
  58. pulumi_vault/database/secrets_mount.py +2160 -0
  59. pulumi_vault/egp_policy.py +399 -0
  60. pulumi_vault/gcp/__init__.py +17 -0
  61. pulumi_vault/gcp/_inputs.py +441 -0
  62. pulumi_vault/gcp/auth_backend.py +1486 -0
  63. pulumi_vault/gcp/auth_backend_role.py +1235 -0
  64. pulumi_vault/gcp/get_auth_backend_role.py +514 -0
  65. pulumi_vault/gcp/outputs.py +302 -0
  66. pulumi_vault/gcp/secret_backend.py +1807 -0
  67. pulumi_vault/gcp/secret_impersonated_account.py +484 -0
  68. pulumi_vault/gcp/secret_roleset.py +554 -0
  69. pulumi_vault/gcp/secret_static_account.py +557 -0
  70. pulumi_vault/generic/__init__.py +11 -0
  71. pulumi_vault/generic/endpoint.py +786 -0
  72. pulumi_vault/generic/get_secret.py +306 -0
  73. pulumi_vault/generic/secret.py +486 -0
  74. pulumi_vault/get_auth_backend.py +226 -0
  75. pulumi_vault/get_auth_backends.py +170 -0
  76. pulumi_vault/get_namespace.py +226 -0
  77. pulumi_vault/get_namespaces.py +202 -0
  78. pulumi_vault/get_nomad_access_token.py +210 -0
  79. pulumi_vault/get_policy_document.py +160 -0
  80. pulumi_vault/get_raft_autopilot_state.py +267 -0
  81. pulumi_vault/github/__init__.py +13 -0
  82. pulumi_vault/github/_inputs.py +225 -0
  83. pulumi_vault/github/auth_backend.py +1194 -0
  84. pulumi_vault/github/outputs.py +174 -0
  85. pulumi_vault/github/team.py +380 -0
  86. pulumi_vault/github/user.py +380 -0
  87. pulumi_vault/identity/__init__.py +35 -0
  88. pulumi_vault/identity/entity.py +447 -0
  89. pulumi_vault/identity/entity_alias.py +398 -0
  90. pulumi_vault/identity/entity_policies.py +455 -0
  91. pulumi_vault/identity/get_entity.py +384 -0
  92. pulumi_vault/identity/get_group.py +467 -0
  93. pulumi_vault/identity/get_oidc_client_creds.py +175 -0
  94. pulumi_vault/identity/get_oidc_openid_config.py +334 -0
  95. pulumi_vault/identity/get_oidc_public_keys.py +179 -0
  96. pulumi_vault/identity/group.py +805 -0
  97. pulumi_vault/identity/group_alias.py +386 -0
  98. pulumi_vault/identity/group_member_entity_ids.py +444 -0
  99. pulumi_vault/identity/group_member_group_ids.py +467 -0
  100. pulumi_vault/identity/group_policies.py +471 -0
  101. pulumi_vault/identity/mfa_duo.py +674 -0
  102. pulumi_vault/identity/mfa_login_enforcement.py +566 -0
  103. pulumi_vault/identity/mfa_okta.py +626 -0
  104. pulumi_vault/identity/mfa_pingid.py +616 -0
  105. pulumi_vault/identity/mfa_totp.py +758 -0
  106. pulumi_vault/identity/oidc.py +268 -0
  107. pulumi_vault/identity/oidc_assignment.py +375 -0
  108. pulumi_vault/identity/oidc_client.py +667 -0
  109. pulumi_vault/identity/oidc_key.py +474 -0
  110. pulumi_vault/identity/oidc_key_allowed_client_id.py +298 -0
  111. pulumi_vault/identity/oidc_provider.py +550 -0
  112. pulumi_vault/identity/oidc_role.py +543 -0
  113. pulumi_vault/identity/oidc_scope.py +355 -0
  114. pulumi_vault/identity/outputs.py +137 -0
  115. pulumi_vault/jwt/__init__.py +12 -0
  116. pulumi_vault/jwt/_inputs.py +225 -0
  117. pulumi_vault/jwt/auth_backend.py +1347 -0
  118. pulumi_vault/jwt/auth_backend_role.py +1847 -0
  119. pulumi_vault/jwt/outputs.py +174 -0
  120. pulumi_vault/kmip/__init__.py +11 -0
  121. pulumi_vault/kmip/secret_backend.py +1591 -0
  122. pulumi_vault/kmip/secret_role.py +1194 -0
  123. pulumi_vault/kmip/secret_scope.py +372 -0
  124. pulumi_vault/kubernetes/__init__.py +15 -0
  125. pulumi_vault/kubernetes/auth_backend_config.py +654 -0
  126. pulumi_vault/kubernetes/auth_backend_role.py +1031 -0
  127. pulumi_vault/kubernetes/get_auth_backend_config.py +280 -0
  128. pulumi_vault/kubernetes/get_auth_backend_role.py +470 -0
  129. pulumi_vault/kubernetes/get_service_account_token.py +344 -0
  130. pulumi_vault/kubernetes/secret_backend.py +1341 -0
  131. pulumi_vault/kubernetes/secret_backend_role.py +1140 -0
  132. pulumi_vault/kv/__init__.py +18 -0
  133. pulumi_vault/kv/_inputs.py +124 -0
  134. pulumi_vault/kv/get_secret.py +240 -0
  135. pulumi_vault/kv/get_secret_subkeys_v2.py +275 -0
  136. pulumi_vault/kv/get_secret_v2.py +315 -0
  137. pulumi_vault/kv/get_secrets_list.py +186 -0
  138. pulumi_vault/kv/get_secrets_list_v2.py +243 -0
  139. pulumi_vault/kv/outputs.py +102 -0
  140. pulumi_vault/kv/secret.py +397 -0
  141. pulumi_vault/kv/secret_backend_v2.py +455 -0
  142. pulumi_vault/kv/secret_v2.py +970 -0
  143. pulumi_vault/ldap/__init__.py +19 -0
  144. pulumi_vault/ldap/_inputs.py +225 -0
  145. pulumi_vault/ldap/auth_backend.py +2520 -0
  146. pulumi_vault/ldap/auth_backend_group.py +386 -0
  147. pulumi_vault/ldap/auth_backend_user.py +439 -0
  148. pulumi_vault/ldap/get_dynamic_credentials.py +181 -0
  149. pulumi_vault/ldap/get_static_credentials.py +192 -0
  150. pulumi_vault/ldap/outputs.py +174 -0
  151. pulumi_vault/ldap/secret_backend.py +2207 -0
  152. pulumi_vault/ldap/secret_backend_dynamic_role.py +767 -0
  153. pulumi_vault/ldap/secret_backend_library_set.py +552 -0
  154. pulumi_vault/ldap/secret_backend_static_role.py +541 -0
  155. pulumi_vault/managed/__init__.py +11 -0
  156. pulumi_vault/managed/_inputs.py +944 -0
  157. pulumi_vault/managed/keys.py +398 -0
  158. pulumi_vault/managed/outputs.py +667 -0
  159. pulumi_vault/mfa_duo.py +589 -0
  160. pulumi_vault/mfa_okta.py +623 -0
  161. pulumi_vault/mfa_pingid.py +670 -0
  162. pulumi_vault/mfa_totp.py +620 -0
  163. pulumi_vault/mongodbatlas/__init__.py +10 -0
  164. pulumi_vault/mongodbatlas/secret_backend.py +388 -0
  165. pulumi_vault/mongodbatlas/secret_role.py +726 -0
  166. pulumi_vault/mount.py +1262 -0
  167. pulumi_vault/namespace.py +452 -0
  168. pulumi_vault/nomad_secret_backend.py +1559 -0
  169. pulumi_vault/nomad_secret_role.py +489 -0
  170. pulumi_vault/oci_auth_backend.py +676 -0
  171. pulumi_vault/oci_auth_backend_role.py +852 -0
  172. pulumi_vault/okta/__init__.py +13 -0
  173. pulumi_vault/okta/_inputs.py +320 -0
  174. pulumi_vault/okta/auth_backend.py +1231 -0
  175. pulumi_vault/okta/auth_backend_group.py +369 -0
  176. pulumi_vault/okta/auth_backend_user.py +416 -0
  177. pulumi_vault/okta/outputs.py +244 -0
  178. pulumi_vault/outputs.py +502 -0
  179. pulumi_vault/pkisecret/__init__.py +38 -0
  180. pulumi_vault/pkisecret/_inputs.py +270 -0
  181. pulumi_vault/pkisecret/backend_acme_eab.py +550 -0
  182. pulumi_vault/pkisecret/backend_config_acme.py +690 -0
  183. pulumi_vault/pkisecret/backend_config_auto_tidy.py +1370 -0
  184. pulumi_vault/pkisecret/backend_config_cluster.py +370 -0
  185. pulumi_vault/pkisecret/backend_config_cmpv2.py +693 -0
  186. pulumi_vault/pkisecret/backend_config_est.py +756 -0
  187. pulumi_vault/pkisecret/backend_config_scep.py +738 -0
  188. pulumi_vault/pkisecret/get_backend_cert_metadata.py +277 -0
  189. pulumi_vault/pkisecret/get_backend_config_cmpv2.py +226 -0
  190. pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
  191. pulumi_vault/pkisecret/get_backend_config_scep.py +271 -0
  192. pulumi_vault/pkisecret/get_backend_issuer.py +395 -0
  193. pulumi_vault/pkisecret/get_backend_issuers.py +192 -0
  194. pulumi_vault/pkisecret/get_backend_key.py +211 -0
  195. pulumi_vault/pkisecret/get_backend_keys.py +192 -0
  196. pulumi_vault/pkisecret/outputs.py +270 -0
  197. pulumi_vault/pkisecret/secret_backend_cert.py +1315 -0
  198. pulumi_vault/pkisecret/secret_backend_config_ca.py +386 -0
  199. pulumi_vault/pkisecret/secret_backend_config_issuers.py +392 -0
  200. pulumi_vault/pkisecret/secret_backend_config_urls.py +462 -0
  201. pulumi_vault/pkisecret/secret_backend_crl_config.py +846 -0
  202. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +1629 -0
  203. pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +444 -0
  204. pulumi_vault/pkisecret/secret_backend_issuer.py +1089 -0
  205. pulumi_vault/pkisecret/secret_backend_key.py +613 -0
  206. pulumi_vault/pkisecret/secret_backend_role.py +2694 -0
  207. pulumi_vault/pkisecret/secret_backend_root_cert.py +2134 -0
  208. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +2031 -0
  209. pulumi_vault/pkisecret/secret_backend_sign.py +1194 -0
  210. pulumi_vault/plugin.py +596 -0
  211. pulumi_vault/plugin_pinned_version.py +299 -0
  212. pulumi_vault/policy.py +279 -0
  213. pulumi_vault/provider.py +781 -0
  214. pulumi_vault/pulumi-plugin.json +5 -0
  215. pulumi_vault/py.typed +0 -0
  216. pulumi_vault/quota_lease_count.py +504 -0
  217. pulumi_vault/quota_rate_limit.py +751 -0
  218. pulumi_vault/rabbitmq/__init__.py +12 -0
  219. pulumi_vault/rabbitmq/_inputs.py +235 -0
  220. pulumi_vault/rabbitmq/outputs.py +144 -0
  221. pulumi_vault/rabbitmq/secret_backend.py +1437 -0
  222. pulumi_vault/rabbitmq/secret_backend_role.py +496 -0
  223. pulumi_vault/raft_autopilot.py +609 -0
  224. pulumi_vault/raft_snapshot_agent_config.py +1591 -0
  225. pulumi_vault/rgp_policy.py +349 -0
  226. pulumi_vault/saml/__init__.py +12 -0
  227. pulumi_vault/saml/_inputs.py +225 -0
  228. pulumi_vault/saml/auth_backend.py +811 -0
  229. pulumi_vault/saml/auth_backend_role.py +1068 -0
  230. pulumi_vault/saml/outputs.py +174 -0
  231. pulumi_vault/scep_auth_backend_role.py +908 -0
  232. pulumi_vault/secrets/__init__.py +18 -0
  233. pulumi_vault/secrets/_inputs.py +110 -0
  234. pulumi_vault/secrets/outputs.py +94 -0
  235. pulumi_vault/secrets/sync_association.py +450 -0
  236. pulumi_vault/secrets/sync_aws_destination.py +780 -0
  237. pulumi_vault/secrets/sync_azure_destination.py +736 -0
  238. pulumi_vault/secrets/sync_config.py +303 -0
  239. pulumi_vault/secrets/sync_gcp_destination.py +572 -0
  240. pulumi_vault/secrets/sync_gh_destination.py +688 -0
  241. pulumi_vault/secrets/sync_github_apps.py +376 -0
  242. pulumi_vault/secrets/sync_vercel_destination.py +603 -0
  243. pulumi_vault/ssh/__init__.py +13 -0
  244. pulumi_vault/ssh/_inputs.py +76 -0
  245. pulumi_vault/ssh/get_secret_backend_sign.py +294 -0
  246. pulumi_vault/ssh/outputs.py +51 -0
  247. pulumi_vault/ssh/secret_backend_ca.py +588 -0
  248. pulumi_vault/ssh/secret_backend_role.py +1493 -0
  249. pulumi_vault/terraformcloud/__init__.py +11 -0
  250. pulumi_vault/terraformcloud/secret_backend.py +1321 -0
  251. pulumi_vault/terraformcloud/secret_creds.py +445 -0
  252. pulumi_vault/terraformcloud/secret_role.py +563 -0
  253. pulumi_vault/token.py +1026 -0
  254. pulumi_vault/tokenauth/__init__.py +9 -0
  255. pulumi_vault/tokenauth/auth_backend_role.py +1135 -0
  256. pulumi_vault/transform/__init__.py +14 -0
  257. pulumi_vault/transform/alphabet.py +348 -0
  258. pulumi_vault/transform/get_decode.py +287 -0
  259. pulumi_vault/transform/get_encode.py +291 -0
  260. pulumi_vault/transform/role.py +350 -0
  261. pulumi_vault/transform/template.py +592 -0
  262. pulumi_vault/transform/transformation.py +608 -0
  263. pulumi_vault/transit/__init__.py +15 -0
  264. pulumi_vault/transit/get_cmac.py +256 -0
  265. pulumi_vault/transit/get_decrypt.py +181 -0
  266. pulumi_vault/transit/get_encrypt.py +174 -0
  267. pulumi_vault/transit/get_sign.py +328 -0
  268. pulumi_vault/transit/get_verify.py +373 -0
  269. pulumi_vault/transit/secret_backend_key.py +1202 -0
  270. pulumi_vault/transit/secret_cache_config.py +302 -0
  271. pulumi_vault-7.6.0a1764657486.dist-info/METADATA +92 -0
  272. pulumi_vault-7.6.0a1764657486.dist-info/RECORD +274 -0
  273. pulumi_vault-7.6.0a1764657486.dist-info/WHEEL +5 -0
  274. pulumi_vault-7.6.0a1764657486.dist-info/top_level.txt +1 -0
@@ -0,0 +1,2018 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from .. import _utilities
16
+
17
+ __all__ = ['SecretBackendArgs', 'SecretBackend']
18
+
19
+ @pulumi.input_type
20
+ class SecretBackendArgs:
21
+ def __init__(__self__, *,
22
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
23
+ allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
24
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
25
+ audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
26
+ audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
27
+ default_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
28
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
29
+ description: Optional[pulumi.Input[_builtins.str]] = None,
30
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
31
+ disable_remount: Optional[pulumi.Input[_builtins.bool]] = None,
32
+ external_entropy_access: Optional[pulumi.Input[_builtins.bool]] = None,
33
+ force_no_cache: Optional[pulumi.Input[_builtins.bool]] = None,
34
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
35
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
36
+ identity_token_key: Optional[pulumi.Input[_builtins.str]] = None,
37
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
38
+ listing_visibility: Optional[pulumi.Input[_builtins.str]] = None,
39
+ local: Optional[pulumi.Input[_builtins.bool]] = None,
40
+ max_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
41
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
42
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
43
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
44
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
45
+ path: Optional[pulumi.Input[_builtins.str]] = None,
46
+ plugin_version: Optional[pulumi.Input[_builtins.str]] = None,
47
+ region: Optional[pulumi.Input[_builtins.str]] = None,
48
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
49
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
50
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
51
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
52
+ seal_wrap: Optional[pulumi.Input[_builtins.bool]] = None,
53
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
54
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
55
+ sts_fallback_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
56
+ sts_fallback_regions: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
57
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
58
+ username_template: Optional[pulumi.Input[_builtins.str]] = None):
59
+ """
60
+ The set of arguments for constructing a SecretBackend resource.
61
+ :param pulumi.Input[_builtins.str] access_key: The AWS Access Key ID this backend should use to
62
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
63
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_managed_keys: List of managed key registry entry names that the mount in question is allowed to access
64
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
65
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
66
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
67
+ :param pulumi.Input[_builtins.int] default_lease_ttl_seconds: Default lease duration for secrets in seconds
68
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
69
+ :param pulumi.Input[_builtins.str] description: Human-friendly description of the mount for the backend.
70
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
71
+ :param pulumi.Input[_builtins.bool] disable_remount: If set, opts out of mount migration on path updates.
72
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
73
+ :param pulumi.Input[_builtins.bool] external_entropy_access: Enable the secrets engine to access Vault's external entropy source
74
+ :param pulumi.Input[_builtins.bool] force_no_cache: If set to true, disables caching.
75
+ :param pulumi.Input[_builtins.str] iam_endpoint: Specifies a custom HTTP IAM endpoint to use.
76
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Requires Vault 1.16+.
77
+ :param pulumi.Input[_builtins.str] identity_token_key: The key to use for signing identity tokens.
78
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
79
+ :param pulumi.Input[_builtins.str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
80
+ :param pulumi.Input[_builtins.bool] local: Specifies if the secret backend is local only
81
+ :param pulumi.Input[_builtins.int] max_lease_ttl_seconds: Maximum possible lease duration for secrets in seconds
82
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
83
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
84
+ The value should not contain leading or trailing forward slashes.
85
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
86
+ *Available only for Vault Enterprise*.
87
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] options: Specifies mount type specific options that are passed to the backend
88
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
89
+ :param pulumi.Input[_builtins.str] path: The unique path this backend should be mounted at. Must
90
+ not begin or end with a `/`. Defaults to `aws`.
91
+ :param pulumi.Input[_builtins.str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
92
+ :param pulumi.Input[_builtins.str] region: The AWS region to make API calls against. Defaults to us-east-1.
93
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
94
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
95
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
96
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
97
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
98
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
99
+ a rotation when a scheduled token rotation occurs. The default rotation window is
100
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
101
+ :param pulumi.Input[_builtins.bool] seal_wrap: Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
102
+ :param pulumi.Input[_builtins.str] secret_key: The AWS Secret Access Key to use when generating new credentials.
103
+ :param pulumi.Input[_builtins.str] sts_endpoint: Specifies a custom HTTP STS endpoint to use.
104
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_endpoints: Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
105
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_regions: Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
106
+ :param pulumi.Input[_builtins.str] sts_region: Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
107
+ :param pulumi.Input[_builtins.str] username_template: Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
108
+
109
+ ```
110
+ {{ if (eq .Type "STS") }}
111
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
112
+ {{ else }}
113
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
114
+ {{ end }}
115
+
116
+ ```
117
+ """
118
+ if access_key is not None:
119
+ pulumi.set(__self__, "access_key", access_key)
120
+ if allowed_managed_keys is not None:
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)
124
+ if audit_non_hmac_request_keys is not None:
125
+ pulumi.set(__self__, "audit_non_hmac_request_keys", audit_non_hmac_request_keys)
126
+ if audit_non_hmac_response_keys is not None:
127
+ pulumi.set(__self__, "audit_non_hmac_response_keys", audit_non_hmac_response_keys)
128
+ if default_lease_ttl_seconds is not None:
129
+ pulumi.set(__self__, "default_lease_ttl_seconds", default_lease_ttl_seconds)
130
+ if delegated_auth_accessors is not None:
131
+ pulumi.set(__self__, "delegated_auth_accessors", delegated_auth_accessors)
132
+ if description is not None:
133
+ pulumi.set(__self__, "description", description)
134
+ if disable_automated_rotation is not None:
135
+ pulumi.set(__self__, "disable_automated_rotation", disable_automated_rotation)
136
+ if disable_remount is not None:
137
+ pulumi.set(__self__, "disable_remount", disable_remount)
138
+ if external_entropy_access is not None:
139
+ pulumi.set(__self__, "external_entropy_access", external_entropy_access)
140
+ if force_no_cache is not None:
141
+ pulumi.set(__self__, "force_no_cache", force_no_cache)
142
+ if iam_endpoint is not None:
143
+ pulumi.set(__self__, "iam_endpoint", iam_endpoint)
144
+ if identity_token_audience is not None:
145
+ pulumi.set(__self__, "identity_token_audience", identity_token_audience)
146
+ if identity_token_key is not None:
147
+ pulumi.set(__self__, "identity_token_key", identity_token_key)
148
+ if identity_token_ttl is not None:
149
+ pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
150
+ if listing_visibility is not None:
151
+ pulumi.set(__self__, "listing_visibility", listing_visibility)
152
+ if local is not None:
153
+ pulumi.set(__self__, "local", local)
154
+ if max_lease_ttl_seconds is not None:
155
+ pulumi.set(__self__, "max_lease_ttl_seconds", max_lease_ttl_seconds)
156
+ if max_retries is not None:
157
+ pulumi.set(__self__, "max_retries", max_retries)
158
+ if namespace is not None:
159
+ pulumi.set(__self__, "namespace", namespace)
160
+ if options is not None:
161
+ pulumi.set(__self__, "options", options)
162
+ if passthrough_request_headers is not None:
163
+ pulumi.set(__self__, "passthrough_request_headers", passthrough_request_headers)
164
+ if path is not None:
165
+ pulumi.set(__self__, "path", path)
166
+ if plugin_version is not None:
167
+ pulumi.set(__self__, "plugin_version", plugin_version)
168
+ if region is not None:
169
+ pulumi.set(__self__, "region", region)
170
+ if role_arn is not None:
171
+ pulumi.set(__self__, "role_arn", role_arn)
172
+ if rotation_period is not None:
173
+ pulumi.set(__self__, "rotation_period", rotation_period)
174
+ if rotation_schedule is not None:
175
+ pulumi.set(__self__, "rotation_schedule", rotation_schedule)
176
+ if rotation_window is not None:
177
+ pulumi.set(__self__, "rotation_window", rotation_window)
178
+ if seal_wrap is not None:
179
+ pulumi.set(__self__, "seal_wrap", seal_wrap)
180
+ if secret_key is not None:
181
+ pulumi.set(__self__, "secret_key", secret_key)
182
+ if sts_endpoint is not None:
183
+ pulumi.set(__self__, "sts_endpoint", sts_endpoint)
184
+ if sts_fallback_endpoints is not None:
185
+ pulumi.set(__self__, "sts_fallback_endpoints", sts_fallback_endpoints)
186
+ if sts_fallback_regions is not None:
187
+ pulumi.set(__self__, "sts_fallback_regions", sts_fallback_regions)
188
+ if sts_region is not None:
189
+ pulumi.set(__self__, "sts_region", sts_region)
190
+ if username_template is not None:
191
+ pulumi.set(__self__, "username_template", username_template)
192
+
193
+ @_builtins.property
194
+ @pulumi.getter(name="accessKey")
195
+ def access_key(self) -> Optional[pulumi.Input[_builtins.str]]:
196
+ """
197
+ The AWS Access Key ID this backend should use to
198
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
199
+ """
200
+ return pulumi.get(self, "access_key")
201
+
202
+ @access_key.setter
203
+ def access_key(self, value: Optional[pulumi.Input[_builtins.str]]):
204
+ pulumi.set(self, "access_key", value)
205
+
206
+ @_builtins.property
207
+ @pulumi.getter(name="allowedManagedKeys")
208
+ def allowed_managed_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
209
+ """
210
+ List of managed key registry entry names that the mount in question is allowed to access
211
+ """
212
+ return pulumi.get(self, "allowed_managed_keys")
213
+
214
+ @allowed_managed_keys.setter
215
+ def allowed_managed_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
216
+ pulumi.set(self, "allowed_managed_keys", value)
217
+
218
+ @_builtins.property
219
+ @pulumi.getter(name="allowedResponseHeaders")
220
+ def allowed_response_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
221
+ """
222
+ List of headers to allow and pass from the request to the plugin
223
+ """
224
+ return pulumi.get(self, "allowed_response_headers")
225
+
226
+ @allowed_response_headers.setter
227
+ def allowed_response_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
228
+ pulumi.set(self, "allowed_response_headers", value)
229
+
230
+ @_builtins.property
231
+ @pulumi.getter(name="auditNonHmacRequestKeys")
232
+ def audit_non_hmac_request_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
233
+ """
234
+ Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
235
+ """
236
+ return pulumi.get(self, "audit_non_hmac_request_keys")
237
+
238
+ @audit_non_hmac_request_keys.setter
239
+ def audit_non_hmac_request_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
240
+ pulumi.set(self, "audit_non_hmac_request_keys", value)
241
+
242
+ @_builtins.property
243
+ @pulumi.getter(name="auditNonHmacResponseKeys")
244
+ def audit_non_hmac_response_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
245
+ """
246
+ Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
247
+ """
248
+ return pulumi.get(self, "audit_non_hmac_response_keys")
249
+
250
+ @audit_non_hmac_response_keys.setter
251
+ def audit_non_hmac_response_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
252
+ pulumi.set(self, "audit_non_hmac_response_keys", value)
253
+
254
+ @_builtins.property
255
+ @pulumi.getter(name="defaultLeaseTtlSeconds")
256
+ def default_lease_ttl_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
257
+ """
258
+ Default lease duration for secrets in seconds
259
+ """
260
+ return pulumi.get(self, "default_lease_ttl_seconds")
261
+
262
+ @default_lease_ttl_seconds.setter
263
+ def default_lease_ttl_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
264
+ pulumi.set(self, "default_lease_ttl_seconds", value)
265
+
266
+ @_builtins.property
267
+ @pulumi.getter(name="delegatedAuthAccessors")
268
+ def delegated_auth_accessors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
269
+ """
270
+ List of headers to allow and pass from the request to the plugin
271
+ """
272
+ return pulumi.get(self, "delegated_auth_accessors")
273
+
274
+ @delegated_auth_accessors.setter
275
+ def delegated_auth_accessors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
276
+ pulumi.set(self, "delegated_auth_accessors", value)
277
+
278
+ @_builtins.property
279
+ @pulumi.getter
280
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
281
+ """
282
+ Human-friendly description of the mount for the backend.
283
+ """
284
+ return pulumi.get(self, "description")
285
+
286
+ @description.setter
287
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
288
+ pulumi.set(self, "description", value)
289
+
290
+ @_builtins.property
291
+ @pulumi.getter(name="disableAutomatedRotation")
292
+ def disable_automated_rotation(self) -> Optional[pulumi.Input[_builtins.bool]]:
293
+ """
294
+ Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
295
+ """
296
+ return pulumi.get(self, "disable_automated_rotation")
297
+
298
+ @disable_automated_rotation.setter
299
+ def disable_automated_rotation(self, value: Optional[pulumi.Input[_builtins.bool]]):
300
+ pulumi.set(self, "disable_automated_rotation", value)
301
+
302
+ @_builtins.property
303
+ @pulumi.getter(name="disableRemount")
304
+ def disable_remount(self) -> Optional[pulumi.Input[_builtins.bool]]:
305
+ """
306
+ If set, opts out of mount migration on path updates.
307
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
308
+ """
309
+ return pulumi.get(self, "disable_remount")
310
+
311
+ @disable_remount.setter
312
+ def disable_remount(self, value: Optional[pulumi.Input[_builtins.bool]]):
313
+ pulumi.set(self, "disable_remount", value)
314
+
315
+ @_builtins.property
316
+ @pulumi.getter(name="externalEntropyAccess")
317
+ def external_entropy_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
318
+ """
319
+ Enable the secrets engine to access Vault's external entropy source
320
+ """
321
+ return pulumi.get(self, "external_entropy_access")
322
+
323
+ @external_entropy_access.setter
324
+ def external_entropy_access(self, value: Optional[pulumi.Input[_builtins.bool]]):
325
+ pulumi.set(self, "external_entropy_access", value)
326
+
327
+ @_builtins.property
328
+ @pulumi.getter(name="forceNoCache")
329
+ def force_no_cache(self) -> Optional[pulumi.Input[_builtins.bool]]:
330
+ """
331
+ If set to true, disables caching.
332
+ """
333
+ return pulumi.get(self, "force_no_cache")
334
+
335
+ @force_no_cache.setter
336
+ def force_no_cache(self, value: Optional[pulumi.Input[_builtins.bool]]):
337
+ pulumi.set(self, "force_no_cache", value)
338
+
339
+ @_builtins.property
340
+ @pulumi.getter(name="iamEndpoint")
341
+ def iam_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
342
+ """
343
+ Specifies a custom HTTP IAM endpoint to use.
344
+ """
345
+ return pulumi.get(self, "iam_endpoint")
346
+
347
+ @iam_endpoint.setter
348
+ def iam_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
349
+ pulumi.set(self, "iam_endpoint", value)
350
+
351
+ @_builtins.property
352
+ @pulumi.getter(name="identityTokenAudience")
353
+ def identity_token_audience(self) -> Optional[pulumi.Input[_builtins.str]]:
354
+ """
355
+ The audience claim value. Requires Vault 1.16+.
356
+ """
357
+ return pulumi.get(self, "identity_token_audience")
358
+
359
+ @identity_token_audience.setter
360
+ def identity_token_audience(self, value: Optional[pulumi.Input[_builtins.str]]):
361
+ pulumi.set(self, "identity_token_audience", value)
362
+
363
+ @_builtins.property
364
+ @pulumi.getter(name="identityTokenKey")
365
+ def identity_token_key(self) -> Optional[pulumi.Input[_builtins.str]]:
366
+ """
367
+ The key to use for signing identity tokens.
368
+ """
369
+ return pulumi.get(self, "identity_token_key")
370
+
371
+ @identity_token_key.setter
372
+ def identity_token_key(self, value: Optional[pulumi.Input[_builtins.str]]):
373
+ pulumi.set(self, "identity_token_key", value)
374
+
375
+ @_builtins.property
376
+ @pulumi.getter(name="identityTokenTtl")
377
+ def identity_token_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
378
+ """
379
+ The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
380
+ """
381
+ return pulumi.get(self, "identity_token_ttl")
382
+
383
+ @identity_token_ttl.setter
384
+ def identity_token_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
385
+ pulumi.set(self, "identity_token_ttl", value)
386
+
387
+ @_builtins.property
388
+ @pulumi.getter(name="listingVisibility")
389
+ def listing_visibility(self) -> Optional[pulumi.Input[_builtins.str]]:
390
+ """
391
+ Specifies whether to show this mount in the UI-specific listing endpoint
392
+ """
393
+ return pulumi.get(self, "listing_visibility")
394
+
395
+ @listing_visibility.setter
396
+ def listing_visibility(self, value: Optional[pulumi.Input[_builtins.str]]):
397
+ pulumi.set(self, "listing_visibility", value)
398
+
399
+ @_builtins.property
400
+ @pulumi.getter
401
+ def local(self) -> Optional[pulumi.Input[_builtins.bool]]:
402
+ """
403
+ Specifies if the secret backend is local only
404
+ """
405
+ return pulumi.get(self, "local")
406
+
407
+ @local.setter
408
+ def local(self, value: Optional[pulumi.Input[_builtins.bool]]):
409
+ pulumi.set(self, "local", value)
410
+
411
+ @_builtins.property
412
+ @pulumi.getter(name="maxLeaseTtlSeconds")
413
+ def max_lease_ttl_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
414
+ """
415
+ Maximum possible lease duration for secrets in seconds
416
+ """
417
+ return pulumi.get(self, "max_lease_ttl_seconds")
418
+
419
+ @max_lease_ttl_seconds.setter
420
+ def max_lease_ttl_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
421
+ pulumi.set(self, "max_lease_ttl_seconds", value)
422
+
423
+ @_builtins.property
424
+ @pulumi.getter(name="maxRetries")
425
+ def max_retries(self) -> Optional[pulumi.Input[_builtins.int]]:
426
+ """
427
+ Number of max retries the client should use for recoverable errors.
428
+ """
429
+ return pulumi.get(self, "max_retries")
430
+
431
+ @max_retries.setter
432
+ def max_retries(self, value: Optional[pulumi.Input[_builtins.int]]):
433
+ pulumi.set(self, "max_retries", value)
434
+
435
+ @_builtins.property
436
+ @pulumi.getter
437
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
438
+ """
439
+ The namespace to provision the resource in.
440
+ The value should not contain leading or trailing forward slashes.
441
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
442
+ *Available only for Vault Enterprise*.
443
+ """
444
+ return pulumi.get(self, "namespace")
445
+
446
+ @namespace.setter
447
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
448
+ pulumi.set(self, "namespace", value)
449
+
450
+ @_builtins.property
451
+ @pulumi.getter
452
+ def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
453
+ """
454
+ Specifies mount type specific options that are passed to the backend
455
+ """
456
+ return pulumi.get(self, "options")
457
+
458
+ @options.setter
459
+ def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
460
+ pulumi.set(self, "options", value)
461
+
462
+ @_builtins.property
463
+ @pulumi.getter(name="passthroughRequestHeaders")
464
+ def passthrough_request_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
465
+ """
466
+ List of headers to allow and pass from the request to the plugin
467
+ """
468
+ return pulumi.get(self, "passthrough_request_headers")
469
+
470
+ @passthrough_request_headers.setter
471
+ def passthrough_request_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
472
+ pulumi.set(self, "passthrough_request_headers", value)
473
+
474
+ @_builtins.property
475
+ @pulumi.getter
476
+ def path(self) -> Optional[pulumi.Input[_builtins.str]]:
477
+ """
478
+ The unique path this backend should be mounted at. Must
479
+ not begin or end with a `/`. Defaults to `aws`.
480
+ """
481
+ return pulumi.get(self, "path")
482
+
483
+ @path.setter
484
+ def path(self, value: Optional[pulumi.Input[_builtins.str]]):
485
+ pulumi.set(self, "path", value)
486
+
487
+ @_builtins.property
488
+ @pulumi.getter(name="pluginVersion")
489
+ def plugin_version(self) -> Optional[pulumi.Input[_builtins.str]]:
490
+ """
491
+ Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
492
+ """
493
+ return pulumi.get(self, "plugin_version")
494
+
495
+ @plugin_version.setter
496
+ def plugin_version(self, value: Optional[pulumi.Input[_builtins.str]]):
497
+ pulumi.set(self, "plugin_version", value)
498
+
499
+ @_builtins.property
500
+ @pulumi.getter
501
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
502
+ """
503
+ The AWS region to make API calls against. Defaults to us-east-1.
504
+ """
505
+ return pulumi.get(self, "region")
506
+
507
+ @region.setter
508
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
509
+ pulumi.set(self, "region", value)
510
+
511
+ @_builtins.property
512
+ @pulumi.getter(name="roleArn")
513
+ def role_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
514
+ """
515
+ Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
516
+ """
517
+ return pulumi.get(self, "role_arn")
518
+
519
+ @role_arn.setter
520
+ def role_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
521
+ pulumi.set(self, "role_arn", value)
522
+
523
+ @_builtins.property
524
+ @pulumi.getter(name="rotationPeriod")
525
+ def rotation_period(self) -> Optional[pulumi.Input[_builtins.int]]:
526
+ """
527
+ The amount of time in seconds Vault should wait before rotating the root credential.
528
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
529
+ """
530
+ return pulumi.get(self, "rotation_period")
531
+
532
+ @rotation_period.setter
533
+ def rotation_period(self, value: Optional[pulumi.Input[_builtins.int]]):
534
+ pulumi.set(self, "rotation_period", value)
535
+
536
+ @_builtins.property
537
+ @pulumi.getter(name="rotationSchedule")
538
+ def rotation_schedule(self) -> Optional[pulumi.Input[_builtins.str]]:
539
+ """
540
+ The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
541
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
542
+ """
543
+ return pulumi.get(self, "rotation_schedule")
544
+
545
+ @rotation_schedule.setter
546
+ def rotation_schedule(self, value: Optional[pulumi.Input[_builtins.str]]):
547
+ pulumi.set(self, "rotation_schedule", value)
548
+
549
+ @_builtins.property
550
+ @pulumi.getter(name="rotationWindow")
551
+ def rotation_window(self) -> Optional[pulumi.Input[_builtins.int]]:
552
+ """
553
+ The maximum amount of time in seconds allowed to complete
554
+ a rotation when a scheduled token rotation occurs. The default rotation window is
555
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
556
+ """
557
+ return pulumi.get(self, "rotation_window")
558
+
559
+ @rotation_window.setter
560
+ def rotation_window(self, value: Optional[pulumi.Input[_builtins.int]]):
561
+ pulumi.set(self, "rotation_window", value)
562
+
563
+ @_builtins.property
564
+ @pulumi.getter(name="sealWrap")
565
+ def seal_wrap(self) -> Optional[pulumi.Input[_builtins.bool]]:
566
+ """
567
+ Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
568
+ """
569
+ return pulumi.get(self, "seal_wrap")
570
+
571
+ @seal_wrap.setter
572
+ def seal_wrap(self, value: Optional[pulumi.Input[_builtins.bool]]):
573
+ pulumi.set(self, "seal_wrap", value)
574
+
575
+ @_builtins.property
576
+ @pulumi.getter(name="secretKey")
577
+ def secret_key(self) -> Optional[pulumi.Input[_builtins.str]]:
578
+ """
579
+ The AWS Secret Access Key to use when generating new credentials.
580
+ """
581
+ return pulumi.get(self, "secret_key")
582
+
583
+ @secret_key.setter
584
+ def secret_key(self, value: Optional[pulumi.Input[_builtins.str]]):
585
+ pulumi.set(self, "secret_key", value)
586
+
587
+ @_builtins.property
588
+ @pulumi.getter(name="stsEndpoint")
589
+ def sts_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
590
+ """
591
+ Specifies a custom HTTP STS endpoint to use.
592
+ """
593
+ return pulumi.get(self, "sts_endpoint")
594
+
595
+ @sts_endpoint.setter
596
+ def sts_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
597
+ pulumi.set(self, "sts_endpoint", value)
598
+
599
+ @_builtins.property
600
+ @pulumi.getter(name="stsFallbackEndpoints")
601
+ def sts_fallback_endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
602
+ """
603
+ Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
604
+ """
605
+ return pulumi.get(self, "sts_fallback_endpoints")
606
+
607
+ @sts_fallback_endpoints.setter
608
+ def sts_fallback_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
609
+ pulumi.set(self, "sts_fallback_endpoints", value)
610
+
611
+ @_builtins.property
612
+ @pulumi.getter(name="stsFallbackRegions")
613
+ def sts_fallback_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
614
+ """
615
+ Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
616
+ """
617
+ return pulumi.get(self, "sts_fallback_regions")
618
+
619
+ @sts_fallback_regions.setter
620
+ def sts_fallback_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
621
+ pulumi.set(self, "sts_fallback_regions", value)
622
+
623
+ @_builtins.property
624
+ @pulumi.getter(name="stsRegion")
625
+ def sts_region(self) -> Optional[pulumi.Input[_builtins.str]]:
626
+ """
627
+ Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
628
+ """
629
+ return pulumi.get(self, "sts_region")
630
+
631
+ @sts_region.setter
632
+ def sts_region(self, value: Optional[pulumi.Input[_builtins.str]]):
633
+ pulumi.set(self, "sts_region", value)
634
+
635
+ @_builtins.property
636
+ @pulumi.getter(name="usernameTemplate")
637
+ def username_template(self) -> Optional[pulumi.Input[_builtins.str]]:
638
+ """
639
+ Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
640
+
641
+ ```
642
+ {{ if (eq .Type "STS") }}
643
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
644
+ {{ else }}
645
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
646
+ {{ end }}
647
+
648
+ ```
649
+ """
650
+ return pulumi.get(self, "username_template")
651
+
652
+ @username_template.setter
653
+ def username_template(self, value: Optional[pulumi.Input[_builtins.str]]):
654
+ pulumi.set(self, "username_template", value)
655
+
656
+
657
+ @pulumi.input_type
658
+ class _SecretBackendState:
659
+ def __init__(__self__, *,
660
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
661
+ accessor: Optional[pulumi.Input[_builtins.str]] = None,
662
+ allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
663
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
664
+ audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
665
+ audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
666
+ default_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
667
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
668
+ description: Optional[pulumi.Input[_builtins.str]] = None,
669
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
670
+ disable_remount: Optional[pulumi.Input[_builtins.bool]] = None,
671
+ external_entropy_access: Optional[pulumi.Input[_builtins.bool]] = None,
672
+ force_no_cache: Optional[pulumi.Input[_builtins.bool]] = None,
673
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
674
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
675
+ identity_token_key: Optional[pulumi.Input[_builtins.str]] = None,
676
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
677
+ listing_visibility: Optional[pulumi.Input[_builtins.str]] = None,
678
+ local: Optional[pulumi.Input[_builtins.bool]] = None,
679
+ max_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
680
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
681
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
682
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
683
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
684
+ path: Optional[pulumi.Input[_builtins.str]] = None,
685
+ plugin_version: Optional[pulumi.Input[_builtins.str]] = None,
686
+ region: Optional[pulumi.Input[_builtins.str]] = None,
687
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
688
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
689
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
690
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
691
+ seal_wrap: Optional[pulumi.Input[_builtins.bool]] = None,
692
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
693
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
694
+ sts_fallback_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
695
+ sts_fallback_regions: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
696
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
697
+ username_template: Optional[pulumi.Input[_builtins.str]] = None):
698
+ """
699
+ Input properties used for looking up and filtering SecretBackend resources.
700
+ :param pulumi.Input[_builtins.str] access_key: The AWS Access Key ID this backend should use to
701
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
702
+ :param pulumi.Input[_builtins.str] accessor: Accessor of the mount
703
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_managed_keys: List of managed key registry entry names that the mount in question is allowed to access
704
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
705
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
706
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
707
+ :param pulumi.Input[_builtins.int] default_lease_ttl_seconds: Default lease duration for secrets in seconds
708
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
709
+ :param pulumi.Input[_builtins.str] description: Human-friendly description of the mount for the backend.
710
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
711
+ :param pulumi.Input[_builtins.bool] disable_remount: If set, opts out of mount migration on path updates.
712
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
713
+ :param pulumi.Input[_builtins.bool] external_entropy_access: Enable the secrets engine to access Vault's external entropy source
714
+ :param pulumi.Input[_builtins.bool] force_no_cache: If set to true, disables caching.
715
+ :param pulumi.Input[_builtins.str] iam_endpoint: Specifies a custom HTTP IAM endpoint to use.
716
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Requires Vault 1.16+.
717
+ :param pulumi.Input[_builtins.str] identity_token_key: The key to use for signing identity tokens.
718
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
719
+ :param pulumi.Input[_builtins.str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
720
+ :param pulumi.Input[_builtins.bool] local: Specifies if the secret backend is local only
721
+ :param pulumi.Input[_builtins.int] max_lease_ttl_seconds: Maximum possible lease duration for secrets in seconds
722
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
723
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
724
+ The value should not contain leading or trailing forward slashes.
725
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
726
+ *Available only for Vault Enterprise*.
727
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] options: Specifies mount type specific options that are passed to the backend
728
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
729
+ :param pulumi.Input[_builtins.str] path: The unique path this backend should be mounted at. Must
730
+ not begin or end with a `/`. Defaults to `aws`.
731
+ :param pulumi.Input[_builtins.str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
732
+ :param pulumi.Input[_builtins.str] region: The AWS region to make API calls against. Defaults to us-east-1.
733
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
734
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
735
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
736
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
737
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
738
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
739
+ a rotation when a scheduled token rotation occurs. The default rotation window is
740
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
741
+ :param pulumi.Input[_builtins.bool] seal_wrap: Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
742
+ :param pulumi.Input[_builtins.str] secret_key: The AWS Secret Access Key to use when generating new credentials.
743
+ :param pulumi.Input[_builtins.str] sts_endpoint: Specifies a custom HTTP STS endpoint to use.
744
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_endpoints: Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
745
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_regions: Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
746
+ :param pulumi.Input[_builtins.str] sts_region: Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
747
+ :param pulumi.Input[_builtins.str] username_template: Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
748
+
749
+ ```
750
+ {{ if (eq .Type "STS") }}
751
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
752
+ {{ else }}
753
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
754
+ {{ end }}
755
+
756
+ ```
757
+ """
758
+ if access_key is not None:
759
+ pulumi.set(__self__, "access_key", access_key)
760
+ if accessor is not None:
761
+ pulumi.set(__self__, "accessor", accessor)
762
+ if allowed_managed_keys is not None:
763
+ pulumi.set(__self__, "allowed_managed_keys", allowed_managed_keys)
764
+ if allowed_response_headers is not None:
765
+ pulumi.set(__self__, "allowed_response_headers", allowed_response_headers)
766
+ if audit_non_hmac_request_keys is not None:
767
+ pulumi.set(__self__, "audit_non_hmac_request_keys", audit_non_hmac_request_keys)
768
+ if audit_non_hmac_response_keys is not None:
769
+ pulumi.set(__self__, "audit_non_hmac_response_keys", audit_non_hmac_response_keys)
770
+ if default_lease_ttl_seconds is not None:
771
+ pulumi.set(__self__, "default_lease_ttl_seconds", default_lease_ttl_seconds)
772
+ if delegated_auth_accessors is not None:
773
+ pulumi.set(__self__, "delegated_auth_accessors", delegated_auth_accessors)
774
+ if description is not None:
775
+ pulumi.set(__self__, "description", description)
776
+ if disable_automated_rotation is not None:
777
+ pulumi.set(__self__, "disable_automated_rotation", disable_automated_rotation)
778
+ if disable_remount is not None:
779
+ pulumi.set(__self__, "disable_remount", disable_remount)
780
+ if external_entropy_access is not None:
781
+ pulumi.set(__self__, "external_entropy_access", external_entropy_access)
782
+ if force_no_cache is not None:
783
+ pulumi.set(__self__, "force_no_cache", force_no_cache)
784
+ if iam_endpoint is not None:
785
+ pulumi.set(__self__, "iam_endpoint", iam_endpoint)
786
+ if identity_token_audience is not None:
787
+ pulumi.set(__self__, "identity_token_audience", identity_token_audience)
788
+ if identity_token_key is not None:
789
+ pulumi.set(__self__, "identity_token_key", identity_token_key)
790
+ if identity_token_ttl is not None:
791
+ pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
792
+ if listing_visibility is not None:
793
+ pulumi.set(__self__, "listing_visibility", listing_visibility)
794
+ if local is not None:
795
+ pulumi.set(__self__, "local", local)
796
+ if max_lease_ttl_seconds is not None:
797
+ pulumi.set(__self__, "max_lease_ttl_seconds", max_lease_ttl_seconds)
798
+ if max_retries is not None:
799
+ pulumi.set(__self__, "max_retries", max_retries)
800
+ if namespace is not None:
801
+ pulumi.set(__self__, "namespace", namespace)
802
+ if options is not None:
803
+ pulumi.set(__self__, "options", options)
804
+ if passthrough_request_headers is not None:
805
+ pulumi.set(__self__, "passthrough_request_headers", passthrough_request_headers)
806
+ if path is not None:
807
+ pulumi.set(__self__, "path", path)
808
+ if plugin_version is not None:
809
+ pulumi.set(__self__, "plugin_version", plugin_version)
810
+ if region is not None:
811
+ pulumi.set(__self__, "region", region)
812
+ if role_arn is not None:
813
+ pulumi.set(__self__, "role_arn", role_arn)
814
+ if rotation_period is not None:
815
+ pulumi.set(__self__, "rotation_period", rotation_period)
816
+ if rotation_schedule is not None:
817
+ pulumi.set(__self__, "rotation_schedule", rotation_schedule)
818
+ if rotation_window is not None:
819
+ pulumi.set(__self__, "rotation_window", rotation_window)
820
+ if seal_wrap is not None:
821
+ pulumi.set(__self__, "seal_wrap", seal_wrap)
822
+ if secret_key is not None:
823
+ pulumi.set(__self__, "secret_key", secret_key)
824
+ if sts_endpoint is not None:
825
+ pulumi.set(__self__, "sts_endpoint", sts_endpoint)
826
+ if sts_fallback_endpoints is not None:
827
+ pulumi.set(__self__, "sts_fallback_endpoints", sts_fallback_endpoints)
828
+ if sts_fallback_regions is not None:
829
+ pulumi.set(__self__, "sts_fallback_regions", sts_fallback_regions)
830
+ if sts_region is not None:
831
+ pulumi.set(__self__, "sts_region", sts_region)
832
+ if username_template is not None:
833
+ pulumi.set(__self__, "username_template", username_template)
834
+
835
+ @_builtins.property
836
+ @pulumi.getter(name="accessKey")
837
+ def access_key(self) -> Optional[pulumi.Input[_builtins.str]]:
838
+ """
839
+ The AWS Access Key ID this backend should use to
840
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
841
+ """
842
+ return pulumi.get(self, "access_key")
843
+
844
+ @access_key.setter
845
+ def access_key(self, value: Optional[pulumi.Input[_builtins.str]]):
846
+ pulumi.set(self, "access_key", value)
847
+
848
+ @_builtins.property
849
+ @pulumi.getter
850
+ def accessor(self) -> Optional[pulumi.Input[_builtins.str]]:
851
+ """
852
+ Accessor of the mount
853
+ """
854
+ return pulumi.get(self, "accessor")
855
+
856
+ @accessor.setter
857
+ def accessor(self, value: Optional[pulumi.Input[_builtins.str]]):
858
+ pulumi.set(self, "accessor", value)
859
+
860
+ @_builtins.property
861
+ @pulumi.getter(name="allowedManagedKeys")
862
+ def allowed_managed_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
863
+ """
864
+ List of managed key registry entry names that the mount in question is allowed to access
865
+ """
866
+ return pulumi.get(self, "allowed_managed_keys")
867
+
868
+ @allowed_managed_keys.setter
869
+ def allowed_managed_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
870
+ pulumi.set(self, "allowed_managed_keys", value)
871
+
872
+ @_builtins.property
873
+ @pulumi.getter(name="allowedResponseHeaders")
874
+ def allowed_response_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
875
+ """
876
+ List of headers to allow and pass from the request to the plugin
877
+ """
878
+ return pulumi.get(self, "allowed_response_headers")
879
+
880
+ @allowed_response_headers.setter
881
+ def allowed_response_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
882
+ pulumi.set(self, "allowed_response_headers", value)
883
+
884
+ @_builtins.property
885
+ @pulumi.getter(name="auditNonHmacRequestKeys")
886
+ def audit_non_hmac_request_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
887
+ """
888
+ Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
889
+ """
890
+ return pulumi.get(self, "audit_non_hmac_request_keys")
891
+
892
+ @audit_non_hmac_request_keys.setter
893
+ def audit_non_hmac_request_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
894
+ pulumi.set(self, "audit_non_hmac_request_keys", value)
895
+
896
+ @_builtins.property
897
+ @pulumi.getter(name="auditNonHmacResponseKeys")
898
+ def audit_non_hmac_response_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
899
+ """
900
+ Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
901
+ """
902
+ return pulumi.get(self, "audit_non_hmac_response_keys")
903
+
904
+ @audit_non_hmac_response_keys.setter
905
+ def audit_non_hmac_response_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
906
+ pulumi.set(self, "audit_non_hmac_response_keys", value)
907
+
908
+ @_builtins.property
909
+ @pulumi.getter(name="defaultLeaseTtlSeconds")
910
+ def default_lease_ttl_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
911
+ """
912
+ Default lease duration for secrets in seconds
913
+ """
914
+ return pulumi.get(self, "default_lease_ttl_seconds")
915
+
916
+ @default_lease_ttl_seconds.setter
917
+ def default_lease_ttl_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
918
+ pulumi.set(self, "default_lease_ttl_seconds", value)
919
+
920
+ @_builtins.property
921
+ @pulumi.getter(name="delegatedAuthAccessors")
922
+ def delegated_auth_accessors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
923
+ """
924
+ List of headers to allow and pass from the request to the plugin
925
+ """
926
+ return pulumi.get(self, "delegated_auth_accessors")
927
+
928
+ @delegated_auth_accessors.setter
929
+ def delegated_auth_accessors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
930
+ pulumi.set(self, "delegated_auth_accessors", value)
931
+
932
+ @_builtins.property
933
+ @pulumi.getter
934
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
935
+ """
936
+ Human-friendly description of the mount for the backend.
937
+ """
938
+ return pulumi.get(self, "description")
939
+
940
+ @description.setter
941
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
942
+ pulumi.set(self, "description", value)
943
+
944
+ @_builtins.property
945
+ @pulumi.getter(name="disableAutomatedRotation")
946
+ def disable_automated_rotation(self) -> Optional[pulumi.Input[_builtins.bool]]:
947
+ """
948
+ Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
949
+ """
950
+ return pulumi.get(self, "disable_automated_rotation")
951
+
952
+ @disable_automated_rotation.setter
953
+ def disable_automated_rotation(self, value: Optional[pulumi.Input[_builtins.bool]]):
954
+ pulumi.set(self, "disable_automated_rotation", value)
955
+
956
+ @_builtins.property
957
+ @pulumi.getter(name="disableRemount")
958
+ def disable_remount(self) -> Optional[pulumi.Input[_builtins.bool]]:
959
+ """
960
+ If set, opts out of mount migration on path updates.
961
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
962
+ """
963
+ return pulumi.get(self, "disable_remount")
964
+
965
+ @disable_remount.setter
966
+ def disable_remount(self, value: Optional[pulumi.Input[_builtins.bool]]):
967
+ pulumi.set(self, "disable_remount", value)
968
+
969
+ @_builtins.property
970
+ @pulumi.getter(name="externalEntropyAccess")
971
+ def external_entropy_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
972
+ """
973
+ Enable the secrets engine to access Vault's external entropy source
974
+ """
975
+ return pulumi.get(self, "external_entropy_access")
976
+
977
+ @external_entropy_access.setter
978
+ def external_entropy_access(self, value: Optional[pulumi.Input[_builtins.bool]]):
979
+ pulumi.set(self, "external_entropy_access", value)
980
+
981
+ @_builtins.property
982
+ @pulumi.getter(name="forceNoCache")
983
+ def force_no_cache(self) -> Optional[pulumi.Input[_builtins.bool]]:
984
+ """
985
+ If set to true, disables caching.
986
+ """
987
+ return pulumi.get(self, "force_no_cache")
988
+
989
+ @force_no_cache.setter
990
+ def force_no_cache(self, value: Optional[pulumi.Input[_builtins.bool]]):
991
+ pulumi.set(self, "force_no_cache", value)
992
+
993
+ @_builtins.property
994
+ @pulumi.getter(name="iamEndpoint")
995
+ def iam_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
996
+ """
997
+ Specifies a custom HTTP IAM endpoint to use.
998
+ """
999
+ return pulumi.get(self, "iam_endpoint")
1000
+
1001
+ @iam_endpoint.setter
1002
+ def iam_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
1003
+ pulumi.set(self, "iam_endpoint", value)
1004
+
1005
+ @_builtins.property
1006
+ @pulumi.getter(name="identityTokenAudience")
1007
+ def identity_token_audience(self) -> Optional[pulumi.Input[_builtins.str]]:
1008
+ """
1009
+ The audience claim value. Requires Vault 1.16+.
1010
+ """
1011
+ return pulumi.get(self, "identity_token_audience")
1012
+
1013
+ @identity_token_audience.setter
1014
+ def identity_token_audience(self, value: Optional[pulumi.Input[_builtins.str]]):
1015
+ pulumi.set(self, "identity_token_audience", value)
1016
+
1017
+ @_builtins.property
1018
+ @pulumi.getter(name="identityTokenKey")
1019
+ def identity_token_key(self) -> Optional[pulumi.Input[_builtins.str]]:
1020
+ """
1021
+ The key to use for signing identity tokens.
1022
+ """
1023
+ return pulumi.get(self, "identity_token_key")
1024
+
1025
+ @identity_token_key.setter
1026
+ def identity_token_key(self, value: Optional[pulumi.Input[_builtins.str]]):
1027
+ pulumi.set(self, "identity_token_key", value)
1028
+
1029
+ @_builtins.property
1030
+ @pulumi.getter(name="identityTokenTtl")
1031
+ def identity_token_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
1032
+ """
1033
+ The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
1034
+ """
1035
+ return pulumi.get(self, "identity_token_ttl")
1036
+
1037
+ @identity_token_ttl.setter
1038
+ def identity_token_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
1039
+ pulumi.set(self, "identity_token_ttl", value)
1040
+
1041
+ @_builtins.property
1042
+ @pulumi.getter(name="listingVisibility")
1043
+ def listing_visibility(self) -> Optional[pulumi.Input[_builtins.str]]:
1044
+ """
1045
+ Specifies whether to show this mount in the UI-specific listing endpoint
1046
+ """
1047
+ return pulumi.get(self, "listing_visibility")
1048
+
1049
+ @listing_visibility.setter
1050
+ def listing_visibility(self, value: Optional[pulumi.Input[_builtins.str]]):
1051
+ pulumi.set(self, "listing_visibility", value)
1052
+
1053
+ @_builtins.property
1054
+ @pulumi.getter
1055
+ def local(self) -> Optional[pulumi.Input[_builtins.bool]]:
1056
+ """
1057
+ Specifies if the secret backend is local only
1058
+ """
1059
+ return pulumi.get(self, "local")
1060
+
1061
+ @local.setter
1062
+ def local(self, value: Optional[pulumi.Input[_builtins.bool]]):
1063
+ pulumi.set(self, "local", value)
1064
+
1065
+ @_builtins.property
1066
+ @pulumi.getter(name="maxLeaseTtlSeconds")
1067
+ def max_lease_ttl_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
1068
+ """
1069
+ Maximum possible lease duration for secrets in seconds
1070
+ """
1071
+ return pulumi.get(self, "max_lease_ttl_seconds")
1072
+
1073
+ @max_lease_ttl_seconds.setter
1074
+ def max_lease_ttl_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
1075
+ pulumi.set(self, "max_lease_ttl_seconds", value)
1076
+
1077
+ @_builtins.property
1078
+ @pulumi.getter(name="maxRetries")
1079
+ def max_retries(self) -> Optional[pulumi.Input[_builtins.int]]:
1080
+ """
1081
+ Number of max retries the client should use for recoverable errors.
1082
+ """
1083
+ return pulumi.get(self, "max_retries")
1084
+
1085
+ @max_retries.setter
1086
+ def max_retries(self, value: Optional[pulumi.Input[_builtins.int]]):
1087
+ pulumi.set(self, "max_retries", value)
1088
+
1089
+ @_builtins.property
1090
+ @pulumi.getter
1091
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
1092
+ """
1093
+ The namespace to provision the resource in.
1094
+ The value should not contain leading or trailing forward slashes.
1095
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1096
+ *Available only for Vault Enterprise*.
1097
+ """
1098
+ return pulumi.get(self, "namespace")
1099
+
1100
+ @namespace.setter
1101
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
1102
+ pulumi.set(self, "namespace", value)
1103
+
1104
+ @_builtins.property
1105
+ @pulumi.getter
1106
+ def options(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
1107
+ """
1108
+ Specifies mount type specific options that are passed to the backend
1109
+ """
1110
+ return pulumi.get(self, "options")
1111
+
1112
+ @options.setter
1113
+ def options(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
1114
+ pulumi.set(self, "options", value)
1115
+
1116
+ @_builtins.property
1117
+ @pulumi.getter(name="passthroughRequestHeaders")
1118
+ def passthrough_request_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1119
+ """
1120
+ List of headers to allow and pass from the request to the plugin
1121
+ """
1122
+ return pulumi.get(self, "passthrough_request_headers")
1123
+
1124
+ @passthrough_request_headers.setter
1125
+ def passthrough_request_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1126
+ pulumi.set(self, "passthrough_request_headers", value)
1127
+
1128
+ @_builtins.property
1129
+ @pulumi.getter
1130
+ def path(self) -> Optional[pulumi.Input[_builtins.str]]:
1131
+ """
1132
+ The unique path this backend should be mounted at. Must
1133
+ not begin or end with a `/`. Defaults to `aws`.
1134
+ """
1135
+ return pulumi.get(self, "path")
1136
+
1137
+ @path.setter
1138
+ def path(self, value: Optional[pulumi.Input[_builtins.str]]):
1139
+ pulumi.set(self, "path", value)
1140
+
1141
+ @_builtins.property
1142
+ @pulumi.getter(name="pluginVersion")
1143
+ def plugin_version(self) -> Optional[pulumi.Input[_builtins.str]]:
1144
+ """
1145
+ Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1146
+ """
1147
+ return pulumi.get(self, "plugin_version")
1148
+
1149
+ @plugin_version.setter
1150
+ def plugin_version(self, value: Optional[pulumi.Input[_builtins.str]]):
1151
+ pulumi.set(self, "plugin_version", value)
1152
+
1153
+ @_builtins.property
1154
+ @pulumi.getter
1155
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
1156
+ """
1157
+ The AWS region to make API calls against. Defaults to us-east-1.
1158
+ """
1159
+ return pulumi.get(self, "region")
1160
+
1161
+ @region.setter
1162
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
1163
+ pulumi.set(self, "region", value)
1164
+
1165
+ @_builtins.property
1166
+ @pulumi.getter(name="roleArn")
1167
+ def role_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
1168
+ """
1169
+ Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
1170
+ """
1171
+ return pulumi.get(self, "role_arn")
1172
+
1173
+ @role_arn.setter
1174
+ def role_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
1175
+ pulumi.set(self, "role_arn", value)
1176
+
1177
+ @_builtins.property
1178
+ @pulumi.getter(name="rotationPeriod")
1179
+ def rotation_period(self) -> Optional[pulumi.Input[_builtins.int]]:
1180
+ """
1181
+ The amount of time in seconds Vault should wait before rotating the root credential.
1182
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
1183
+ """
1184
+ return pulumi.get(self, "rotation_period")
1185
+
1186
+ @rotation_period.setter
1187
+ def rotation_period(self, value: Optional[pulumi.Input[_builtins.int]]):
1188
+ pulumi.set(self, "rotation_period", value)
1189
+
1190
+ @_builtins.property
1191
+ @pulumi.getter(name="rotationSchedule")
1192
+ def rotation_schedule(self) -> Optional[pulumi.Input[_builtins.str]]:
1193
+ """
1194
+ The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
1195
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
1196
+ """
1197
+ return pulumi.get(self, "rotation_schedule")
1198
+
1199
+ @rotation_schedule.setter
1200
+ def rotation_schedule(self, value: Optional[pulumi.Input[_builtins.str]]):
1201
+ pulumi.set(self, "rotation_schedule", value)
1202
+
1203
+ @_builtins.property
1204
+ @pulumi.getter(name="rotationWindow")
1205
+ def rotation_window(self) -> Optional[pulumi.Input[_builtins.int]]:
1206
+ """
1207
+ The maximum amount of time in seconds allowed to complete
1208
+ a rotation when a scheduled token rotation occurs. The default rotation window is
1209
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
1210
+ """
1211
+ return pulumi.get(self, "rotation_window")
1212
+
1213
+ @rotation_window.setter
1214
+ def rotation_window(self, value: Optional[pulumi.Input[_builtins.int]]):
1215
+ pulumi.set(self, "rotation_window", value)
1216
+
1217
+ @_builtins.property
1218
+ @pulumi.getter(name="sealWrap")
1219
+ def seal_wrap(self) -> Optional[pulumi.Input[_builtins.bool]]:
1220
+ """
1221
+ Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
1222
+ """
1223
+ return pulumi.get(self, "seal_wrap")
1224
+
1225
+ @seal_wrap.setter
1226
+ def seal_wrap(self, value: Optional[pulumi.Input[_builtins.bool]]):
1227
+ pulumi.set(self, "seal_wrap", value)
1228
+
1229
+ @_builtins.property
1230
+ @pulumi.getter(name="secretKey")
1231
+ def secret_key(self) -> Optional[pulumi.Input[_builtins.str]]:
1232
+ """
1233
+ The AWS Secret Access Key to use when generating new credentials.
1234
+ """
1235
+ return pulumi.get(self, "secret_key")
1236
+
1237
+ @secret_key.setter
1238
+ def secret_key(self, value: Optional[pulumi.Input[_builtins.str]]):
1239
+ pulumi.set(self, "secret_key", value)
1240
+
1241
+ @_builtins.property
1242
+ @pulumi.getter(name="stsEndpoint")
1243
+ def sts_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
1244
+ """
1245
+ Specifies a custom HTTP STS endpoint to use.
1246
+ """
1247
+ return pulumi.get(self, "sts_endpoint")
1248
+
1249
+ @sts_endpoint.setter
1250
+ def sts_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
1251
+ pulumi.set(self, "sts_endpoint", value)
1252
+
1253
+ @_builtins.property
1254
+ @pulumi.getter(name="stsFallbackEndpoints")
1255
+ def sts_fallback_endpoints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1256
+ """
1257
+ Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
1258
+ """
1259
+ return pulumi.get(self, "sts_fallback_endpoints")
1260
+
1261
+ @sts_fallback_endpoints.setter
1262
+ def sts_fallback_endpoints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1263
+ pulumi.set(self, "sts_fallback_endpoints", value)
1264
+
1265
+ @_builtins.property
1266
+ @pulumi.getter(name="stsFallbackRegions")
1267
+ def sts_fallback_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1268
+ """
1269
+ Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
1270
+ """
1271
+ return pulumi.get(self, "sts_fallback_regions")
1272
+
1273
+ @sts_fallback_regions.setter
1274
+ def sts_fallback_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1275
+ pulumi.set(self, "sts_fallback_regions", value)
1276
+
1277
+ @_builtins.property
1278
+ @pulumi.getter(name="stsRegion")
1279
+ def sts_region(self) -> Optional[pulumi.Input[_builtins.str]]:
1280
+ """
1281
+ Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
1282
+ """
1283
+ return pulumi.get(self, "sts_region")
1284
+
1285
+ @sts_region.setter
1286
+ def sts_region(self, value: Optional[pulumi.Input[_builtins.str]]):
1287
+ pulumi.set(self, "sts_region", value)
1288
+
1289
+ @_builtins.property
1290
+ @pulumi.getter(name="usernameTemplate")
1291
+ def username_template(self) -> Optional[pulumi.Input[_builtins.str]]:
1292
+ """
1293
+ Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
1294
+
1295
+ ```
1296
+ {{ if (eq .Type "STS") }}
1297
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
1298
+ {{ else }}
1299
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
1300
+ {{ end }}
1301
+
1302
+ ```
1303
+ """
1304
+ return pulumi.get(self, "username_template")
1305
+
1306
+ @username_template.setter
1307
+ def username_template(self, value: Optional[pulumi.Input[_builtins.str]]):
1308
+ pulumi.set(self, "username_template", value)
1309
+
1310
+
1311
+ @pulumi.type_token("vault:aws/secretBackend:SecretBackend")
1312
+ class SecretBackend(pulumi.CustomResource):
1313
+ @overload
1314
+ def __init__(__self__,
1315
+ resource_name: str,
1316
+ opts: Optional[pulumi.ResourceOptions] = None,
1317
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
1318
+ allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1319
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1320
+ audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1321
+ audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1322
+ default_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1323
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1324
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1325
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
1326
+ disable_remount: Optional[pulumi.Input[_builtins.bool]] = None,
1327
+ external_entropy_access: Optional[pulumi.Input[_builtins.bool]] = None,
1328
+ force_no_cache: Optional[pulumi.Input[_builtins.bool]] = None,
1329
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1330
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
1331
+ identity_token_key: Optional[pulumi.Input[_builtins.str]] = None,
1332
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1333
+ listing_visibility: Optional[pulumi.Input[_builtins.str]] = None,
1334
+ local: Optional[pulumi.Input[_builtins.bool]] = None,
1335
+ max_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1336
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
1337
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1338
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1339
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1340
+ path: Optional[pulumi.Input[_builtins.str]] = None,
1341
+ plugin_version: Optional[pulumi.Input[_builtins.str]] = None,
1342
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1343
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
1344
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
1345
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
1346
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
1347
+ seal_wrap: Optional[pulumi.Input[_builtins.bool]] = None,
1348
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
1349
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1350
+ sts_fallback_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1351
+ sts_fallback_regions: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1352
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
1353
+ username_template: Optional[pulumi.Input[_builtins.str]] = None,
1354
+ __props__=None):
1355
+ """
1356
+ ## Import
1357
+
1358
+ AWS secret backends can be imported using the `path`, e.g.
1359
+
1360
+ ```sh
1361
+ $ pulumi import vault:aws/secretBackend:SecretBackend aws aws
1362
+ ```
1363
+
1364
+ :param str resource_name: The name of the resource.
1365
+ :param pulumi.ResourceOptions opts: Options for the resource.
1366
+ :param pulumi.Input[_builtins.str] access_key: The AWS Access Key ID this backend should use to
1367
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
1368
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_managed_keys: List of managed key registry entry names that the mount in question is allowed to access
1369
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
1370
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
1371
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
1372
+ :param pulumi.Input[_builtins.int] default_lease_ttl_seconds: Default lease duration for secrets in seconds
1373
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
1374
+ :param pulumi.Input[_builtins.str] description: Human-friendly description of the mount for the backend.
1375
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
1376
+ :param pulumi.Input[_builtins.bool] disable_remount: If set, opts out of mount migration on path updates.
1377
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
1378
+ :param pulumi.Input[_builtins.bool] external_entropy_access: Enable the secrets engine to access Vault's external entropy source
1379
+ :param pulumi.Input[_builtins.bool] force_no_cache: If set to true, disables caching.
1380
+ :param pulumi.Input[_builtins.str] iam_endpoint: Specifies a custom HTTP IAM endpoint to use.
1381
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Requires Vault 1.16+.
1382
+ :param pulumi.Input[_builtins.str] identity_token_key: The key to use for signing identity tokens.
1383
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
1384
+ :param pulumi.Input[_builtins.str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
1385
+ :param pulumi.Input[_builtins.bool] local: Specifies if the secret backend is local only
1386
+ :param pulumi.Input[_builtins.int] max_lease_ttl_seconds: Maximum possible lease duration for secrets in seconds
1387
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
1388
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1389
+ The value should not contain leading or trailing forward slashes.
1390
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1391
+ *Available only for Vault Enterprise*.
1392
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] options: Specifies mount type specific options that are passed to the backend
1393
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
1394
+ :param pulumi.Input[_builtins.str] path: The unique path this backend should be mounted at. Must
1395
+ not begin or end with a `/`. Defaults to `aws`.
1396
+ :param pulumi.Input[_builtins.str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1397
+ :param pulumi.Input[_builtins.str] region: The AWS region to make API calls against. Defaults to us-east-1.
1398
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
1399
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
1400
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
1401
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
1402
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
1403
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
1404
+ a rotation when a scheduled token rotation occurs. The default rotation window is
1405
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
1406
+ :param pulumi.Input[_builtins.bool] seal_wrap: Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
1407
+ :param pulumi.Input[_builtins.str] secret_key: The AWS Secret Access Key to use when generating new credentials.
1408
+ :param pulumi.Input[_builtins.str] sts_endpoint: Specifies a custom HTTP STS endpoint to use.
1409
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_endpoints: Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
1410
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_regions: Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
1411
+ :param pulumi.Input[_builtins.str] sts_region: Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
1412
+ :param pulumi.Input[_builtins.str] username_template: Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
1413
+
1414
+ ```
1415
+ {{ if (eq .Type "STS") }}
1416
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
1417
+ {{ else }}
1418
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
1419
+ {{ end }}
1420
+
1421
+ ```
1422
+ """
1423
+ ...
1424
+ @overload
1425
+ def __init__(__self__,
1426
+ resource_name: str,
1427
+ args: Optional[SecretBackendArgs] = None,
1428
+ opts: Optional[pulumi.ResourceOptions] = None):
1429
+ """
1430
+ ## Import
1431
+
1432
+ AWS secret backends can be imported using the `path`, e.g.
1433
+
1434
+ ```sh
1435
+ $ pulumi import vault:aws/secretBackend:SecretBackend aws aws
1436
+ ```
1437
+
1438
+ :param str resource_name: The name of the resource.
1439
+ :param SecretBackendArgs args: The arguments to use to populate this resource's properties.
1440
+ :param pulumi.ResourceOptions opts: Options for the resource.
1441
+ """
1442
+ ...
1443
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1444
+ resource_args, opts = _utilities.get_resource_args_opts(SecretBackendArgs, pulumi.ResourceOptions, *args, **kwargs)
1445
+ if resource_args is not None:
1446
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1447
+ else:
1448
+ __self__._internal_init(resource_name, *args, **kwargs)
1449
+
1450
+ def _internal_init(__self__,
1451
+ resource_name: str,
1452
+ opts: Optional[pulumi.ResourceOptions] = None,
1453
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
1454
+ allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1455
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1456
+ audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1457
+ audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1458
+ default_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1459
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1460
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1461
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
1462
+ disable_remount: Optional[pulumi.Input[_builtins.bool]] = None,
1463
+ external_entropy_access: Optional[pulumi.Input[_builtins.bool]] = None,
1464
+ force_no_cache: Optional[pulumi.Input[_builtins.bool]] = None,
1465
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1466
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
1467
+ identity_token_key: Optional[pulumi.Input[_builtins.str]] = None,
1468
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1469
+ listing_visibility: Optional[pulumi.Input[_builtins.str]] = None,
1470
+ local: Optional[pulumi.Input[_builtins.bool]] = None,
1471
+ max_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1472
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
1473
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1474
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1475
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1476
+ path: Optional[pulumi.Input[_builtins.str]] = None,
1477
+ plugin_version: Optional[pulumi.Input[_builtins.str]] = None,
1478
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1479
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
1480
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
1481
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
1482
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
1483
+ seal_wrap: Optional[pulumi.Input[_builtins.bool]] = None,
1484
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
1485
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1486
+ sts_fallback_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1487
+ sts_fallback_regions: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1488
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
1489
+ username_template: Optional[pulumi.Input[_builtins.str]] = None,
1490
+ __props__=None):
1491
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1492
+ if not isinstance(opts, pulumi.ResourceOptions):
1493
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1494
+ if opts.id is None:
1495
+ if __props__ is not None:
1496
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1497
+ __props__ = SecretBackendArgs.__new__(SecretBackendArgs)
1498
+
1499
+ __props__.__dict__["access_key"] = None if access_key is None else pulumi.Output.secret(access_key)
1500
+ __props__.__dict__["allowed_managed_keys"] = allowed_managed_keys
1501
+ __props__.__dict__["allowed_response_headers"] = allowed_response_headers
1502
+ __props__.__dict__["audit_non_hmac_request_keys"] = audit_non_hmac_request_keys
1503
+ __props__.__dict__["audit_non_hmac_response_keys"] = audit_non_hmac_response_keys
1504
+ __props__.__dict__["default_lease_ttl_seconds"] = default_lease_ttl_seconds
1505
+ __props__.__dict__["delegated_auth_accessors"] = delegated_auth_accessors
1506
+ __props__.__dict__["description"] = description
1507
+ __props__.__dict__["disable_automated_rotation"] = disable_automated_rotation
1508
+ __props__.__dict__["disable_remount"] = disable_remount
1509
+ __props__.__dict__["external_entropy_access"] = external_entropy_access
1510
+ __props__.__dict__["force_no_cache"] = force_no_cache
1511
+ __props__.__dict__["iam_endpoint"] = iam_endpoint
1512
+ __props__.__dict__["identity_token_audience"] = identity_token_audience
1513
+ __props__.__dict__["identity_token_key"] = identity_token_key
1514
+ __props__.__dict__["identity_token_ttl"] = identity_token_ttl
1515
+ __props__.__dict__["listing_visibility"] = listing_visibility
1516
+ __props__.__dict__["local"] = local
1517
+ __props__.__dict__["max_lease_ttl_seconds"] = max_lease_ttl_seconds
1518
+ __props__.__dict__["max_retries"] = max_retries
1519
+ __props__.__dict__["namespace"] = namespace
1520
+ __props__.__dict__["options"] = options
1521
+ __props__.__dict__["passthrough_request_headers"] = passthrough_request_headers
1522
+ __props__.__dict__["path"] = path
1523
+ __props__.__dict__["plugin_version"] = plugin_version
1524
+ __props__.__dict__["region"] = region
1525
+ __props__.__dict__["role_arn"] = role_arn
1526
+ __props__.__dict__["rotation_period"] = rotation_period
1527
+ __props__.__dict__["rotation_schedule"] = rotation_schedule
1528
+ __props__.__dict__["rotation_window"] = rotation_window
1529
+ __props__.__dict__["seal_wrap"] = seal_wrap
1530
+ __props__.__dict__["secret_key"] = None if secret_key is None else pulumi.Output.secret(secret_key)
1531
+ __props__.__dict__["sts_endpoint"] = sts_endpoint
1532
+ __props__.__dict__["sts_fallback_endpoints"] = sts_fallback_endpoints
1533
+ __props__.__dict__["sts_fallback_regions"] = sts_fallback_regions
1534
+ __props__.__dict__["sts_region"] = sts_region
1535
+ __props__.__dict__["username_template"] = username_template
1536
+ __props__.__dict__["accessor"] = None
1537
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["accessKey", "secretKey"])
1538
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
1539
+ super(SecretBackend, __self__).__init__(
1540
+ 'vault:aws/secretBackend:SecretBackend',
1541
+ resource_name,
1542
+ __props__,
1543
+ opts)
1544
+
1545
+ @staticmethod
1546
+ def get(resource_name: str,
1547
+ id: pulumi.Input[str],
1548
+ opts: Optional[pulumi.ResourceOptions] = None,
1549
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
1550
+ accessor: Optional[pulumi.Input[_builtins.str]] = None,
1551
+ allowed_managed_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1552
+ allowed_response_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1553
+ audit_non_hmac_request_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1554
+ audit_non_hmac_response_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1555
+ default_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1556
+ delegated_auth_accessors: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1557
+ description: Optional[pulumi.Input[_builtins.str]] = None,
1558
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
1559
+ disable_remount: Optional[pulumi.Input[_builtins.bool]] = None,
1560
+ external_entropy_access: Optional[pulumi.Input[_builtins.bool]] = None,
1561
+ force_no_cache: Optional[pulumi.Input[_builtins.bool]] = None,
1562
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1563
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
1564
+ identity_token_key: Optional[pulumi.Input[_builtins.str]] = None,
1565
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1566
+ listing_visibility: Optional[pulumi.Input[_builtins.str]] = None,
1567
+ local: Optional[pulumi.Input[_builtins.bool]] = None,
1568
+ max_lease_ttl_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1569
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
1570
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1571
+ options: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1572
+ passthrough_request_headers: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1573
+ path: Optional[pulumi.Input[_builtins.str]] = None,
1574
+ plugin_version: Optional[pulumi.Input[_builtins.str]] = None,
1575
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1576
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
1577
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
1578
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
1579
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
1580
+ seal_wrap: Optional[pulumi.Input[_builtins.bool]] = None,
1581
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
1582
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1583
+ sts_fallback_endpoints: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1584
+ sts_fallback_regions: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1585
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
1586
+ username_template: Optional[pulumi.Input[_builtins.str]] = None) -> 'SecretBackend':
1587
+ """
1588
+ Get an existing SecretBackend resource's state with the given name, id, and optional extra
1589
+ properties used to qualify the lookup.
1590
+
1591
+ :param str resource_name: The unique name of the resulting resource.
1592
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1593
+ :param pulumi.ResourceOptions opts: Options for the resource.
1594
+ :param pulumi.Input[_builtins.str] access_key: The AWS Access Key ID this backend should use to
1595
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
1596
+ :param pulumi.Input[_builtins.str] accessor: Accessor of the mount
1597
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_managed_keys: List of managed key registry entry names that the mount in question is allowed to access
1598
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_response_headers: List of headers to allow and pass from the request to the plugin
1599
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
1600
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.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.
1601
+ :param pulumi.Input[_builtins.int] default_lease_ttl_seconds: Default lease duration for secrets in seconds
1602
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] delegated_auth_accessors: List of headers to allow and pass from the request to the plugin
1603
+ :param pulumi.Input[_builtins.str] description: Human-friendly description of the mount for the backend.
1604
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
1605
+ :param pulumi.Input[_builtins.bool] disable_remount: If set, opts out of mount migration on path updates.
1606
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
1607
+ :param pulumi.Input[_builtins.bool] external_entropy_access: Enable the secrets engine to access Vault's external entropy source
1608
+ :param pulumi.Input[_builtins.bool] force_no_cache: If set to true, disables caching.
1609
+ :param pulumi.Input[_builtins.str] iam_endpoint: Specifies a custom HTTP IAM endpoint to use.
1610
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Requires Vault 1.16+.
1611
+ :param pulumi.Input[_builtins.str] identity_token_key: The key to use for signing identity tokens.
1612
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
1613
+ :param pulumi.Input[_builtins.str] listing_visibility: Specifies whether to show this mount in the UI-specific listing endpoint
1614
+ :param pulumi.Input[_builtins.bool] local: Specifies if the secret backend is local only
1615
+ :param pulumi.Input[_builtins.int] max_lease_ttl_seconds: Maximum possible lease duration for secrets in seconds
1616
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
1617
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1618
+ The value should not contain leading or trailing forward slashes.
1619
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1620
+ *Available only for Vault Enterprise*.
1621
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] options: Specifies mount type specific options that are passed to the backend
1622
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] passthrough_request_headers: List of headers to allow and pass from the request to the plugin
1623
+ :param pulumi.Input[_builtins.str] path: The unique path this backend should be mounted at. Must
1624
+ not begin or end with a `/`. Defaults to `aws`.
1625
+ :param pulumi.Input[_builtins.str] plugin_version: Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1626
+ :param pulumi.Input[_builtins.str] region: The AWS region to make API calls against. Defaults to us-east-1.
1627
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
1628
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
1629
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
1630
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
1631
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
1632
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
1633
+ a rotation when a scheduled token rotation occurs. The default rotation window is
1634
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
1635
+ :param pulumi.Input[_builtins.bool] seal_wrap: Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
1636
+ :param pulumi.Input[_builtins.str] secret_key: The AWS Secret Access Key to use when generating new credentials.
1637
+ :param pulumi.Input[_builtins.str] sts_endpoint: Specifies a custom HTTP STS endpoint to use.
1638
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_endpoints: Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
1639
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] sts_fallback_regions: Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
1640
+ :param pulumi.Input[_builtins.str] sts_region: Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
1641
+ :param pulumi.Input[_builtins.str] username_template: Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
1642
+
1643
+ ```
1644
+ {{ if (eq .Type "STS") }}
1645
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
1646
+ {{ else }}
1647
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
1648
+ {{ end }}
1649
+
1650
+ ```
1651
+ """
1652
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1653
+
1654
+ __props__ = _SecretBackendState.__new__(_SecretBackendState)
1655
+
1656
+ __props__.__dict__["access_key"] = access_key
1657
+ __props__.__dict__["accessor"] = accessor
1658
+ __props__.__dict__["allowed_managed_keys"] = allowed_managed_keys
1659
+ __props__.__dict__["allowed_response_headers"] = allowed_response_headers
1660
+ __props__.__dict__["audit_non_hmac_request_keys"] = audit_non_hmac_request_keys
1661
+ __props__.__dict__["audit_non_hmac_response_keys"] = audit_non_hmac_response_keys
1662
+ __props__.__dict__["default_lease_ttl_seconds"] = default_lease_ttl_seconds
1663
+ __props__.__dict__["delegated_auth_accessors"] = delegated_auth_accessors
1664
+ __props__.__dict__["description"] = description
1665
+ __props__.__dict__["disable_automated_rotation"] = disable_automated_rotation
1666
+ __props__.__dict__["disable_remount"] = disable_remount
1667
+ __props__.__dict__["external_entropy_access"] = external_entropy_access
1668
+ __props__.__dict__["force_no_cache"] = force_no_cache
1669
+ __props__.__dict__["iam_endpoint"] = iam_endpoint
1670
+ __props__.__dict__["identity_token_audience"] = identity_token_audience
1671
+ __props__.__dict__["identity_token_key"] = identity_token_key
1672
+ __props__.__dict__["identity_token_ttl"] = identity_token_ttl
1673
+ __props__.__dict__["listing_visibility"] = listing_visibility
1674
+ __props__.__dict__["local"] = local
1675
+ __props__.__dict__["max_lease_ttl_seconds"] = max_lease_ttl_seconds
1676
+ __props__.__dict__["max_retries"] = max_retries
1677
+ __props__.__dict__["namespace"] = namespace
1678
+ __props__.__dict__["options"] = options
1679
+ __props__.__dict__["passthrough_request_headers"] = passthrough_request_headers
1680
+ __props__.__dict__["path"] = path
1681
+ __props__.__dict__["plugin_version"] = plugin_version
1682
+ __props__.__dict__["region"] = region
1683
+ __props__.__dict__["role_arn"] = role_arn
1684
+ __props__.__dict__["rotation_period"] = rotation_period
1685
+ __props__.__dict__["rotation_schedule"] = rotation_schedule
1686
+ __props__.__dict__["rotation_window"] = rotation_window
1687
+ __props__.__dict__["seal_wrap"] = seal_wrap
1688
+ __props__.__dict__["secret_key"] = secret_key
1689
+ __props__.__dict__["sts_endpoint"] = sts_endpoint
1690
+ __props__.__dict__["sts_fallback_endpoints"] = sts_fallback_endpoints
1691
+ __props__.__dict__["sts_fallback_regions"] = sts_fallback_regions
1692
+ __props__.__dict__["sts_region"] = sts_region
1693
+ __props__.__dict__["username_template"] = username_template
1694
+ return SecretBackend(resource_name, opts=opts, __props__=__props__)
1695
+
1696
+ @_builtins.property
1697
+ @pulumi.getter(name="accessKey")
1698
+ def access_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1699
+ """
1700
+ The AWS Access Key ID this backend should use to
1701
+ issue new credentials. Vault uses the official AWS SDK to authenticate, and thus can also use standard AWS environment credentials, shared file credentials or IAM role/ECS task credentials.
1702
+ """
1703
+ return pulumi.get(self, "access_key")
1704
+
1705
+ @_builtins.property
1706
+ @pulumi.getter
1707
+ def accessor(self) -> pulumi.Output[_builtins.str]:
1708
+ """
1709
+ Accessor of the mount
1710
+ """
1711
+ return pulumi.get(self, "accessor")
1712
+
1713
+ @_builtins.property
1714
+ @pulumi.getter(name="allowedManagedKeys")
1715
+ def allowed_managed_keys(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1716
+ """
1717
+ List of managed key registry entry names that the mount in question is allowed to access
1718
+ """
1719
+ return pulumi.get(self, "allowed_managed_keys")
1720
+
1721
+ @_builtins.property
1722
+ @pulumi.getter(name="allowedResponseHeaders")
1723
+ def allowed_response_headers(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1724
+ """
1725
+ List of headers to allow and pass from the request to the plugin
1726
+ """
1727
+ return pulumi.get(self, "allowed_response_headers")
1728
+
1729
+ @_builtins.property
1730
+ @pulumi.getter(name="auditNonHmacRequestKeys")
1731
+ def audit_non_hmac_request_keys(self) -> pulumi.Output[Sequence[_builtins.str]]:
1732
+ """
1733
+ Specifies the list of keys that will not be HMAC'd by audit devices in the request data object.
1734
+ """
1735
+ return pulumi.get(self, "audit_non_hmac_request_keys")
1736
+
1737
+ @_builtins.property
1738
+ @pulumi.getter(name="auditNonHmacResponseKeys")
1739
+ def audit_non_hmac_response_keys(self) -> pulumi.Output[Sequence[_builtins.str]]:
1740
+ """
1741
+ Specifies the list of keys that will not be HMAC'd by audit devices in the response data object.
1742
+ """
1743
+ return pulumi.get(self, "audit_non_hmac_response_keys")
1744
+
1745
+ @_builtins.property
1746
+ @pulumi.getter(name="defaultLeaseTtlSeconds")
1747
+ def default_lease_ttl_seconds(self) -> pulumi.Output[_builtins.int]:
1748
+ """
1749
+ Default lease duration for secrets in seconds
1750
+ """
1751
+ return pulumi.get(self, "default_lease_ttl_seconds")
1752
+
1753
+ @_builtins.property
1754
+ @pulumi.getter(name="delegatedAuthAccessors")
1755
+ def delegated_auth_accessors(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1756
+ """
1757
+ List of headers to allow and pass from the request to the plugin
1758
+ """
1759
+ return pulumi.get(self, "delegated_auth_accessors")
1760
+
1761
+ @_builtins.property
1762
+ @pulumi.getter
1763
+ def description(self) -> pulumi.Output[Optional[_builtins.str]]:
1764
+ """
1765
+ Human-friendly description of the mount for the backend.
1766
+ """
1767
+ return pulumi.get(self, "description")
1768
+
1769
+ @_builtins.property
1770
+ @pulumi.getter(name="disableAutomatedRotation")
1771
+ def disable_automated_rotation(self) -> pulumi.Output[Optional[_builtins.bool]]:
1772
+ """
1773
+ Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
1774
+ """
1775
+ return pulumi.get(self, "disable_automated_rotation")
1776
+
1777
+ @_builtins.property
1778
+ @pulumi.getter(name="disableRemount")
1779
+ def disable_remount(self) -> pulumi.Output[Optional[_builtins.bool]]:
1780
+ """
1781
+ If set, opts out of mount migration on path updates.
1782
+ See here for more info on [Mount Migration](https://www.vaultproject.io/docs/concepts/mount-migration)
1783
+ """
1784
+ return pulumi.get(self, "disable_remount")
1785
+
1786
+ @_builtins.property
1787
+ @pulumi.getter(name="externalEntropyAccess")
1788
+ def external_entropy_access(self) -> pulumi.Output[Optional[_builtins.bool]]:
1789
+ """
1790
+ Enable the secrets engine to access Vault's external entropy source
1791
+ """
1792
+ return pulumi.get(self, "external_entropy_access")
1793
+
1794
+ @_builtins.property
1795
+ @pulumi.getter(name="forceNoCache")
1796
+ def force_no_cache(self) -> pulumi.Output[_builtins.bool]:
1797
+ """
1798
+ If set to true, disables caching.
1799
+ """
1800
+ return pulumi.get(self, "force_no_cache")
1801
+
1802
+ @_builtins.property
1803
+ @pulumi.getter(name="iamEndpoint")
1804
+ def iam_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1805
+ """
1806
+ Specifies a custom HTTP IAM endpoint to use.
1807
+ """
1808
+ return pulumi.get(self, "iam_endpoint")
1809
+
1810
+ @_builtins.property
1811
+ @pulumi.getter(name="identityTokenAudience")
1812
+ def identity_token_audience(self) -> pulumi.Output[Optional[_builtins.str]]:
1813
+ """
1814
+ The audience claim value. Requires Vault 1.16+.
1815
+ """
1816
+ return pulumi.get(self, "identity_token_audience")
1817
+
1818
+ @_builtins.property
1819
+ @pulumi.getter(name="identityTokenKey")
1820
+ def identity_token_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1821
+ """
1822
+ The key to use for signing identity tokens.
1823
+ """
1824
+ return pulumi.get(self, "identity_token_key")
1825
+
1826
+ @_builtins.property
1827
+ @pulumi.getter(name="identityTokenTtl")
1828
+ def identity_token_ttl(self) -> pulumi.Output[_builtins.int]:
1829
+ """
1830
+ The TTL of generated identity tokens in seconds. Requires Vault 1.16+.
1831
+ """
1832
+ return pulumi.get(self, "identity_token_ttl")
1833
+
1834
+ @_builtins.property
1835
+ @pulumi.getter(name="listingVisibility")
1836
+ def listing_visibility(self) -> pulumi.Output[Optional[_builtins.str]]:
1837
+ """
1838
+ Specifies whether to show this mount in the UI-specific listing endpoint
1839
+ """
1840
+ return pulumi.get(self, "listing_visibility")
1841
+
1842
+ @_builtins.property
1843
+ @pulumi.getter
1844
+ def local(self) -> pulumi.Output[Optional[_builtins.bool]]:
1845
+ """
1846
+ Specifies if the secret backend is local only
1847
+ """
1848
+ return pulumi.get(self, "local")
1849
+
1850
+ @_builtins.property
1851
+ @pulumi.getter(name="maxLeaseTtlSeconds")
1852
+ def max_lease_ttl_seconds(self) -> pulumi.Output[_builtins.int]:
1853
+ """
1854
+ Maximum possible lease duration for secrets in seconds
1855
+ """
1856
+ return pulumi.get(self, "max_lease_ttl_seconds")
1857
+
1858
+ @_builtins.property
1859
+ @pulumi.getter(name="maxRetries")
1860
+ def max_retries(self) -> pulumi.Output[Optional[_builtins.int]]:
1861
+ """
1862
+ Number of max retries the client should use for recoverable errors.
1863
+ """
1864
+ return pulumi.get(self, "max_retries")
1865
+
1866
+ @_builtins.property
1867
+ @pulumi.getter
1868
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
1869
+ """
1870
+ The namespace to provision the resource in.
1871
+ The value should not contain leading or trailing forward slashes.
1872
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1873
+ *Available only for Vault Enterprise*.
1874
+ """
1875
+ return pulumi.get(self, "namespace")
1876
+
1877
+ @_builtins.property
1878
+ @pulumi.getter
1879
+ def options(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1880
+ """
1881
+ Specifies mount type specific options that are passed to the backend
1882
+ """
1883
+ return pulumi.get(self, "options")
1884
+
1885
+ @_builtins.property
1886
+ @pulumi.getter(name="passthroughRequestHeaders")
1887
+ def passthrough_request_headers(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1888
+ """
1889
+ List of headers to allow and pass from the request to the plugin
1890
+ """
1891
+ return pulumi.get(self, "passthrough_request_headers")
1892
+
1893
+ @_builtins.property
1894
+ @pulumi.getter
1895
+ def path(self) -> pulumi.Output[Optional[_builtins.str]]:
1896
+ """
1897
+ The unique path this backend should be mounted at. Must
1898
+ not begin or end with a `/`. Defaults to `aws`.
1899
+ """
1900
+ return pulumi.get(self, "path")
1901
+
1902
+ @_builtins.property
1903
+ @pulumi.getter(name="pluginVersion")
1904
+ def plugin_version(self) -> pulumi.Output[Optional[_builtins.str]]:
1905
+ """
1906
+ Specifies the semantic version of the plugin to use, e.g. 'v1.0.0'
1907
+ """
1908
+ return pulumi.get(self, "plugin_version")
1909
+
1910
+ @_builtins.property
1911
+ @pulumi.getter
1912
+ def region(self) -> pulumi.Output[_builtins.str]:
1913
+ """
1914
+ The AWS region to make API calls against. Defaults to us-east-1.
1915
+ """
1916
+ return pulumi.get(self, "region")
1917
+
1918
+ @_builtins.property
1919
+ @pulumi.getter(name="roleArn")
1920
+ def role_arn(self) -> pulumi.Output[Optional[_builtins.str]]:
1921
+ """
1922
+ Role ARN to assume for plugin identity token federation. Requires Vault 1.16+.
1923
+ """
1924
+ return pulumi.get(self, "role_arn")
1925
+
1926
+ @_builtins.property
1927
+ @pulumi.getter(name="rotationPeriod")
1928
+ def rotation_period(self) -> pulumi.Output[Optional[_builtins.int]]:
1929
+ """
1930
+ The amount of time in seconds Vault should wait before rotating the root credential.
1931
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
1932
+ """
1933
+ return pulumi.get(self, "rotation_period")
1934
+
1935
+ @_builtins.property
1936
+ @pulumi.getter(name="rotationSchedule")
1937
+ def rotation_schedule(self) -> pulumi.Output[Optional[_builtins.str]]:
1938
+ """
1939
+ The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
1940
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
1941
+ """
1942
+ return pulumi.get(self, "rotation_schedule")
1943
+
1944
+ @_builtins.property
1945
+ @pulumi.getter(name="rotationWindow")
1946
+ def rotation_window(self) -> pulumi.Output[Optional[_builtins.int]]:
1947
+ """
1948
+ The maximum amount of time in seconds allowed to complete
1949
+ a rotation when a scheduled token rotation occurs. The default rotation window is
1950
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
1951
+ """
1952
+ return pulumi.get(self, "rotation_window")
1953
+
1954
+ @_builtins.property
1955
+ @pulumi.getter(name="sealWrap")
1956
+ def seal_wrap(self) -> pulumi.Output[_builtins.bool]:
1957
+ """
1958
+ Enable seal wrapping for the mount, causing values stored by the mount to be wrapped by the seal's encryption capability
1959
+ """
1960
+ return pulumi.get(self, "seal_wrap")
1961
+
1962
+ @_builtins.property
1963
+ @pulumi.getter(name="secretKey")
1964
+ def secret_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1965
+ """
1966
+ The AWS Secret Access Key to use when generating new credentials.
1967
+ """
1968
+ return pulumi.get(self, "secret_key")
1969
+
1970
+ @_builtins.property
1971
+ @pulumi.getter(name="stsEndpoint")
1972
+ def sts_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1973
+ """
1974
+ Specifies a custom HTTP STS endpoint to use.
1975
+ """
1976
+ return pulumi.get(self, "sts_endpoint")
1977
+
1978
+ @_builtins.property
1979
+ @pulumi.getter(name="stsFallbackEndpoints")
1980
+ def sts_fallback_endpoints(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1981
+ """
1982
+ Ordered list of `sts_endpoint`s to try if the defined one fails. Requires Vault 1.19+
1983
+ """
1984
+ return pulumi.get(self, "sts_fallback_endpoints")
1985
+
1986
+ @_builtins.property
1987
+ @pulumi.getter(name="stsFallbackRegions")
1988
+ def sts_fallback_regions(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1989
+ """
1990
+ Ordered list of `sts_region`s matching the fallback endpoints. Should correspond in order with those endpoints. Requires Vault 1.19+
1991
+ """
1992
+ return pulumi.get(self, "sts_fallback_regions")
1993
+
1994
+ @_builtins.property
1995
+ @pulumi.getter(name="stsRegion")
1996
+ def sts_region(self) -> pulumi.Output[Optional[_builtins.str]]:
1997
+ """
1998
+ Specifies the region of the STS endpoint. Should be included if `sts_endpoint` is supplied. Requires Vault 1.19+
1999
+ """
2000
+ return pulumi.get(self, "sts_region")
2001
+
2002
+ @_builtins.property
2003
+ @pulumi.getter(name="usernameTemplate")
2004
+ def username_template(self) -> pulumi.Output[_builtins.str]:
2005
+ """
2006
+ Template describing how dynamic usernames are generated. The username template is used to generate both IAM usernames (capped at 64 characters) and STS usernames (capped at 32 characters). If no template is provided the field defaults to the template:
2007
+
2008
+ ```
2009
+ {{ if (eq .Type "STS") }}
2010
+ {{ printf "vault-%s-%s" (unix_time) (random 20) | truncate 32 }}
2011
+ {{ else }}
2012
+ {{ printf "vault-%s-%s-%s" (printf "%s-%s" (.DisplayName) (.PolicyName) | truncate 42) (unix_time) (random 20) | truncate 64 }}
2013
+ {{ end }}
2014
+
2015
+ ```
2016
+ """
2017
+ return pulumi.get(self, "username_template")
2018
+