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,1259 @@
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__ = ['AuthBackendClientArgs', 'AuthBackendClient']
18
+
19
+ @pulumi.input_type
20
+ class AuthBackendClientArgs:
21
+ def __init__(__self__, *,
22
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
23
+ allowed_sts_header_values: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
24
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
25
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
26
+ ec2_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
27
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
28
+ iam_server_id_header_value: Optional[pulumi.Input[_builtins.str]] = None,
29
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
30
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
31
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
32
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
33
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
34
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
35
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
36
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
37
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
38
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
39
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
40
+ use_sts_region_from_client: Optional[pulumi.Input[_builtins.bool]] = None):
41
+ """
42
+ The set of arguments for constructing a AuthBackendClient resource.
43
+ :param pulumi.Input[_builtins.str] access_key: The AWS access key that Vault should use for the
44
+ auth backend. Mutually exclusive with `identity_token_audience`.
45
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_sts_header_values: List of additional headers that are allowed to be in STS request headers.
46
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
47
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
48
+ :param pulumi.Input[_builtins.str] backend: The path the AWS auth backend being configured was
49
+ mounted at. Defaults to `aws`.
50
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
51
+ :param pulumi.Input[_builtins.str] ec2_endpoint: Override the URL Vault uses when making EC2 API
52
+ calls.
53
+ :param pulumi.Input[_builtins.str] iam_endpoint: Override the URL Vault uses when making IAM API
54
+ calls.
55
+ :param pulumi.Input[_builtins.str] iam_server_id_header_value: The value to require in the
56
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
57
+ that are used in the IAM auth method.
58
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
59
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
60
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
61
+ *Available only for Vault Enterprise*
62
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
63
+ The default `-1` falls back to the AWS SDK's default behavior.
64
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
65
+ The value should not contain leading or trailing forward slashes.
66
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
67
+ *Available only for Vault Enterprise*.
68
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
69
+ *Available only for Vault Enterprise*
70
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
71
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
72
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
73
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
74
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
75
+ a rotation when a scheduled token rotation occurs. The default rotation window is
76
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
77
+ :param pulumi.Input[_builtins.str] secret_key: The AWS secret key that Vault should use for the
78
+ auth backend.
79
+ :param pulumi.Input[_builtins.str] sts_endpoint: Override the URL Vault uses when making STS API
80
+ calls.
81
+ :param pulumi.Input[_builtins.str] sts_region: Override the default region when making STS API
82
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
83
+ :param pulumi.Input[_builtins.bool] use_sts_region_from_client: Available in Vault v1.15+. If set,
84
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
85
+ specified in the client request headers for IAM-based authentication.
86
+ This can be useful when you have client requests coming from different
87
+ regions and want flexibility in which regional STS API is used.
88
+ """
89
+ if access_key is not None:
90
+ pulumi.set(__self__, "access_key", access_key)
91
+ if allowed_sts_header_values is not None:
92
+ pulumi.set(__self__, "allowed_sts_header_values", allowed_sts_header_values)
93
+ if backend is not None:
94
+ pulumi.set(__self__, "backend", backend)
95
+ if disable_automated_rotation is not None:
96
+ pulumi.set(__self__, "disable_automated_rotation", disable_automated_rotation)
97
+ if ec2_endpoint is not None:
98
+ pulumi.set(__self__, "ec2_endpoint", ec2_endpoint)
99
+ if iam_endpoint is not None:
100
+ pulumi.set(__self__, "iam_endpoint", iam_endpoint)
101
+ if iam_server_id_header_value is not None:
102
+ pulumi.set(__self__, "iam_server_id_header_value", iam_server_id_header_value)
103
+ if identity_token_audience is not None:
104
+ pulumi.set(__self__, "identity_token_audience", identity_token_audience)
105
+ if identity_token_ttl is not None:
106
+ pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
107
+ if max_retries is not None:
108
+ pulumi.set(__self__, "max_retries", max_retries)
109
+ if namespace is not None:
110
+ pulumi.set(__self__, "namespace", namespace)
111
+ if role_arn is not None:
112
+ pulumi.set(__self__, "role_arn", role_arn)
113
+ if rotation_period is not None:
114
+ pulumi.set(__self__, "rotation_period", rotation_period)
115
+ if rotation_schedule is not None:
116
+ pulumi.set(__self__, "rotation_schedule", rotation_schedule)
117
+ if rotation_window is not None:
118
+ pulumi.set(__self__, "rotation_window", rotation_window)
119
+ if secret_key is not None:
120
+ pulumi.set(__self__, "secret_key", secret_key)
121
+ if sts_endpoint is not None:
122
+ pulumi.set(__self__, "sts_endpoint", sts_endpoint)
123
+ if sts_region is not None:
124
+ pulumi.set(__self__, "sts_region", sts_region)
125
+ if use_sts_region_from_client is not None:
126
+ pulumi.set(__self__, "use_sts_region_from_client", use_sts_region_from_client)
127
+
128
+ @_builtins.property
129
+ @pulumi.getter(name="accessKey")
130
+ def access_key(self) -> Optional[pulumi.Input[_builtins.str]]:
131
+ """
132
+ The AWS access key that Vault should use for the
133
+ auth backend. Mutually exclusive with `identity_token_audience`.
134
+ """
135
+ return pulumi.get(self, "access_key")
136
+
137
+ @access_key.setter
138
+ def access_key(self, value: Optional[pulumi.Input[_builtins.str]]):
139
+ pulumi.set(self, "access_key", value)
140
+
141
+ @_builtins.property
142
+ @pulumi.getter(name="allowedStsHeaderValues")
143
+ def allowed_sts_header_values(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
144
+ """
145
+ List of additional headers that are allowed to be in STS request headers.
146
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
147
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
148
+ """
149
+ return pulumi.get(self, "allowed_sts_header_values")
150
+
151
+ @allowed_sts_header_values.setter
152
+ def allowed_sts_header_values(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
153
+ pulumi.set(self, "allowed_sts_header_values", value)
154
+
155
+ @_builtins.property
156
+ @pulumi.getter
157
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
158
+ """
159
+ The path the AWS auth backend being configured was
160
+ mounted at. Defaults to `aws`.
161
+ """
162
+ return pulumi.get(self, "backend")
163
+
164
+ @backend.setter
165
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
166
+ pulumi.set(self, "backend", value)
167
+
168
+ @_builtins.property
169
+ @pulumi.getter(name="disableAutomatedRotation")
170
+ def disable_automated_rotation(self) -> Optional[pulumi.Input[_builtins.bool]]:
171
+ """
172
+ Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
173
+ """
174
+ return pulumi.get(self, "disable_automated_rotation")
175
+
176
+ @disable_automated_rotation.setter
177
+ def disable_automated_rotation(self, value: Optional[pulumi.Input[_builtins.bool]]):
178
+ pulumi.set(self, "disable_automated_rotation", value)
179
+
180
+ @_builtins.property
181
+ @pulumi.getter(name="ec2Endpoint")
182
+ def ec2_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
183
+ """
184
+ Override the URL Vault uses when making EC2 API
185
+ calls.
186
+ """
187
+ return pulumi.get(self, "ec2_endpoint")
188
+
189
+ @ec2_endpoint.setter
190
+ def ec2_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
191
+ pulumi.set(self, "ec2_endpoint", value)
192
+
193
+ @_builtins.property
194
+ @pulumi.getter(name="iamEndpoint")
195
+ def iam_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
196
+ """
197
+ Override the URL Vault uses when making IAM API
198
+ calls.
199
+ """
200
+ return pulumi.get(self, "iam_endpoint")
201
+
202
+ @iam_endpoint.setter
203
+ def iam_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
204
+ pulumi.set(self, "iam_endpoint", value)
205
+
206
+ @_builtins.property
207
+ @pulumi.getter(name="iamServerIdHeaderValue")
208
+ def iam_server_id_header_value(self) -> Optional[pulumi.Input[_builtins.str]]:
209
+ """
210
+ The value to require in the
211
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
212
+ that are used in the IAM auth method.
213
+ """
214
+ return pulumi.get(self, "iam_server_id_header_value")
215
+
216
+ @iam_server_id_header_value.setter
217
+ def iam_server_id_header_value(self, value: Optional[pulumi.Input[_builtins.str]]):
218
+ pulumi.set(self, "iam_server_id_header_value", value)
219
+
220
+ @_builtins.property
221
+ @pulumi.getter(name="identityTokenAudience")
222
+ def identity_token_audience(self) -> Optional[pulumi.Input[_builtins.str]]:
223
+ """
224
+ The audience claim value. Mutually exclusive with `access_key`.
225
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
226
+ """
227
+ return pulumi.get(self, "identity_token_audience")
228
+
229
+ @identity_token_audience.setter
230
+ def identity_token_audience(self, value: Optional[pulumi.Input[_builtins.str]]):
231
+ pulumi.set(self, "identity_token_audience", value)
232
+
233
+ @_builtins.property
234
+ @pulumi.getter(name="identityTokenTtl")
235
+ def identity_token_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
236
+ """
237
+ The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
238
+ *Available only for Vault Enterprise*
239
+ """
240
+ return pulumi.get(self, "identity_token_ttl")
241
+
242
+ @identity_token_ttl.setter
243
+ def identity_token_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
244
+ pulumi.set(self, "identity_token_ttl", value)
245
+
246
+ @_builtins.property
247
+ @pulumi.getter(name="maxRetries")
248
+ def max_retries(self) -> Optional[pulumi.Input[_builtins.int]]:
249
+ """
250
+ Number of max retries the client should use for recoverable errors.
251
+ The default `-1` falls back to the AWS SDK's default behavior.
252
+ """
253
+ return pulumi.get(self, "max_retries")
254
+
255
+ @max_retries.setter
256
+ def max_retries(self, value: Optional[pulumi.Input[_builtins.int]]):
257
+ pulumi.set(self, "max_retries", value)
258
+
259
+ @_builtins.property
260
+ @pulumi.getter
261
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
262
+ """
263
+ The namespace to provision the resource in.
264
+ The value should not contain leading or trailing forward slashes.
265
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
266
+ *Available only for Vault Enterprise*.
267
+ """
268
+ return pulumi.get(self, "namespace")
269
+
270
+ @namespace.setter
271
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
272
+ pulumi.set(self, "namespace", value)
273
+
274
+ @_builtins.property
275
+ @pulumi.getter(name="roleArn")
276
+ def role_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
277
+ """
278
+ Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
279
+ *Available only for Vault Enterprise*
280
+ """
281
+ return pulumi.get(self, "role_arn")
282
+
283
+ @role_arn.setter
284
+ def role_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
285
+ pulumi.set(self, "role_arn", value)
286
+
287
+ @_builtins.property
288
+ @pulumi.getter(name="rotationPeriod")
289
+ def rotation_period(self) -> Optional[pulumi.Input[_builtins.int]]:
290
+ """
291
+ The amount of time in seconds Vault should wait before rotating the root credential.
292
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
293
+ """
294
+ return pulumi.get(self, "rotation_period")
295
+
296
+ @rotation_period.setter
297
+ def rotation_period(self, value: Optional[pulumi.Input[_builtins.int]]):
298
+ pulumi.set(self, "rotation_period", value)
299
+
300
+ @_builtins.property
301
+ @pulumi.getter(name="rotationSchedule")
302
+ def rotation_schedule(self) -> Optional[pulumi.Input[_builtins.str]]:
303
+ """
304
+ The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
305
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
306
+ """
307
+ return pulumi.get(self, "rotation_schedule")
308
+
309
+ @rotation_schedule.setter
310
+ def rotation_schedule(self, value: Optional[pulumi.Input[_builtins.str]]):
311
+ pulumi.set(self, "rotation_schedule", value)
312
+
313
+ @_builtins.property
314
+ @pulumi.getter(name="rotationWindow")
315
+ def rotation_window(self) -> Optional[pulumi.Input[_builtins.int]]:
316
+ """
317
+ The maximum amount of time in seconds allowed to complete
318
+ a rotation when a scheduled token rotation occurs. The default rotation window is
319
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
320
+ """
321
+ return pulumi.get(self, "rotation_window")
322
+
323
+ @rotation_window.setter
324
+ def rotation_window(self, value: Optional[pulumi.Input[_builtins.int]]):
325
+ pulumi.set(self, "rotation_window", value)
326
+
327
+ @_builtins.property
328
+ @pulumi.getter(name="secretKey")
329
+ def secret_key(self) -> Optional[pulumi.Input[_builtins.str]]:
330
+ """
331
+ The AWS secret key that Vault should use for the
332
+ auth backend.
333
+ """
334
+ return pulumi.get(self, "secret_key")
335
+
336
+ @secret_key.setter
337
+ def secret_key(self, value: Optional[pulumi.Input[_builtins.str]]):
338
+ pulumi.set(self, "secret_key", value)
339
+
340
+ @_builtins.property
341
+ @pulumi.getter(name="stsEndpoint")
342
+ def sts_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
343
+ """
344
+ Override the URL Vault uses when making STS API
345
+ calls.
346
+ """
347
+ return pulumi.get(self, "sts_endpoint")
348
+
349
+ @sts_endpoint.setter
350
+ def sts_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
351
+ pulumi.set(self, "sts_endpoint", value)
352
+
353
+ @_builtins.property
354
+ @pulumi.getter(name="stsRegion")
355
+ def sts_region(self) -> Optional[pulumi.Input[_builtins.str]]:
356
+ """
357
+ Override the default region when making STS API
358
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
359
+ """
360
+ return pulumi.get(self, "sts_region")
361
+
362
+ @sts_region.setter
363
+ def sts_region(self, value: Optional[pulumi.Input[_builtins.str]]):
364
+ pulumi.set(self, "sts_region", value)
365
+
366
+ @_builtins.property
367
+ @pulumi.getter(name="useStsRegionFromClient")
368
+ def use_sts_region_from_client(self) -> Optional[pulumi.Input[_builtins.bool]]:
369
+ """
370
+ Available in Vault v1.15+. If set,
371
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
372
+ specified in the client request headers for IAM-based authentication.
373
+ This can be useful when you have client requests coming from different
374
+ regions and want flexibility in which regional STS API is used.
375
+ """
376
+ return pulumi.get(self, "use_sts_region_from_client")
377
+
378
+ @use_sts_region_from_client.setter
379
+ def use_sts_region_from_client(self, value: Optional[pulumi.Input[_builtins.bool]]):
380
+ pulumi.set(self, "use_sts_region_from_client", value)
381
+
382
+
383
+ @pulumi.input_type
384
+ class _AuthBackendClientState:
385
+ def __init__(__self__, *,
386
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
387
+ allowed_sts_header_values: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
388
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
389
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
390
+ ec2_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
391
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
392
+ iam_server_id_header_value: Optional[pulumi.Input[_builtins.str]] = None,
393
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
394
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
395
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
396
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
397
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
398
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
399
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
400
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
401
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
402
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
403
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
404
+ use_sts_region_from_client: Optional[pulumi.Input[_builtins.bool]] = None):
405
+ """
406
+ Input properties used for looking up and filtering AuthBackendClient resources.
407
+ :param pulumi.Input[_builtins.str] access_key: The AWS access key that Vault should use for the
408
+ auth backend. Mutually exclusive with `identity_token_audience`.
409
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_sts_header_values: List of additional headers that are allowed to be in STS request headers.
410
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
411
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
412
+ :param pulumi.Input[_builtins.str] backend: The path the AWS auth backend being configured was
413
+ mounted at. Defaults to `aws`.
414
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
415
+ :param pulumi.Input[_builtins.str] ec2_endpoint: Override the URL Vault uses when making EC2 API
416
+ calls.
417
+ :param pulumi.Input[_builtins.str] iam_endpoint: Override the URL Vault uses when making IAM API
418
+ calls.
419
+ :param pulumi.Input[_builtins.str] iam_server_id_header_value: The value to require in the
420
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
421
+ that are used in the IAM auth method.
422
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
423
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
424
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
425
+ *Available only for Vault Enterprise*
426
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
427
+ The default `-1` falls back to the AWS SDK's default behavior.
428
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
429
+ The value should not contain leading or trailing forward slashes.
430
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
431
+ *Available only for Vault Enterprise*.
432
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
433
+ *Available only for Vault Enterprise*
434
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
435
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
436
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
437
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
438
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
439
+ a rotation when a scheduled token rotation occurs. The default rotation window is
440
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
441
+ :param pulumi.Input[_builtins.str] secret_key: The AWS secret key that Vault should use for the
442
+ auth backend.
443
+ :param pulumi.Input[_builtins.str] sts_endpoint: Override the URL Vault uses when making STS API
444
+ calls.
445
+ :param pulumi.Input[_builtins.str] sts_region: Override the default region when making STS API
446
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
447
+ :param pulumi.Input[_builtins.bool] use_sts_region_from_client: Available in Vault v1.15+. If set,
448
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
449
+ specified in the client request headers for IAM-based authentication.
450
+ This can be useful when you have client requests coming from different
451
+ regions and want flexibility in which regional STS API is used.
452
+ """
453
+ if access_key is not None:
454
+ pulumi.set(__self__, "access_key", access_key)
455
+ if allowed_sts_header_values is not None:
456
+ pulumi.set(__self__, "allowed_sts_header_values", allowed_sts_header_values)
457
+ if backend is not None:
458
+ pulumi.set(__self__, "backend", backend)
459
+ if disable_automated_rotation is not None:
460
+ pulumi.set(__self__, "disable_automated_rotation", disable_automated_rotation)
461
+ if ec2_endpoint is not None:
462
+ pulumi.set(__self__, "ec2_endpoint", ec2_endpoint)
463
+ if iam_endpoint is not None:
464
+ pulumi.set(__self__, "iam_endpoint", iam_endpoint)
465
+ if iam_server_id_header_value is not None:
466
+ pulumi.set(__self__, "iam_server_id_header_value", iam_server_id_header_value)
467
+ if identity_token_audience is not None:
468
+ pulumi.set(__self__, "identity_token_audience", identity_token_audience)
469
+ if identity_token_ttl is not None:
470
+ pulumi.set(__self__, "identity_token_ttl", identity_token_ttl)
471
+ if max_retries is not None:
472
+ pulumi.set(__self__, "max_retries", max_retries)
473
+ if namespace is not None:
474
+ pulumi.set(__self__, "namespace", namespace)
475
+ if role_arn is not None:
476
+ pulumi.set(__self__, "role_arn", role_arn)
477
+ if rotation_period is not None:
478
+ pulumi.set(__self__, "rotation_period", rotation_period)
479
+ if rotation_schedule is not None:
480
+ pulumi.set(__self__, "rotation_schedule", rotation_schedule)
481
+ if rotation_window is not None:
482
+ pulumi.set(__self__, "rotation_window", rotation_window)
483
+ if secret_key is not None:
484
+ pulumi.set(__self__, "secret_key", secret_key)
485
+ if sts_endpoint is not None:
486
+ pulumi.set(__self__, "sts_endpoint", sts_endpoint)
487
+ if sts_region is not None:
488
+ pulumi.set(__self__, "sts_region", sts_region)
489
+ if use_sts_region_from_client is not None:
490
+ pulumi.set(__self__, "use_sts_region_from_client", use_sts_region_from_client)
491
+
492
+ @_builtins.property
493
+ @pulumi.getter(name="accessKey")
494
+ def access_key(self) -> Optional[pulumi.Input[_builtins.str]]:
495
+ """
496
+ The AWS access key that Vault should use for the
497
+ auth backend. Mutually exclusive with `identity_token_audience`.
498
+ """
499
+ return pulumi.get(self, "access_key")
500
+
501
+ @access_key.setter
502
+ def access_key(self, value: Optional[pulumi.Input[_builtins.str]]):
503
+ pulumi.set(self, "access_key", value)
504
+
505
+ @_builtins.property
506
+ @pulumi.getter(name="allowedStsHeaderValues")
507
+ def allowed_sts_header_values(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
508
+ """
509
+ List of additional headers that are allowed to be in STS request headers.
510
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
511
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
512
+ """
513
+ return pulumi.get(self, "allowed_sts_header_values")
514
+
515
+ @allowed_sts_header_values.setter
516
+ def allowed_sts_header_values(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
517
+ pulumi.set(self, "allowed_sts_header_values", value)
518
+
519
+ @_builtins.property
520
+ @pulumi.getter
521
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
522
+ """
523
+ The path the AWS auth backend being configured was
524
+ mounted at. Defaults to `aws`.
525
+ """
526
+ return pulumi.get(self, "backend")
527
+
528
+ @backend.setter
529
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
530
+ pulumi.set(self, "backend", value)
531
+
532
+ @_builtins.property
533
+ @pulumi.getter(name="disableAutomatedRotation")
534
+ def disable_automated_rotation(self) -> Optional[pulumi.Input[_builtins.bool]]:
535
+ """
536
+ Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
537
+ """
538
+ return pulumi.get(self, "disable_automated_rotation")
539
+
540
+ @disable_automated_rotation.setter
541
+ def disable_automated_rotation(self, value: Optional[pulumi.Input[_builtins.bool]]):
542
+ pulumi.set(self, "disable_automated_rotation", value)
543
+
544
+ @_builtins.property
545
+ @pulumi.getter(name="ec2Endpoint")
546
+ def ec2_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
547
+ """
548
+ Override the URL Vault uses when making EC2 API
549
+ calls.
550
+ """
551
+ return pulumi.get(self, "ec2_endpoint")
552
+
553
+ @ec2_endpoint.setter
554
+ def ec2_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
555
+ pulumi.set(self, "ec2_endpoint", value)
556
+
557
+ @_builtins.property
558
+ @pulumi.getter(name="iamEndpoint")
559
+ def iam_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
560
+ """
561
+ Override the URL Vault uses when making IAM API
562
+ calls.
563
+ """
564
+ return pulumi.get(self, "iam_endpoint")
565
+
566
+ @iam_endpoint.setter
567
+ def iam_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
568
+ pulumi.set(self, "iam_endpoint", value)
569
+
570
+ @_builtins.property
571
+ @pulumi.getter(name="iamServerIdHeaderValue")
572
+ def iam_server_id_header_value(self) -> Optional[pulumi.Input[_builtins.str]]:
573
+ """
574
+ The value to require in the
575
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
576
+ that are used in the IAM auth method.
577
+ """
578
+ return pulumi.get(self, "iam_server_id_header_value")
579
+
580
+ @iam_server_id_header_value.setter
581
+ def iam_server_id_header_value(self, value: Optional[pulumi.Input[_builtins.str]]):
582
+ pulumi.set(self, "iam_server_id_header_value", value)
583
+
584
+ @_builtins.property
585
+ @pulumi.getter(name="identityTokenAudience")
586
+ def identity_token_audience(self) -> Optional[pulumi.Input[_builtins.str]]:
587
+ """
588
+ The audience claim value. Mutually exclusive with `access_key`.
589
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
590
+ """
591
+ return pulumi.get(self, "identity_token_audience")
592
+
593
+ @identity_token_audience.setter
594
+ def identity_token_audience(self, value: Optional[pulumi.Input[_builtins.str]]):
595
+ pulumi.set(self, "identity_token_audience", value)
596
+
597
+ @_builtins.property
598
+ @pulumi.getter(name="identityTokenTtl")
599
+ def identity_token_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
600
+ """
601
+ The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
602
+ *Available only for Vault Enterprise*
603
+ """
604
+ return pulumi.get(self, "identity_token_ttl")
605
+
606
+ @identity_token_ttl.setter
607
+ def identity_token_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
608
+ pulumi.set(self, "identity_token_ttl", value)
609
+
610
+ @_builtins.property
611
+ @pulumi.getter(name="maxRetries")
612
+ def max_retries(self) -> Optional[pulumi.Input[_builtins.int]]:
613
+ """
614
+ Number of max retries the client should use for recoverable errors.
615
+ The default `-1` falls back to the AWS SDK's default behavior.
616
+ """
617
+ return pulumi.get(self, "max_retries")
618
+
619
+ @max_retries.setter
620
+ def max_retries(self, value: Optional[pulumi.Input[_builtins.int]]):
621
+ pulumi.set(self, "max_retries", value)
622
+
623
+ @_builtins.property
624
+ @pulumi.getter
625
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
626
+ """
627
+ The namespace to provision the resource in.
628
+ The value should not contain leading or trailing forward slashes.
629
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
630
+ *Available only for Vault Enterprise*.
631
+ """
632
+ return pulumi.get(self, "namespace")
633
+
634
+ @namespace.setter
635
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
636
+ pulumi.set(self, "namespace", value)
637
+
638
+ @_builtins.property
639
+ @pulumi.getter(name="roleArn")
640
+ def role_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
641
+ """
642
+ Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
643
+ *Available only for Vault Enterprise*
644
+ """
645
+ return pulumi.get(self, "role_arn")
646
+
647
+ @role_arn.setter
648
+ def role_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
649
+ pulumi.set(self, "role_arn", value)
650
+
651
+ @_builtins.property
652
+ @pulumi.getter(name="rotationPeriod")
653
+ def rotation_period(self) -> Optional[pulumi.Input[_builtins.int]]:
654
+ """
655
+ The amount of time in seconds Vault should wait before rotating the root credential.
656
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
657
+ """
658
+ return pulumi.get(self, "rotation_period")
659
+
660
+ @rotation_period.setter
661
+ def rotation_period(self, value: Optional[pulumi.Input[_builtins.int]]):
662
+ pulumi.set(self, "rotation_period", value)
663
+
664
+ @_builtins.property
665
+ @pulumi.getter(name="rotationSchedule")
666
+ def rotation_schedule(self) -> Optional[pulumi.Input[_builtins.str]]:
667
+ """
668
+ The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
669
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
670
+ """
671
+ return pulumi.get(self, "rotation_schedule")
672
+
673
+ @rotation_schedule.setter
674
+ def rotation_schedule(self, value: Optional[pulumi.Input[_builtins.str]]):
675
+ pulumi.set(self, "rotation_schedule", value)
676
+
677
+ @_builtins.property
678
+ @pulumi.getter(name="rotationWindow")
679
+ def rotation_window(self) -> Optional[pulumi.Input[_builtins.int]]:
680
+ """
681
+ The maximum amount of time in seconds allowed to complete
682
+ a rotation when a scheduled token rotation occurs. The default rotation window is
683
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
684
+ """
685
+ return pulumi.get(self, "rotation_window")
686
+
687
+ @rotation_window.setter
688
+ def rotation_window(self, value: Optional[pulumi.Input[_builtins.int]]):
689
+ pulumi.set(self, "rotation_window", value)
690
+
691
+ @_builtins.property
692
+ @pulumi.getter(name="secretKey")
693
+ def secret_key(self) -> Optional[pulumi.Input[_builtins.str]]:
694
+ """
695
+ The AWS secret key that Vault should use for the
696
+ auth backend.
697
+ """
698
+ return pulumi.get(self, "secret_key")
699
+
700
+ @secret_key.setter
701
+ def secret_key(self, value: Optional[pulumi.Input[_builtins.str]]):
702
+ pulumi.set(self, "secret_key", value)
703
+
704
+ @_builtins.property
705
+ @pulumi.getter(name="stsEndpoint")
706
+ def sts_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
707
+ """
708
+ Override the URL Vault uses when making STS API
709
+ calls.
710
+ """
711
+ return pulumi.get(self, "sts_endpoint")
712
+
713
+ @sts_endpoint.setter
714
+ def sts_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
715
+ pulumi.set(self, "sts_endpoint", value)
716
+
717
+ @_builtins.property
718
+ @pulumi.getter(name="stsRegion")
719
+ def sts_region(self) -> Optional[pulumi.Input[_builtins.str]]:
720
+ """
721
+ Override the default region when making STS API
722
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
723
+ """
724
+ return pulumi.get(self, "sts_region")
725
+
726
+ @sts_region.setter
727
+ def sts_region(self, value: Optional[pulumi.Input[_builtins.str]]):
728
+ pulumi.set(self, "sts_region", value)
729
+
730
+ @_builtins.property
731
+ @pulumi.getter(name="useStsRegionFromClient")
732
+ def use_sts_region_from_client(self) -> Optional[pulumi.Input[_builtins.bool]]:
733
+ """
734
+ Available in Vault v1.15+. If set,
735
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
736
+ specified in the client request headers for IAM-based authentication.
737
+ This can be useful when you have client requests coming from different
738
+ regions and want flexibility in which regional STS API is used.
739
+ """
740
+ return pulumi.get(self, "use_sts_region_from_client")
741
+
742
+ @use_sts_region_from_client.setter
743
+ def use_sts_region_from_client(self, value: Optional[pulumi.Input[_builtins.bool]]):
744
+ pulumi.set(self, "use_sts_region_from_client", value)
745
+
746
+
747
+ @pulumi.type_token("vault:aws/authBackendClient:AuthBackendClient")
748
+ class AuthBackendClient(pulumi.CustomResource):
749
+ @overload
750
+ def __init__(__self__,
751
+ resource_name: str,
752
+ opts: Optional[pulumi.ResourceOptions] = None,
753
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
754
+ allowed_sts_header_values: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
755
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
756
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
757
+ ec2_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
758
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
759
+ iam_server_id_header_value: Optional[pulumi.Input[_builtins.str]] = None,
760
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
761
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
762
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
763
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
764
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
765
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
766
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
767
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
768
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
769
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
770
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
771
+ use_sts_region_from_client: Optional[pulumi.Input[_builtins.bool]] = None,
772
+ __props__=None):
773
+ """
774
+ ## Example Usage
775
+
776
+ You can setup the AWS auth engine with Workload Identity Federation (WIF) for a secret-less configuration:
777
+ ```python
778
+ import pulumi
779
+ import pulumi_vault as vault
780
+
781
+ example = vault.AuthBackend("example", type="aws")
782
+ example_auth_backend_client = vault.aws.AuthBackendClient("example",
783
+ identity_token_audience="<TOKEN_AUDIENCE>",
784
+ identity_token_ttl="<TOKEN_TTL>",
785
+ role_arn="<AWS_ROLE_ARN>",
786
+ rotation_schedule="0 * * * SAT",
787
+ rotation_window=3600)
788
+ ```
789
+
790
+ ```python
791
+ import pulumi
792
+ import pulumi_vault as vault
793
+
794
+ example = vault.AuthBackend("example", type="aws")
795
+ example_auth_backend_client = vault.aws.AuthBackendClient("example",
796
+ backend=example.path,
797
+ access_key="INSERT_AWS_ACCESS_KEY",
798
+ secret_key="INSERT_AWS_SECRET_KEY",
799
+ rotation_schedule="0 * * * SAT",
800
+ rotation_window=3600,
801
+ allowed_sts_header_values=[
802
+ "X-Custom-Header",
803
+ "X-Another-Header",
804
+ ])
805
+ ```
806
+
807
+ ## Import
808
+
809
+ AWS auth backend clients can be imported using `auth/`, the `backend` path, and `/config/client` e.g.
810
+
811
+ ```sh
812
+ $ pulumi import vault:aws/authBackendClient:AuthBackendClient example auth/aws/config/client
813
+ ```
814
+
815
+ :param str resource_name: The name of the resource.
816
+ :param pulumi.ResourceOptions opts: Options for the resource.
817
+ :param pulumi.Input[_builtins.str] access_key: The AWS access key that Vault should use for the
818
+ auth backend. Mutually exclusive with `identity_token_audience`.
819
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_sts_header_values: List of additional headers that are allowed to be in STS request headers.
820
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
821
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
822
+ :param pulumi.Input[_builtins.str] backend: The path the AWS auth backend being configured was
823
+ mounted at. Defaults to `aws`.
824
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
825
+ :param pulumi.Input[_builtins.str] ec2_endpoint: Override the URL Vault uses when making EC2 API
826
+ calls.
827
+ :param pulumi.Input[_builtins.str] iam_endpoint: Override the URL Vault uses when making IAM API
828
+ calls.
829
+ :param pulumi.Input[_builtins.str] iam_server_id_header_value: The value to require in the
830
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
831
+ that are used in the IAM auth method.
832
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
833
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
834
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
835
+ *Available only for Vault Enterprise*
836
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
837
+ The default `-1` falls back to the AWS SDK's default behavior.
838
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
839
+ The value should not contain leading or trailing forward slashes.
840
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
841
+ *Available only for Vault Enterprise*.
842
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
843
+ *Available only for Vault Enterprise*
844
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
845
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
846
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
847
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
848
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
849
+ a rotation when a scheduled token rotation occurs. The default rotation window is
850
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
851
+ :param pulumi.Input[_builtins.str] secret_key: The AWS secret key that Vault should use for the
852
+ auth backend.
853
+ :param pulumi.Input[_builtins.str] sts_endpoint: Override the URL Vault uses when making STS API
854
+ calls.
855
+ :param pulumi.Input[_builtins.str] sts_region: Override the default region when making STS API
856
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
857
+ :param pulumi.Input[_builtins.bool] use_sts_region_from_client: Available in Vault v1.15+. If set,
858
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
859
+ specified in the client request headers for IAM-based authentication.
860
+ This can be useful when you have client requests coming from different
861
+ regions and want flexibility in which regional STS API is used.
862
+ """
863
+ ...
864
+ @overload
865
+ def __init__(__self__,
866
+ resource_name: str,
867
+ args: Optional[AuthBackendClientArgs] = None,
868
+ opts: Optional[pulumi.ResourceOptions] = None):
869
+ """
870
+ ## Example Usage
871
+
872
+ You can setup the AWS auth engine with Workload Identity Federation (WIF) for a secret-less configuration:
873
+ ```python
874
+ import pulumi
875
+ import pulumi_vault as vault
876
+
877
+ example = vault.AuthBackend("example", type="aws")
878
+ example_auth_backend_client = vault.aws.AuthBackendClient("example",
879
+ identity_token_audience="<TOKEN_AUDIENCE>",
880
+ identity_token_ttl="<TOKEN_TTL>",
881
+ role_arn="<AWS_ROLE_ARN>",
882
+ rotation_schedule="0 * * * SAT",
883
+ rotation_window=3600)
884
+ ```
885
+
886
+ ```python
887
+ import pulumi
888
+ import pulumi_vault as vault
889
+
890
+ example = vault.AuthBackend("example", type="aws")
891
+ example_auth_backend_client = vault.aws.AuthBackendClient("example",
892
+ backend=example.path,
893
+ access_key="INSERT_AWS_ACCESS_KEY",
894
+ secret_key="INSERT_AWS_SECRET_KEY",
895
+ rotation_schedule="0 * * * SAT",
896
+ rotation_window=3600,
897
+ allowed_sts_header_values=[
898
+ "X-Custom-Header",
899
+ "X-Another-Header",
900
+ ])
901
+ ```
902
+
903
+ ## Import
904
+
905
+ AWS auth backend clients can be imported using `auth/`, the `backend` path, and `/config/client` e.g.
906
+
907
+ ```sh
908
+ $ pulumi import vault:aws/authBackendClient:AuthBackendClient example auth/aws/config/client
909
+ ```
910
+
911
+ :param str resource_name: The name of the resource.
912
+ :param AuthBackendClientArgs args: The arguments to use to populate this resource's properties.
913
+ :param pulumi.ResourceOptions opts: Options for the resource.
914
+ """
915
+ ...
916
+ def __init__(__self__, resource_name: str, *args, **kwargs):
917
+ resource_args, opts = _utilities.get_resource_args_opts(AuthBackendClientArgs, pulumi.ResourceOptions, *args, **kwargs)
918
+ if resource_args is not None:
919
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
920
+ else:
921
+ __self__._internal_init(resource_name, *args, **kwargs)
922
+
923
+ def _internal_init(__self__,
924
+ resource_name: str,
925
+ opts: Optional[pulumi.ResourceOptions] = None,
926
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
927
+ allowed_sts_header_values: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
928
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
929
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
930
+ ec2_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
931
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
932
+ iam_server_id_header_value: Optional[pulumi.Input[_builtins.str]] = None,
933
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
934
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
935
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
936
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
937
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
938
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
939
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
940
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
941
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
942
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
943
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
944
+ use_sts_region_from_client: Optional[pulumi.Input[_builtins.bool]] = None,
945
+ __props__=None):
946
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
947
+ if not isinstance(opts, pulumi.ResourceOptions):
948
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
949
+ if opts.id is None:
950
+ if __props__ is not None:
951
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
952
+ __props__ = AuthBackendClientArgs.__new__(AuthBackendClientArgs)
953
+
954
+ __props__.__dict__["access_key"] = None if access_key is None else pulumi.Output.secret(access_key)
955
+ __props__.__dict__["allowed_sts_header_values"] = allowed_sts_header_values
956
+ __props__.__dict__["backend"] = backend
957
+ __props__.__dict__["disable_automated_rotation"] = disable_automated_rotation
958
+ __props__.__dict__["ec2_endpoint"] = ec2_endpoint
959
+ __props__.__dict__["iam_endpoint"] = iam_endpoint
960
+ __props__.__dict__["iam_server_id_header_value"] = iam_server_id_header_value
961
+ __props__.__dict__["identity_token_audience"] = identity_token_audience
962
+ __props__.__dict__["identity_token_ttl"] = identity_token_ttl
963
+ __props__.__dict__["max_retries"] = max_retries
964
+ __props__.__dict__["namespace"] = namespace
965
+ __props__.__dict__["role_arn"] = role_arn
966
+ __props__.__dict__["rotation_period"] = rotation_period
967
+ __props__.__dict__["rotation_schedule"] = rotation_schedule
968
+ __props__.__dict__["rotation_window"] = rotation_window
969
+ __props__.__dict__["secret_key"] = None if secret_key is None else pulumi.Output.secret(secret_key)
970
+ __props__.__dict__["sts_endpoint"] = sts_endpoint
971
+ __props__.__dict__["sts_region"] = sts_region
972
+ __props__.__dict__["use_sts_region_from_client"] = use_sts_region_from_client
973
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["accessKey", "secretKey"])
974
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
975
+ super(AuthBackendClient, __self__).__init__(
976
+ 'vault:aws/authBackendClient:AuthBackendClient',
977
+ resource_name,
978
+ __props__,
979
+ opts)
980
+
981
+ @staticmethod
982
+ def get(resource_name: str,
983
+ id: pulumi.Input[str],
984
+ opts: Optional[pulumi.ResourceOptions] = None,
985
+ access_key: Optional[pulumi.Input[_builtins.str]] = None,
986
+ allowed_sts_header_values: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
987
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
988
+ disable_automated_rotation: Optional[pulumi.Input[_builtins.bool]] = None,
989
+ ec2_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
990
+ iam_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
991
+ iam_server_id_header_value: Optional[pulumi.Input[_builtins.str]] = None,
992
+ identity_token_audience: Optional[pulumi.Input[_builtins.str]] = None,
993
+ identity_token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
994
+ max_retries: Optional[pulumi.Input[_builtins.int]] = None,
995
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
996
+ role_arn: Optional[pulumi.Input[_builtins.str]] = None,
997
+ rotation_period: Optional[pulumi.Input[_builtins.int]] = None,
998
+ rotation_schedule: Optional[pulumi.Input[_builtins.str]] = None,
999
+ rotation_window: Optional[pulumi.Input[_builtins.int]] = None,
1000
+ secret_key: Optional[pulumi.Input[_builtins.str]] = None,
1001
+ sts_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1002
+ sts_region: Optional[pulumi.Input[_builtins.str]] = None,
1003
+ use_sts_region_from_client: Optional[pulumi.Input[_builtins.bool]] = None) -> 'AuthBackendClient':
1004
+ """
1005
+ Get an existing AuthBackendClient resource's state with the given name, id, and optional extra
1006
+ properties used to qualify the lookup.
1007
+
1008
+ :param str resource_name: The unique name of the resulting resource.
1009
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1010
+ :param pulumi.ResourceOptions opts: Options for the resource.
1011
+ :param pulumi.Input[_builtins.str] access_key: The AWS access key that Vault should use for the
1012
+ auth backend. Mutually exclusive with `identity_token_audience`.
1013
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_sts_header_values: List of additional headers that are allowed to be in STS request headers.
1014
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
1015
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
1016
+ :param pulumi.Input[_builtins.str] backend: The path the AWS auth backend being configured was
1017
+ mounted at. Defaults to `aws`.
1018
+ :param pulumi.Input[_builtins.bool] disable_automated_rotation: Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
1019
+ :param pulumi.Input[_builtins.str] ec2_endpoint: Override the URL Vault uses when making EC2 API
1020
+ calls.
1021
+ :param pulumi.Input[_builtins.str] iam_endpoint: Override the URL Vault uses when making IAM API
1022
+ calls.
1023
+ :param pulumi.Input[_builtins.str] iam_server_id_header_value: The value to require in the
1024
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
1025
+ that are used in the IAM auth method.
1026
+ :param pulumi.Input[_builtins.str] identity_token_audience: The audience claim value. Mutually exclusive with `access_key`.
1027
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
1028
+ :param pulumi.Input[_builtins.int] identity_token_ttl: The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
1029
+ *Available only for Vault Enterprise*
1030
+ :param pulumi.Input[_builtins.int] max_retries: Number of max retries the client should use for recoverable errors.
1031
+ The default `-1` falls back to the AWS SDK's default behavior.
1032
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1033
+ The value should not contain leading or trailing forward slashes.
1034
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1035
+ *Available only for Vault Enterprise*.
1036
+ :param pulumi.Input[_builtins.str] role_arn: Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
1037
+ *Available only for Vault Enterprise*
1038
+ :param pulumi.Input[_builtins.int] rotation_period: The amount of time in seconds Vault should wait before rotating the root credential.
1039
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
1040
+ :param pulumi.Input[_builtins.str] rotation_schedule: The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
1041
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
1042
+ :param pulumi.Input[_builtins.int] rotation_window: The maximum amount of time in seconds allowed to complete
1043
+ a rotation when a scheduled token rotation occurs. The default rotation window is
1044
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
1045
+ :param pulumi.Input[_builtins.str] secret_key: The AWS secret key that Vault should use for the
1046
+ auth backend.
1047
+ :param pulumi.Input[_builtins.str] sts_endpoint: Override the URL Vault uses when making STS API
1048
+ calls.
1049
+ :param pulumi.Input[_builtins.str] sts_region: Override the default region when making STS API
1050
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
1051
+ :param pulumi.Input[_builtins.bool] use_sts_region_from_client: Available in Vault v1.15+. If set,
1052
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
1053
+ specified in the client request headers for IAM-based authentication.
1054
+ This can be useful when you have client requests coming from different
1055
+ regions and want flexibility in which regional STS API is used.
1056
+ """
1057
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1058
+
1059
+ __props__ = _AuthBackendClientState.__new__(_AuthBackendClientState)
1060
+
1061
+ __props__.__dict__["access_key"] = access_key
1062
+ __props__.__dict__["allowed_sts_header_values"] = allowed_sts_header_values
1063
+ __props__.__dict__["backend"] = backend
1064
+ __props__.__dict__["disable_automated_rotation"] = disable_automated_rotation
1065
+ __props__.__dict__["ec2_endpoint"] = ec2_endpoint
1066
+ __props__.__dict__["iam_endpoint"] = iam_endpoint
1067
+ __props__.__dict__["iam_server_id_header_value"] = iam_server_id_header_value
1068
+ __props__.__dict__["identity_token_audience"] = identity_token_audience
1069
+ __props__.__dict__["identity_token_ttl"] = identity_token_ttl
1070
+ __props__.__dict__["max_retries"] = max_retries
1071
+ __props__.__dict__["namespace"] = namespace
1072
+ __props__.__dict__["role_arn"] = role_arn
1073
+ __props__.__dict__["rotation_period"] = rotation_period
1074
+ __props__.__dict__["rotation_schedule"] = rotation_schedule
1075
+ __props__.__dict__["rotation_window"] = rotation_window
1076
+ __props__.__dict__["secret_key"] = secret_key
1077
+ __props__.__dict__["sts_endpoint"] = sts_endpoint
1078
+ __props__.__dict__["sts_region"] = sts_region
1079
+ __props__.__dict__["use_sts_region_from_client"] = use_sts_region_from_client
1080
+ return AuthBackendClient(resource_name, opts=opts, __props__=__props__)
1081
+
1082
+ @_builtins.property
1083
+ @pulumi.getter(name="accessKey")
1084
+ def access_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1085
+ """
1086
+ The AWS access key that Vault should use for the
1087
+ auth backend. Mutually exclusive with `identity_token_audience`.
1088
+ """
1089
+ return pulumi.get(self, "access_key")
1090
+
1091
+ @_builtins.property
1092
+ @pulumi.getter(name="allowedStsHeaderValues")
1093
+ def allowed_sts_header_values(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1094
+ """
1095
+ List of additional headers that are allowed to be in STS request headers.
1096
+ The headers are automatically canonicalized (e.g., `content-type` becomes `Content-Type`). Duplicate values are automatically
1097
+ removed. This can be useful when you need to allow specific headers in STS requests for IAM-based authentication.
1098
+ """
1099
+ return pulumi.get(self, "allowed_sts_header_values")
1100
+
1101
+ @_builtins.property
1102
+ @pulumi.getter
1103
+ def backend(self) -> pulumi.Output[Optional[_builtins.str]]:
1104
+ """
1105
+ The path the AWS auth backend being configured was
1106
+ mounted at. Defaults to `aws`.
1107
+ """
1108
+ return pulumi.get(self, "backend")
1109
+
1110
+ @_builtins.property
1111
+ @pulumi.getter(name="disableAutomatedRotation")
1112
+ def disable_automated_rotation(self) -> pulumi.Output[Optional[_builtins.bool]]:
1113
+ """
1114
+ Cancels all upcoming rotations of the root credential until unset. Requires Vault Enterprise 1.19+.
1115
+ """
1116
+ return pulumi.get(self, "disable_automated_rotation")
1117
+
1118
+ @_builtins.property
1119
+ @pulumi.getter(name="ec2Endpoint")
1120
+ def ec2_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1121
+ """
1122
+ Override the URL Vault uses when making EC2 API
1123
+ calls.
1124
+ """
1125
+ return pulumi.get(self, "ec2_endpoint")
1126
+
1127
+ @_builtins.property
1128
+ @pulumi.getter(name="iamEndpoint")
1129
+ def iam_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1130
+ """
1131
+ Override the URL Vault uses when making IAM API
1132
+ calls.
1133
+ """
1134
+ return pulumi.get(self, "iam_endpoint")
1135
+
1136
+ @_builtins.property
1137
+ @pulumi.getter(name="iamServerIdHeaderValue")
1138
+ def iam_server_id_header_value(self) -> pulumi.Output[Optional[_builtins.str]]:
1139
+ """
1140
+ The value to require in the
1141
+ `X-Vault-AWS-IAM-Server-ID` header as part of `GetCallerIdentity` requests
1142
+ that are used in the IAM auth method.
1143
+ """
1144
+ return pulumi.get(self, "iam_server_id_header_value")
1145
+
1146
+ @_builtins.property
1147
+ @pulumi.getter(name="identityTokenAudience")
1148
+ def identity_token_audience(self) -> pulumi.Output[Optional[_builtins.str]]:
1149
+ """
1150
+ The audience claim value. Mutually exclusive with `access_key`.
1151
+ Requires Vault 1.17+. *Available only for Vault Enterprise*
1152
+ """
1153
+ return pulumi.get(self, "identity_token_audience")
1154
+
1155
+ @_builtins.property
1156
+ @pulumi.getter(name="identityTokenTtl")
1157
+ def identity_token_ttl(self) -> pulumi.Output[_builtins.int]:
1158
+ """
1159
+ The TTL of generated identity tokens in seconds. Requires Vault 1.17+.
1160
+ *Available only for Vault Enterprise*
1161
+ """
1162
+ return pulumi.get(self, "identity_token_ttl")
1163
+
1164
+ @_builtins.property
1165
+ @pulumi.getter(name="maxRetries")
1166
+ def max_retries(self) -> pulumi.Output[Optional[_builtins.int]]:
1167
+ """
1168
+ Number of max retries the client should use for recoverable errors.
1169
+ The default `-1` falls back to the AWS SDK's default behavior.
1170
+ """
1171
+ return pulumi.get(self, "max_retries")
1172
+
1173
+ @_builtins.property
1174
+ @pulumi.getter
1175
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
1176
+ """
1177
+ The namespace to provision the resource in.
1178
+ The value should not contain leading or trailing forward slashes.
1179
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1180
+ *Available only for Vault Enterprise*.
1181
+ """
1182
+ return pulumi.get(self, "namespace")
1183
+
1184
+ @_builtins.property
1185
+ @pulumi.getter(name="roleArn")
1186
+ def role_arn(self) -> pulumi.Output[Optional[_builtins.str]]:
1187
+ """
1188
+ Role ARN to assume for plugin identity token federation. Requires Vault 1.17+.
1189
+ *Available only for Vault Enterprise*
1190
+ """
1191
+ return pulumi.get(self, "role_arn")
1192
+
1193
+ @_builtins.property
1194
+ @pulumi.getter(name="rotationPeriod")
1195
+ def rotation_period(self) -> pulumi.Output[Optional[_builtins.int]]:
1196
+ """
1197
+ The amount of time in seconds Vault should wait before rotating the root credential.
1198
+ A zero value tells Vault not to rotate the root credential. The minimum rotation period is 10 seconds. Requires Vault Enterprise 1.19+.
1199
+ """
1200
+ return pulumi.get(self, "rotation_period")
1201
+
1202
+ @_builtins.property
1203
+ @pulumi.getter(name="rotationSchedule")
1204
+ def rotation_schedule(self) -> pulumi.Output[Optional[_builtins.str]]:
1205
+ """
1206
+ The schedule, in [cron-style time format](https://en.wikipedia.org/wiki/Cron),
1207
+ defining the schedule on which Vault should rotate the root token. Requires Vault Enterprise 1.19+.
1208
+ """
1209
+ return pulumi.get(self, "rotation_schedule")
1210
+
1211
+ @_builtins.property
1212
+ @pulumi.getter(name="rotationWindow")
1213
+ def rotation_window(self) -> pulumi.Output[Optional[_builtins.int]]:
1214
+ """
1215
+ The maximum amount of time in seconds allowed to complete
1216
+ a rotation when a scheduled token rotation occurs. The default rotation window is
1217
+ unbound and the minimum allowable window is `3600`. Requires Vault Enterprise 1.19+.
1218
+ """
1219
+ return pulumi.get(self, "rotation_window")
1220
+
1221
+ @_builtins.property
1222
+ @pulumi.getter(name="secretKey")
1223
+ def secret_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1224
+ """
1225
+ The AWS secret key that Vault should use for the
1226
+ auth backend.
1227
+ """
1228
+ return pulumi.get(self, "secret_key")
1229
+
1230
+ @_builtins.property
1231
+ @pulumi.getter(name="stsEndpoint")
1232
+ def sts_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1233
+ """
1234
+ Override the URL Vault uses when making STS API
1235
+ calls.
1236
+ """
1237
+ return pulumi.get(self, "sts_endpoint")
1238
+
1239
+ @_builtins.property
1240
+ @pulumi.getter(name="stsRegion")
1241
+ def sts_region(self) -> pulumi.Output[Optional[_builtins.str]]:
1242
+ """
1243
+ Override the default region when making STS API
1244
+ calls. The `sts_endpoint` argument must be set when using `sts_region`.
1245
+ """
1246
+ return pulumi.get(self, "sts_region")
1247
+
1248
+ @_builtins.property
1249
+ @pulumi.getter(name="useStsRegionFromClient")
1250
+ def use_sts_region_from_client(self) -> pulumi.Output[_builtins.bool]:
1251
+ """
1252
+ Available in Vault v1.15+. If set,
1253
+ overrides both `sts_endpoint` and `sts_region` to instead use the region
1254
+ specified in the client request headers for IAM-based authentication.
1255
+ This can be useful when you have client requests coming from different
1256
+ regions and want flexibility in which regional STS API is used.
1257
+ """
1258
+ return pulumi.get(self, "use_sts_region_from_client")
1259
+