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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. pulumi_vault/__init__.py +76 -0
  2. pulumi_vault/_inputs.py +560 -0
  3. pulumi_vault/_utilities.py +41 -5
  4. pulumi_vault/ad/get_access_credentials.py +26 -9
  5. pulumi_vault/ad/secret_backend.py +16 -142
  6. pulumi_vault/ad/secret_library.py +16 -9
  7. pulumi_vault/ad/secret_role.py +14 -9
  8. pulumi_vault/alicloud/auth_backend_role.py +76 -190
  9. pulumi_vault/approle/auth_backend_login.py +12 -7
  10. pulumi_vault/approle/auth_backend_role.py +77 -191
  11. pulumi_vault/approle/auth_backend_role_secret_id.py +106 -7
  12. pulumi_vault/approle/get_auth_backend_role_id.py +18 -5
  13. pulumi_vault/audit.py +30 -21
  14. pulumi_vault/audit_request_header.py +11 -2
  15. pulumi_vault/auth_backend.py +66 -14
  16. pulumi_vault/aws/auth_backend_cert.py +18 -9
  17. pulumi_vault/aws/auth_backend_client.py +267 -22
  18. pulumi_vault/aws/auth_backend_config_identity.py +14 -9
  19. pulumi_vault/aws/auth_backend_identity_whitelist.py +20 -15
  20. pulumi_vault/aws/auth_backend_login.py +19 -22
  21. pulumi_vault/aws/auth_backend_role.py +77 -191
  22. pulumi_vault/aws/auth_backend_role_tag.py +12 -7
  23. pulumi_vault/aws/auth_backend_roletag_blacklist.py +18 -13
  24. pulumi_vault/aws/auth_backend_sts_role.py +61 -9
  25. pulumi_vault/aws/get_access_credentials.py +38 -9
  26. pulumi_vault/aws/get_static_access_credentials.py +19 -5
  27. pulumi_vault/aws/secret_backend.py +218 -9
  28. pulumi_vault/aws/secret_backend_role.py +185 -9
  29. pulumi_vault/aws/secret_backend_static_role.py +20 -11
  30. pulumi_vault/azure/_inputs.py +24 -0
  31. pulumi_vault/azure/auth_backend_config.py +153 -15
  32. pulumi_vault/azure/auth_backend_role.py +77 -191
  33. pulumi_vault/azure/backend.py +227 -21
  34. pulumi_vault/azure/backend_role.py +42 -37
  35. pulumi_vault/azure/get_access_credentials.py +41 -7
  36. pulumi_vault/azure/outputs.py +5 -0
  37. pulumi_vault/cert_auth_backend_role.py +87 -267
  38. pulumi_vault/config/__init__.pyi +5 -0
  39. pulumi_vault/config/_inputs.py +73 -0
  40. pulumi_vault/config/outputs.py +35 -0
  41. pulumi_vault/config/ui_custom_message.py +529 -0
  42. pulumi_vault/config/vars.py +5 -0
  43. pulumi_vault/consul/secret_backend.py +28 -19
  44. pulumi_vault/consul/secret_backend_role.py +18 -78
  45. pulumi_vault/database/_inputs.py +2808 -879
  46. pulumi_vault/database/outputs.py +749 -838
  47. pulumi_vault/database/secret_backend_connection.py +119 -112
  48. pulumi_vault/database/secret_backend_role.py +31 -22
  49. pulumi_vault/database/secret_backend_static_role.py +87 -13
  50. pulumi_vault/database/secrets_mount.py +427 -136
  51. pulumi_vault/egp_policy.py +16 -11
  52. pulumi_vault/gcp/_inputs.py +111 -0
  53. pulumi_vault/gcp/auth_backend.py +250 -33
  54. pulumi_vault/gcp/auth_backend_role.py +77 -269
  55. pulumi_vault/gcp/get_auth_backend_role.py +43 -5
  56. pulumi_vault/gcp/outputs.py +5 -0
  57. pulumi_vault/gcp/secret_backend.py +287 -12
  58. pulumi_vault/gcp/secret_impersonated_account.py +76 -15
  59. pulumi_vault/gcp/secret_roleset.py +31 -24
  60. pulumi_vault/gcp/secret_static_account.py +39 -32
  61. pulumi_vault/generic/endpoint.py +24 -17
  62. pulumi_vault/generic/get_secret.py +64 -8
  63. pulumi_vault/generic/secret.py +21 -16
  64. pulumi_vault/get_auth_backend.py +24 -7
  65. pulumi_vault/get_auth_backends.py +51 -9
  66. pulumi_vault/get_namespace.py +226 -0
  67. pulumi_vault/get_namespaces.py +153 -0
  68. pulumi_vault/get_nomad_access_token.py +31 -11
  69. pulumi_vault/get_policy_document.py +34 -19
  70. pulumi_vault/get_raft_autopilot_state.py +29 -10
  71. pulumi_vault/github/_inputs.py +55 -0
  72. pulumi_vault/github/auth_backend.py +19 -14
  73. pulumi_vault/github/outputs.py +5 -0
  74. pulumi_vault/github/team.py +16 -11
  75. pulumi_vault/github/user.py +16 -11
  76. pulumi_vault/identity/entity.py +20 -13
  77. pulumi_vault/identity/entity_alias.py +20 -13
  78. pulumi_vault/identity/entity_policies.py +28 -11
  79. pulumi_vault/identity/get_entity.py +42 -10
  80. pulumi_vault/identity/get_group.py +47 -9
  81. pulumi_vault/identity/get_oidc_client_creds.py +21 -7
  82. pulumi_vault/identity/get_oidc_openid_config.py +39 -9
  83. pulumi_vault/identity/get_oidc_public_keys.py +29 -10
  84. pulumi_vault/identity/group.py +58 -39
  85. pulumi_vault/identity/group_alias.py +16 -9
  86. pulumi_vault/identity/group_member_entity_ids.py +28 -66
  87. pulumi_vault/identity/group_member_group_ids.py +40 -19
  88. pulumi_vault/identity/group_policies.py +20 -7
  89. pulumi_vault/identity/mfa_duo.py +11 -6
  90. pulumi_vault/identity/mfa_login_enforcement.py +15 -6
  91. pulumi_vault/identity/mfa_okta.py +11 -6
  92. pulumi_vault/identity/mfa_pingid.py +7 -2
  93. pulumi_vault/identity/mfa_totp.py +7 -2
  94. pulumi_vault/identity/oidc.py +12 -7
  95. pulumi_vault/identity/oidc_assignment.py +24 -11
  96. pulumi_vault/identity/oidc_client.py +36 -23
  97. pulumi_vault/identity/oidc_key.py +30 -17
  98. pulumi_vault/identity/oidc_key_allowed_client_id.py +28 -15
  99. pulumi_vault/identity/oidc_provider.py +36 -21
  100. pulumi_vault/identity/oidc_role.py +42 -21
  101. pulumi_vault/identity/oidc_scope.py +20 -13
  102. pulumi_vault/identity/outputs.py +8 -3
  103. pulumi_vault/jwt/_inputs.py +55 -0
  104. pulumi_vault/jwt/auth_backend.py +45 -40
  105. pulumi_vault/jwt/auth_backend_role.py +133 -254
  106. pulumi_vault/jwt/outputs.py +5 -0
  107. pulumi_vault/kmip/secret_backend.py +24 -19
  108. pulumi_vault/kmip/secret_role.py +14 -9
  109. pulumi_vault/kmip/secret_scope.py +14 -9
  110. pulumi_vault/kubernetes/auth_backend_config.py +57 -5
  111. pulumi_vault/kubernetes/auth_backend_role.py +70 -177
  112. pulumi_vault/kubernetes/get_auth_backend_config.py +60 -8
  113. pulumi_vault/kubernetes/get_auth_backend_role.py +40 -5
  114. pulumi_vault/kubernetes/get_service_account_token.py +39 -11
  115. pulumi_vault/kubernetes/secret_backend.py +316 -27
  116. pulumi_vault/kubernetes/secret_backend_role.py +137 -46
  117. pulumi_vault/kv/_inputs.py +36 -4
  118. pulumi_vault/kv/get_secret.py +25 -8
  119. pulumi_vault/kv/get_secret_subkeys_v2.py +33 -10
  120. pulumi_vault/kv/get_secret_v2.py +85 -9
  121. pulumi_vault/kv/get_secrets_list.py +24 -11
  122. pulumi_vault/kv/get_secrets_list_v2.py +37 -15
  123. pulumi_vault/kv/outputs.py +8 -3
  124. pulumi_vault/kv/secret.py +23 -16
  125. pulumi_vault/kv/secret_backend_v2.py +20 -11
  126. pulumi_vault/kv/secret_v2.py +59 -50
  127. pulumi_vault/ldap/auth_backend.py +127 -166
  128. pulumi_vault/ldap/auth_backend_group.py +14 -9
  129. pulumi_vault/ldap/auth_backend_user.py +14 -9
  130. pulumi_vault/ldap/get_dynamic_credentials.py +23 -5
  131. pulumi_vault/ldap/get_static_credentials.py +24 -5
  132. pulumi_vault/ldap/secret_backend.py +354 -82
  133. pulumi_vault/ldap/secret_backend_dynamic_role.py +18 -11
  134. pulumi_vault/ldap/secret_backend_library_set.py +16 -9
  135. pulumi_vault/ldap/secret_backend_static_role.py +73 -12
  136. pulumi_vault/managed/_inputs.py +289 -132
  137. pulumi_vault/managed/keys.py +29 -57
  138. pulumi_vault/managed/outputs.py +89 -132
  139. pulumi_vault/mfa_duo.py +18 -11
  140. pulumi_vault/mfa_okta.py +18 -11
  141. pulumi_vault/mfa_pingid.py +18 -11
  142. pulumi_vault/mfa_totp.py +24 -17
  143. pulumi_vault/mongodbatlas/secret_backend.py +20 -15
  144. pulumi_vault/mongodbatlas/secret_role.py +47 -38
  145. pulumi_vault/mount.py +391 -51
  146. pulumi_vault/namespace.py +68 -83
  147. pulumi_vault/nomad_secret_backend.py +18 -13
  148. pulumi_vault/nomad_secret_role.py +14 -9
  149. pulumi_vault/okta/_inputs.py +47 -8
  150. pulumi_vault/okta/auth_backend.py +485 -39
  151. pulumi_vault/okta/auth_backend_group.py +14 -9
  152. pulumi_vault/okta/auth_backend_user.py +14 -9
  153. pulumi_vault/okta/outputs.py +13 -8
  154. pulumi_vault/outputs.py +5 -0
  155. pulumi_vault/password_policy.py +20 -13
  156. pulumi_vault/pkisecret/__init__.py +7 -0
  157. pulumi_vault/pkisecret/_inputs.py +115 -0
  158. pulumi_vault/pkisecret/backend_acme_eab.py +549 -0
  159. pulumi_vault/pkisecret/backend_config_acme.py +642 -0
  160. pulumi_vault/pkisecret/backend_config_cluster.py +369 -0
  161. pulumi_vault/pkisecret/backend_config_cmpv2.py +525 -0
  162. pulumi_vault/pkisecret/backend_config_est.py +619 -0
  163. pulumi_vault/pkisecret/get_backend_config_cmpv2.py +209 -0
  164. pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
  165. pulumi_vault/pkisecret/get_backend_issuer.py +67 -9
  166. pulumi_vault/pkisecret/get_backend_issuers.py +21 -8
  167. pulumi_vault/pkisecret/get_backend_key.py +24 -9
  168. pulumi_vault/pkisecret/get_backend_keys.py +21 -8
  169. pulumi_vault/pkisecret/outputs.py +109 -0
  170. pulumi_vault/pkisecret/secret_backend_cert.py +18 -11
  171. pulumi_vault/pkisecret/secret_backend_config_ca.py +16 -11
  172. pulumi_vault/pkisecret/secret_backend_config_issuers.py +14 -9
  173. pulumi_vault/pkisecret/secret_backend_config_urls.py +67 -11
  174. pulumi_vault/pkisecret/secret_backend_crl_config.py +14 -9
  175. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +16 -11
  176. pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +22 -17
  177. pulumi_vault/pkisecret/secret_backend_issuer.py +14 -9
  178. pulumi_vault/pkisecret/secret_backend_key.py +14 -9
  179. pulumi_vault/pkisecret/secret_backend_role.py +68 -14
  180. pulumi_vault/pkisecret/secret_backend_root_cert.py +16 -48
  181. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +18 -56
  182. pulumi_vault/pkisecret/secret_backend_sign.py +18 -54
  183. pulumi_vault/plugin.py +595 -0
  184. pulumi_vault/plugin_pinned_version.py +298 -0
  185. pulumi_vault/policy.py +14 -9
  186. pulumi_vault/provider.py +48 -53
  187. pulumi_vault/pulumi-plugin.json +2 -1
  188. pulumi_vault/quota_lease_count.py +60 -6
  189. pulumi_vault/quota_rate_limit.py +56 -2
  190. pulumi_vault/rabbitmq/_inputs.py +61 -0
  191. pulumi_vault/rabbitmq/outputs.py +5 -0
  192. pulumi_vault/rabbitmq/secret_backend.py +18 -13
  193. pulumi_vault/rabbitmq/secret_backend_role.py +54 -47
  194. pulumi_vault/raft_autopilot.py +14 -9
  195. pulumi_vault/raft_snapshot_agent_config.py +129 -224
  196. pulumi_vault/rgp_policy.py +14 -9
  197. pulumi_vault/saml/auth_backend.py +22 -17
  198. pulumi_vault/saml/auth_backend_role.py +92 -197
  199. pulumi_vault/secrets/__init__.py +3 -0
  200. pulumi_vault/secrets/_inputs.py +110 -0
  201. pulumi_vault/secrets/outputs.py +94 -0
  202. pulumi_vault/secrets/sync_association.py +56 -71
  203. pulumi_vault/secrets/sync_aws_destination.py +242 -27
  204. pulumi_vault/secrets/sync_azure_destination.py +92 -31
  205. pulumi_vault/secrets/sync_config.py +9 -4
  206. pulumi_vault/secrets/sync_gcp_destination.py +158 -25
  207. pulumi_vault/secrets/sync_gh_destination.py +189 -13
  208. pulumi_vault/secrets/sync_github_apps.py +375 -0
  209. pulumi_vault/secrets/sync_vercel_destination.py +74 -13
  210. pulumi_vault/ssh/_inputs.py +28 -28
  211. pulumi_vault/ssh/outputs.py +11 -28
  212. pulumi_vault/ssh/secret_backend_ca.py +108 -9
  213. pulumi_vault/ssh/secret_backend_role.py +112 -118
  214. pulumi_vault/terraformcloud/secret_backend.py +7 -54
  215. pulumi_vault/terraformcloud/secret_creds.py +14 -20
  216. pulumi_vault/terraformcloud/secret_role.py +16 -74
  217. pulumi_vault/token.py +28 -23
  218. pulumi_vault/tokenauth/auth_backend_role.py +78 -199
  219. pulumi_vault/transform/alphabet.py +16 -9
  220. pulumi_vault/transform/get_decode.py +45 -17
  221. pulumi_vault/transform/get_encode.py +45 -17
  222. pulumi_vault/transform/role.py +16 -9
  223. pulumi_vault/transform/template.py +30 -21
  224. pulumi_vault/transform/transformation.py +12 -7
  225. pulumi_vault/transit/get_decrypt.py +26 -21
  226. pulumi_vault/transit/get_encrypt.py +24 -19
  227. pulumi_vault/transit/secret_backend_key.py +27 -93
  228. pulumi_vault/transit/secret_cache_config.py +12 -7
  229. {pulumi_vault-5.21.0a1709368526.dist-info → pulumi_vault-6.5.0.dist-info}/METADATA +8 -7
  230. pulumi_vault-6.5.0.dist-info/RECORD +260 -0
  231. {pulumi_vault-5.21.0a1709368526.dist-info → pulumi_vault-6.5.0.dist-info}/WHEEL +1 -1
  232. pulumi_vault-5.21.0a1709368526.dist-info/RECORD +0 -244
  233. {pulumi_vault-5.21.0a1709368526.dist-info → pulumi_vault-6.5.0.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
 
12
17
  __all__ = ['AuthBackendRoletagBlacklistArgs', 'AuthBackendRoletagBlacklist']
@@ -26,7 +31,7 @@ class AuthBackendRoletagBlacklistArgs:
26
31
  tidying of the roletag blacklist entries. Defaults to false.
27
32
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
28
33
  The value should not contain leading or trailing forward slashes.
29
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
34
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
30
35
  *Available only for Vault Enterprise*.
31
36
  :param pulumi.Input[int] safety_buffer: The amount of extra time that must have passed
32
37
  beyond the roletag expiration, before it is removed from the backend storage.
@@ -72,7 +77,7 @@ class AuthBackendRoletagBlacklistArgs:
72
77
  """
73
78
  The namespace to provision the resource in.
74
79
  The value should not contain leading or trailing forward slashes.
75
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
80
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
76
81
  *Available only for Vault Enterprise*.
77
82
  """
78
83
  return pulumi.get(self, "namespace")
@@ -111,7 +116,7 @@ class _AuthBackendRoletagBlacklistState:
111
116
  tidying of the roletag blacklist entries. Defaults to false.
112
117
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
113
118
  The value should not contain leading or trailing forward slashes.
114
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
119
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
115
120
  *Available only for Vault Enterprise*.
116
121
  :param pulumi.Input[int] safety_buffer: The amount of extra time that must have passed
117
122
  beyond the roletag expiration, before it is removed from the backend storage.
@@ -158,7 +163,7 @@ class _AuthBackendRoletagBlacklistState:
158
163
  """
159
164
  The namespace to provision the resource in.
160
165
  The value should not contain leading or trailing forward slashes.
161
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
166
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
162
167
  *Available only for Vault Enterprise*.
163
168
  """
164
169
  return pulumi.get(self, "namespace")
@@ -201,9 +206,9 @@ class AuthBackendRoletagBlacklist(pulumi.CustomResource):
201
206
  import pulumi
202
207
  import pulumi_vault as vault
203
208
 
204
- example_auth_backend = vault.AuthBackend("exampleAuthBackend", type="aws")
205
- example_auth_backend_roletag_blacklist = vault.aws.AuthBackendRoletagBlacklist("exampleAuthBackendRoletagBlacklist",
206
- backend=example_auth_backend.path,
209
+ example = vault.AuthBackend("example", type="aws")
210
+ example_auth_backend_roletag_blacklist = vault.aws.AuthBackendRoletagBlacklist("example",
211
+ backend=example.path,
207
212
  safety_buffer=360)
208
213
  ```
209
214
 
@@ -215,7 +220,7 @@ class AuthBackendRoletagBlacklist(pulumi.CustomResource):
215
220
  tidying of the roletag blacklist entries. Defaults to false.
216
221
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
217
222
  The value should not contain leading or trailing forward slashes.
218
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
223
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
219
224
  *Available only for Vault Enterprise*.
220
225
  :param pulumi.Input[int] safety_buffer: The amount of extra time that must have passed
221
226
  beyond the roletag expiration, before it is removed from the backend storage.
@@ -236,9 +241,9 @@ class AuthBackendRoletagBlacklist(pulumi.CustomResource):
236
241
  import pulumi
237
242
  import pulumi_vault as vault
238
243
 
239
- example_auth_backend = vault.AuthBackend("exampleAuthBackend", type="aws")
240
- example_auth_backend_roletag_blacklist = vault.aws.AuthBackendRoletagBlacklist("exampleAuthBackendRoletagBlacklist",
241
- backend=example_auth_backend.path,
244
+ example = vault.AuthBackend("example", type="aws")
245
+ example_auth_backend_roletag_blacklist = vault.aws.AuthBackendRoletagBlacklist("example",
246
+ backend=example.path,
242
247
  safety_buffer=360)
243
248
  ```
244
249
 
@@ -303,7 +308,7 @@ class AuthBackendRoletagBlacklist(pulumi.CustomResource):
303
308
  tidying of the roletag blacklist entries. Defaults to false.
304
309
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
305
310
  The value should not contain leading or trailing forward slashes.
306
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
311
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
307
312
  *Available only for Vault Enterprise*.
308
313
  :param pulumi.Input[int] safety_buffer: The amount of extra time that must have passed
309
314
  beyond the roletag expiration, before it is removed from the backend storage.
@@ -343,7 +348,7 @@ class AuthBackendRoletagBlacklist(pulumi.CustomResource):
343
348
  """
344
349
  The namespace to provision the resource in.
345
350
  The value should not contain leading or trailing forward slashes.
346
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
351
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
347
352
  *Available only for Vault Enterprise*.
348
353
  """
349
354
  return pulumi.get(self, "namespace")
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
 
12
17
  __all__ = ['AuthBackendStsRoleArgs', 'AuthBackendStsRole']
@@ -17,6 +22,7 @@ class AuthBackendStsRoleArgs:
17
22
  account_id: pulumi.Input[str],
18
23
  sts_role: pulumi.Input[str],
19
24
  backend: Optional[pulumi.Input[str]] = None,
25
+ external_id: Optional[pulumi.Input[str]] = None,
20
26
  namespace: Optional[pulumi.Input[str]] = None):
21
27
  """
22
28
  The set of arguments for constructing a AuthBackendStsRole resource.
@@ -25,15 +31,18 @@ class AuthBackendStsRoleArgs:
25
31
  by EC2 instances in the account specified by `account_id`.
26
32
  :param pulumi.Input[str] backend: The path the AWS auth backend being configured was
27
33
  mounted at. Defaults to `aws`.
34
+ :param pulumi.Input[str] external_id: External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
28
35
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
29
36
  The value should not contain leading or trailing forward slashes.
30
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
37
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
31
38
  *Available only for Vault Enterprise*.
32
39
  """
33
40
  pulumi.set(__self__, "account_id", account_id)
34
41
  pulumi.set(__self__, "sts_role", sts_role)
35
42
  if backend is not None:
36
43
  pulumi.set(__self__, "backend", backend)
44
+ if external_id is not None:
45
+ pulumi.set(__self__, "external_id", external_id)
37
46
  if namespace is not None:
38
47
  pulumi.set(__self__, "namespace", namespace)
39
48
 
@@ -75,13 +84,25 @@ class AuthBackendStsRoleArgs:
75
84
  def backend(self, value: Optional[pulumi.Input[str]]):
76
85
  pulumi.set(self, "backend", value)
77
86
 
87
+ @property
88
+ @pulumi.getter(name="externalId")
89
+ def external_id(self) -> Optional[pulumi.Input[str]]:
90
+ """
91
+ External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
92
+ """
93
+ return pulumi.get(self, "external_id")
94
+
95
+ @external_id.setter
96
+ def external_id(self, value: Optional[pulumi.Input[str]]):
97
+ pulumi.set(self, "external_id", value)
98
+
78
99
  @property
79
100
  @pulumi.getter
80
101
  def namespace(self) -> Optional[pulumi.Input[str]]:
81
102
  """
82
103
  The namespace to provision the resource in.
83
104
  The value should not contain leading or trailing forward slashes.
84
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
105
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
85
106
  *Available only for Vault Enterprise*.
86
107
  """
87
108
  return pulumi.get(self, "namespace")
@@ -96,6 +117,7 @@ class _AuthBackendStsRoleState:
96
117
  def __init__(__self__, *,
97
118
  account_id: Optional[pulumi.Input[str]] = None,
98
119
  backend: Optional[pulumi.Input[str]] = None,
120
+ external_id: Optional[pulumi.Input[str]] = None,
99
121
  namespace: Optional[pulumi.Input[str]] = None,
100
122
  sts_role: Optional[pulumi.Input[str]] = None):
101
123
  """
@@ -103,9 +125,10 @@ class _AuthBackendStsRoleState:
103
125
  :param pulumi.Input[str] account_id: The AWS account ID to configure the STS role for.
104
126
  :param pulumi.Input[str] backend: The path the AWS auth backend being configured was
105
127
  mounted at. Defaults to `aws`.
128
+ :param pulumi.Input[str] external_id: External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
106
129
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
107
130
  The value should not contain leading or trailing forward slashes.
108
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
131
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
109
132
  *Available only for Vault Enterprise*.
110
133
  :param pulumi.Input[str] sts_role: The STS role to assume when verifying requests made
111
134
  by EC2 instances in the account specified by `account_id`.
@@ -114,6 +137,8 @@ class _AuthBackendStsRoleState:
114
137
  pulumi.set(__self__, "account_id", account_id)
115
138
  if backend is not None:
116
139
  pulumi.set(__self__, "backend", backend)
140
+ if external_id is not None:
141
+ pulumi.set(__self__, "external_id", external_id)
117
142
  if namespace is not None:
118
143
  pulumi.set(__self__, "namespace", namespace)
119
144
  if sts_role is not None:
@@ -144,13 +169,25 @@ class _AuthBackendStsRoleState:
144
169
  def backend(self, value: Optional[pulumi.Input[str]]):
145
170
  pulumi.set(self, "backend", value)
146
171
 
172
+ @property
173
+ @pulumi.getter(name="externalId")
174
+ def external_id(self) -> Optional[pulumi.Input[str]]:
175
+ """
176
+ External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
177
+ """
178
+ return pulumi.get(self, "external_id")
179
+
180
+ @external_id.setter
181
+ def external_id(self, value: Optional[pulumi.Input[str]]):
182
+ pulumi.set(self, "external_id", value)
183
+
147
184
  @property
148
185
  @pulumi.getter
149
186
  def namespace(self) -> Optional[pulumi.Input[str]]:
150
187
  """
151
188
  The namespace to provision the resource in.
152
189
  The value should not contain leading or trailing forward slashes.
153
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
190
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
154
191
  *Available only for Vault Enterprise*.
155
192
  """
156
193
  return pulumi.get(self, "namespace")
@@ -180,6 +217,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
180
217
  opts: Optional[pulumi.ResourceOptions] = None,
181
218
  account_id: Optional[pulumi.Input[str]] = None,
182
219
  backend: Optional[pulumi.Input[str]] = None,
220
+ external_id: Optional[pulumi.Input[str]] = None,
183
221
  namespace: Optional[pulumi.Input[str]] = None,
184
222
  sts_role: Optional[pulumi.Input[str]] = None,
185
223
  __props__=None):
@@ -202,7 +240,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
202
240
  AWS auth backend STS roles can be imported using `auth/`, the `backend` path, `/config/sts/`, and the `account_id` e.g.
203
241
 
204
242
  ```sh
205
- $ pulumi import vault:aws/authBackendStsRole:AuthBackendStsRole example auth/aws/config/sts/1234567890
243
+ $ pulumi import vault:aws/authBackendStsRole:AuthBackendStsRole example auth/aws/config/sts/1234567890
206
244
  ```
207
245
 
208
246
  :param str resource_name: The name of the resource.
@@ -210,9 +248,10 @@ class AuthBackendStsRole(pulumi.CustomResource):
210
248
  :param pulumi.Input[str] account_id: The AWS account ID to configure the STS role for.
211
249
  :param pulumi.Input[str] backend: The path the AWS auth backend being configured was
212
250
  mounted at. Defaults to `aws`.
251
+ :param pulumi.Input[str] external_id: External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
213
252
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
214
253
  The value should not contain leading or trailing forward slashes.
215
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
254
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
216
255
  *Available only for Vault Enterprise*.
217
256
  :param pulumi.Input[str] sts_role: The STS role to assume when verifying requests made
218
257
  by EC2 instances in the account specified by `account_id`.
@@ -242,7 +281,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
242
281
  AWS auth backend STS roles can be imported using `auth/`, the `backend` path, `/config/sts/`, and the `account_id` e.g.
243
282
 
244
283
  ```sh
245
- $ pulumi import vault:aws/authBackendStsRole:AuthBackendStsRole example auth/aws/config/sts/1234567890
284
+ $ pulumi import vault:aws/authBackendStsRole:AuthBackendStsRole example auth/aws/config/sts/1234567890
246
285
  ```
247
286
 
248
287
  :param str resource_name: The name of the resource.
@@ -262,6 +301,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
262
301
  opts: Optional[pulumi.ResourceOptions] = None,
263
302
  account_id: Optional[pulumi.Input[str]] = None,
264
303
  backend: Optional[pulumi.Input[str]] = None,
304
+ external_id: Optional[pulumi.Input[str]] = None,
265
305
  namespace: Optional[pulumi.Input[str]] = None,
266
306
  sts_role: Optional[pulumi.Input[str]] = None,
267
307
  __props__=None):
@@ -277,6 +317,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
277
317
  raise TypeError("Missing required property 'account_id'")
278
318
  __props__.__dict__["account_id"] = account_id
279
319
  __props__.__dict__["backend"] = backend
320
+ __props__.__dict__["external_id"] = external_id
280
321
  __props__.__dict__["namespace"] = namespace
281
322
  if sts_role is None and not opts.urn:
282
323
  raise TypeError("Missing required property 'sts_role'")
@@ -293,6 +334,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
293
334
  opts: Optional[pulumi.ResourceOptions] = None,
294
335
  account_id: Optional[pulumi.Input[str]] = None,
295
336
  backend: Optional[pulumi.Input[str]] = None,
337
+ external_id: Optional[pulumi.Input[str]] = None,
296
338
  namespace: Optional[pulumi.Input[str]] = None,
297
339
  sts_role: Optional[pulumi.Input[str]] = None) -> 'AuthBackendStsRole':
298
340
  """
@@ -305,9 +347,10 @@ class AuthBackendStsRole(pulumi.CustomResource):
305
347
  :param pulumi.Input[str] account_id: The AWS account ID to configure the STS role for.
306
348
  :param pulumi.Input[str] backend: The path the AWS auth backend being configured was
307
349
  mounted at. Defaults to `aws`.
350
+ :param pulumi.Input[str] external_id: External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
308
351
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
309
352
  The value should not contain leading or trailing forward slashes.
310
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
353
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
311
354
  *Available only for Vault Enterprise*.
312
355
  :param pulumi.Input[str] sts_role: The STS role to assume when verifying requests made
313
356
  by EC2 instances in the account specified by `account_id`.
@@ -318,6 +361,7 @@ class AuthBackendStsRole(pulumi.CustomResource):
318
361
 
319
362
  __props__.__dict__["account_id"] = account_id
320
363
  __props__.__dict__["backend"] = backend
364
+ __props__.__dict__["external_id"] = external_id
321
365
  __props__.__dict__["namespace"] = namespace
322
366
  __props__.__dict__["sts_role"] = sts_role
323
367
  return AuthBackendStsRole(resource_name, opts=opts, __props__=__props__)
@@ -339,13 +383,21 @@ class AuthBackendStsRole(pulumi.CustomResource):
339
383
  """
340
384
  return pulumi.get(self, "backend")
341
385
 
386
+ @property
387
+ @pulumi.getter(name="externalId")
388
+ def external_id(self) -> pulumi.Output[Optional[str]]:
389
+ """
390
+ External ID expected by the STS role. The associated STS role must be configured to require the external ID. Requires Vault 1.17+.
391
+ """
392
+ return pulumi.get(self, "external_id")
393
+
342
394
  @property
343
395
  @pulumi.getter
344
396
  def namespace(self) -> pulumi.Output[Optional[str]]:
345
397
  """
346
398
  The namespace to provision the resource in.
347
399
  The value should not contain leading or trailing forward slashes.
348
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
400
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
349
401
  *Available only for Vault Enterprise*.
350
402
  """
351
403
  return pulumi.get(self, "namespace")
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
 
12
17
  __all__ = [
@@ -196,13 +201,14 @@ def get_access_credentials(backend: Optional[str] = None,
196
201
  type: Optional[str] = None,
197
202
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAccessCredentialsResult:
198
203
  """
199
- Use this data source to access information about an existing resource.
204
+ ## Example Usage
205
+
200
206
 
201
207
  :param str backend: The path to the AWS secret backend to
202
208
  read credentials from, with no leading or trailing `/`s.
203
209
  :param str namespace: The namespace of the target resource.
204
210
  The value should not contain leading or trailing forward slashes.
205
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
211
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
206
212
  *Available only for Vault Enterprise*.
207
213
  :param str region: The region the read credentials belong to.
208
214
  :param str role: The name of the AWS secret backend role to read
@@ -245,9 +251,6 @@ def get_access_credentials(backend: Optional[str] = None,
245
251
  security_token=pulumi.get(__ret__, 'security_token'),
246
252
  ttl=pulumi.get(__ret__, 'ttl'),
247
253
  type=pulumi.get(__ret__, 'type'))
248
-
249
-
250
- @_utilities.lift_output_func(get_access_credentials)
251
254
  def get_access_credentials_output(backend: Optional[pulumi.Input[str]] = None,
252
255
  namespace: Optional[pulumi.Input[Optional[str]]] = None,
253
256
  region: Optional[pulumi.Input[Optional[str]]] = None,
@@ -255,15 +258,16 @@ def get_access_credentials_output(backend: Optional[pulumi.Input[str]] = None,
255
258
  role_arn: Optional[pulumi.Input[Optional[str]]] = None,
256
259
  ttl: Optional[pulumi.Input[Optional[str]]] = None,
257
260
  type: Optional[pulumi.Input[Optional[str]]] = None,
258
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAccessCredentialsResult]:
261
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAccessCredentialsResult]:
259
262
  """
260
- Use this data source to access information about an existing resource.
263
+ ## Example Usage
264
+
261
265
 
262
266
  :param str backend: The path to the AWS secret backend to
263
267
  read credentials from, with no leading or trailing `/`s.
264
268
  :param str namespace: The namespace of the target resource.
265
269
  The value should not contain leading or trailing forward slashes.
266
- The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
270
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
267
271
  *Available only for Vault Enterprise*.
268
272
  :param str region: The region the read credentials belong to.
269
273
  :param str role: The name of the AWS secret backend role to read
@@ -279,4 +283,29 @@ def get_access_credentials_output(backend: Optional[pulumi.Input[str]] = None,
279
283
  Key. Can also be set to `"sts"`, which will return a security token
280
284
  in addition to the keys.
281
285
  """
282
- ...
286
+ __args__ = dict()
287
+ __args__['backend'] = backend
288
+ __args__['namespace'] = namespace
289
+ __args__['region'] = region
290
+ __args__['role'] = role
291
+ __args__['roleArn'] = role_arn
292
+ __args__['ttl'] = ttl
293
+ __args__['type'] = type
294
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
295
+ __ret__ = pulumi.runtime.invoke_output('vault:aws/getAccessCredentials:getAccessCredentials', __args__, opts=opts, typ=GetAccessCredentialsResult)
296
+ return __ret__.apply(lambda __response__: GetAccessCredentialsResult(
297
+ access_key=pulumi.get(__response__, 'access_key'),
298
+ backend=pulumi.get(__response__, 'backend'),
299
+ id=pulumi.get(__response__, 'id'),
300
+ lease_duration=pulumi.get(__response__, 'lease_duration'),
301
+ lease_id=pulumi.get(__response__, 'lease_id'),
302
+ lease_renewable=pulumi.get(__response__, 'lease_renewable'),
303
+ lease_start_time=pulumi.get(__response__, 'lease_start_time'),
304
+ namespace=pulumi.get(__response__, 'namespace'),
305
+ region=pulumi.get(__response__, 'region'),
306
+ role=pulumi.get(__response__, 'role'),
307
+ role_arn=pulumi.get(__response__, 'role_arn'),
308
+ secret_key=pulumi.get(__response__, 'secret_key'),
309
+ security_token=pulumi.get(__response__, 'security_token'),
310
+ ttl=pulumi.get(__response__, 'ttl'),
311
+ type=pulumi.get(__response__, 'type')))
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
 
12
17
  __all__ = [
@@ -110,14 +115,23 @@ def get_static_access_credentials(backend: Optional[str] = None,
110
115
  name=pulumi.get(__ret__, 'name'),
111
116
  namespace=pulumi.get(__ret__, 'namespace'),
112
117
  secret_key=pulumi.get(__ret__, 'secret_key'))
113
-
114
-
115
- @_utilities.lift_output_func(get_static_access_credentials)
116
118
  def get_static_access_credentials_output(backend: Optional[pulumi.Input[str]] = None,
117
119
  name: Optional[pulumi.Input[str]] = None,
118
120
  namespace: Optional[pulumi.Input[Optional[str]]] = None,
119
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetStaticAccessCredentialsResult]:
121
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetStaticAccessCredentialsResult]:
120
122
  """
121
123
  Use this data source to access information about an existing resource.
122
124
  """
123
- ...
125
+ __args__ = dict()
126
+ __args__['backend'] = backend
127
+ __args__['name'] = name
128
+ __args__['namespace'] = namespace
129
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
130
+ __ret__ = pulumi.runtime.invoke_output('vault:aws/getStaticAccessCredentials:getStaticAccessCredentials', __args__, opts=opts, typ=GetStaticAccessCredentialsResult)
131
+ return __ret__.apply(lambda __response__: GetStaticAccessCredentialsResult(
132
+ access_key=pulumi.get(__response__, 'access_key'),
133
+ backend=pulumi.get(__response__, 'backend'),
134
+ id=pulumi.get(__response__, 'id'),
135
+ name=pulumi.get(__response__, 'name'),
136
+ namespace=pulumi.get(__response__, 'namespace'),
137
+ secret_key=pulumi.get(__response__, 'secret_key')))