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,654 @@
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__ = ['AuthBackendConfigArgs', 'AuthBackendConfig']
18
+
19
+ @pulumi.input_type
20
+ class AuthBackendConfigArgs:
21
+ def __init__(__self__, *,
22
+ kubernetes_host: pulumi.Input[_builtins.str],
23
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
24
+ disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
25
+ disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
26
+ issuer: Optional[pulumi.Input[_builtins.str]] = None,
27
+ kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
28
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
29
+ pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
30
+ token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
31
+ use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None):
32
+ """
33
+ The set of arguments for constructing a AuthBackendConfig resource.
34
+ :param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
35
+ :param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
36
+ :param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
37
+ :param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
38
+ :param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
39
+ :param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
40
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
41
+ The value should not contain leading or trailing forward slashes.
42
+ The `namespace` is always relative to the provider's configured namespace.
43
+ *Available only for Vault Enterprise*.
44
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
45
+ :param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
46
+ :param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
47
+ """
48
+ pulumi.set(__self__, "kubernetes_host", kubernetes_host)
49
+ if backend is not None:
50
+ pulumi.set(__self__, "backend", backend)
51
+ if disable_iss_validation is not None:
52
+ pulumi.set(__self__, "disable_iss_validation", disable_iss_validation)
53
+ if disable_local_ca_jwt is not None:
54
+ pulumi.set(__self__, "disable_local_ca_jwt", disable_local_ca_jwt)
55
+ if issuer is not None:
56
+ pulumi.set(__self__, "issuer", issuer)
57
+ if kubernetes_ca_cert is not None:
58
+ pulumi.set(__self__, "kubernetes_ca_cert", kubernetes_ca_cert)
59
+ if namespace is not None:
60
+ pulumi.set(__self__, "namespace", namespace)
61
+ if pem_keys is not None:
62
+ pulumi.set(__self__, "pem_keys", pem_keys)
63
+ if token_reviewer_jwt is not None:
64
+ pulumi.set(__self__, "token_reviewer_jwt", token_reviewer_jwt)
65
+ if use_annotations_as_alias_metadata is not None:
66
+ pulumi.set(__self__, "use_annotations_as_alias_metadata", use_annotations_as_alias_metadata)
67
+
68
+ @_builtins.property
69
+ @pulumi.getter(name="kubernetesHost")
70
+ def kubernetes_host(self) -> pulumi.Input[_builtins.str]:
71
+ """
72
+ Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
73
+ """
74
+ return pulumi.get(self, "kubernetes_host")
75
+
76
+ @kubernetes_host.setter
77
+ def kubernetes_host(self, value: pulumi.Input[_builtins.str]):
78
+ pulumi.set(self, "kubernetes_host", value)
79
+
80
+ @_builtins.property
81
+ @pulumi.getter
82
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
83
+ """
84
+ Unique name of the kubernetes backend to configure.
85
+ """
86
+ return pulumi.get(self, "backend")
87
+
88
+ @backend.setter
89
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
90
+ pulumi.set(self, "backend", value)
91
+
92
+ @_builtins.property
93
+ @pulumi.getter(name="disableIssValidation")
94
+ def disable_iss_validation(self) -> Optional[pulumi.Input[_builtins.bool]]:
95
+ """
96
+ Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
97
+ """
98
+ return pulumi.get(self, "disable_iss_validation")
99
+
100
+ @disable_iss_validation.setter
101
+ def disable_iss_validation(self, value: Optional[pulumi.Input[_builtins.bool]]):
102
+ pulumi.set(self, "disable_iss_validation", value)
103
+
104
+ @_builtins.property
105
+ @pulumi.getter(name="disableLocalCaJwt")
106
+ def disable_local_ca_jwt(self) -> Optional[pulumi.Input[_builtins.bool]]:
107
+ """
108
+ Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
109
+ """
110
+ return pulumi.get(self, "disable_local_ca_jwt")
111
+
112
+ @disable_local_ca_jwt.setter
113
+ def disable_local_ca_jwt(self, value: Optional[pulumi.Input[_builtins.bool]]):
114
+ pulumi.set(self, "disable_local_ca_jwt", value)
115
+
116
+ @_builtins.property
117
+ @pulumi.getter
118
+ def issuer(self) -> Optional[pulumi.Input[_builtins.str]]:
119
+ """
120
+ JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
121
+ """
122
+ return pulumi.get(self, "issuer")
123
+
124
+ @issuer.setter
125
+ def issuer(self, value: Optional[pulumi.Input[_builtins.str]]):
126
+ pulumi.set(self, "issuer", value)
127
+
128
+ @_builtins.property
129
+ @pulumi.getter(name="kubernetesCaCert")
130
+ def kubernetes_ca_cert(self) -> Optional[pulumi.Input[_builtins.str]]:
131
+ """
132
+ PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
133
+ """
134
+ return pulumi.get(self, "kubernetes_ca_cert")
135
+
136
+ @kubernetes_ca_cert.setter
137
+ def kubernetes_ca_cert(self, value: Optional[pulumi.Input[_builtins.str]]):
138
+ pulumi.set(self, "kubernetes_ca_cert", value)
139
+
140
+ @_builtins.property
141
+ @pulumi.getter
142
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
143
+ """
144
+ The namespace to provision the resource in.
145
+ The value should not contain leading or trailing forward slashes.
146
+ The `namespace` is always relative to the provider's configured namespace.
147
+ *Available only for Vault Enterprise*.
148
+ """
149
+ return pulumi.get(self, "namespace")
150
+
151
+ @namespace.setter
152
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
153
+ pulumi.set(self, "namespace", value)
154
+
155
+ @_builtins.property
156
+ @pulumi.getter(name="pemKeys")
157
+ def pem_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
158
+ """
159
+ List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
160
+ """
161
+ return pulumi.get(self, "pem_keys")
162
+
163
+ @pem_keys.setter
164
+ def pem_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
165
+ pulumi.set(self, "pem_keys", value)
166
+
167
+ @_builtins.property
168
+ @pulumi.getter(name="tokenReviewerJwt")
169
+ def token_reviewer_jwt(self) -> Optional[pulumi.Input[_builtins.str]]:
170
+ """
171
+ A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
172
+ """
173
+ return pulumi.get(self, "token_reviewer_jwt")
174
+
175
+ @token_reviewer_jwt.setter
176
+ def token_reviewer_jwt(self, value: Optional[pulumi.Input[_builtins.str]]):
177
+ pulumi.set(self, "token_reviewer_jwt", value)
178
+
179
+ @_builtins.property
180
+ @pulumi.getter(name="useAnnotationsAsAliasMetadata")
181
+ def use_annotations_as_alias_metadata(self) -> Optional[pulumi.Input[_builtins.bool]]:
182
+ """
183
+ Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
184
+ """
185
+ return pulumi.get(self, "use_annotations_as_alias_metadata")
186
+
187
+ @use_annotations_as_alias_metadata.setter
188
+ def use_annotations_as_alias_metadata(self, value: Optional[pulumi.Input[_builtins.bool]]):
189
+ pulumi.set(self, "use_annotations_as_alias_metadata", value)
190
+
191
+
192
+ @pulumi.input_type
193
+ class _AuthBackendConfigState:
194
+ def __init__(__self__, *,
195
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
196
+ disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
197
+ disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
198
+ issuer: Optional[pulumi.Input[_builtins.str]] = None,
199
+ kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
200
+ kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
201
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
202
+ pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
203
+ token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
204
+ use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None):
205
+ """
206
+ Input properties used for looking up and filtering AuthBackendConfig resources.
207
+ :param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
208
+ :param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
209
+ :param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
210
+ :param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
211
+ :param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
212
+ :param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
213
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
214
+ The value should not contain leading or trailing forward slashes.
215
+ The `namespace` is always relative to the provider's configured namespace.
216
+ *Available only for Vault Enterprise*.
217
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
218
+ :param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
219
+ :param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
220
+ """
221
+ if backend is not None:
222
+ pulumi.set(__self__, "backend", backend)
223
+ if disable_iss_validation is not None:
224
+ pulumi.set(__self__, "disable_iss_validation", disable_iss_validation)
225
+ if disable_local_ca_jwt is not None:
226
+ pulumi.set(__self__, "disable_local_ca_jwt", disable_local_ca_jwt)
227
+ if issuer is not None:
228
+ pulumi.set(__self__, "issuer", issuer)
229
+ if kubernetes_ca_cert is not None:
230
+ pulumi.set(__self__, "kubernetes_ca_cert", kubernetes_ca_cert)
231
+ if kubernetes_host is not None:
232
+ pulumi.set(__self__, "kubernetes_host", kubernetes_host)
233
+ if namespace is not None:
234
+ pulumi.set(__self__, "namespace", namespace)
235
+ if pem_keys is not None:
236
+ pulumi.set(__self__, "pem_keys", pem_keys)
237
+ if token_reviewer_jwt is not None:
238
+ pulumi.set(__self__, "token_reviewer_jwt", token_reviewer_jwt)
239
+ if use_annotations_as_alias_metadata is not None:
240
+ pulumi.set(__self__, "use_annotations_as_alias_metadata", use_annotations_as_alias_metadata)
241
+
242
+ @_builtins.property
243
+ @pulumi.getter
244
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
245
+ """
246
+ Unique name of the kubernetes backend to configure.
247
+ """
248
+ return pulumi.get(self, "backend")
249
+
250
+ @backend.setter
251
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
252
+ pulumi.set(self, "backend", value)
253
+
254
+ @_builtins.property
255
+ @pulumi.getter(name="disableIssValidation")
256
+ def disable_iss_validation(self) -> Optional[pulumi.Input[_builtins.bool]]:
257
+ """
258
+ Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
259
+ """
260
+ return pulumi.get(self, "disable_iss_validation")
261
+
262
+ @disable_iss_validation.setter
263
+ def disable_iss_validation(self, value: Optional[pulumi.Input[_builtins.bool]]):
264
+ pulumi.set(self, "disable_iss_validation", value)
265
+
266
+ @_builtins.property
267
+ @pulumi.getter(name="disableLocalCaJwt")
268
+ def disable_local_ca_jwt(self) -> Optional[pulumi.Input[_builtins.bool]]:
269
+ """
270
+ Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
271
+ """
272
+ return pulumi.get(self, "disable_local_ca_jwt")
273
+
274
+ @disable_local_ca_jwt.setter
275
+ def disable_local_ca_jwt(self, value: Optional[pulumi.Input[_builtins.bool]]):
276
+ pulumi.set(self, "disable_local_ca_jwt", value)
277
+
278
+ @_builtins.property
279
+ @pulumi.getter
280
+ def issuer(self) -> Optional[pulumi.Input[_builtins.str]]:
281
+ """
282
+ JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
283
+ """
284
+ return pulumi.get(self, "issuer")
285
+
286
+ @issuer.setter
287
+ def issuer(self, value: Optional[pulumi.Input[_builtins.str]]):
288
+ pulumi.set(self, "issuer", value)
289
+
290
+ @_builtins.property
291
+ @pulumi.getter(name="kubernetesCaCert")
292
+ def kubernetes_ca_cert(self) -> Optional[pulumi.Input[_builtins.str]]:
293
+ """
294
+ PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
295
+ """
296
+ return pulumi.get(self, "kubernetes_ca_cert")
297
+
298
+ @kubernetes_ca_cert.setter
299
+ def kubernetes_ca_cert(self, value: Optional[pulumi.Input[_builtins.str]]):
300
+ pulumi.set(self, "kubernetes_ca_cert", value)
301
+
302
+ @_builtins.property
303
+ @pulumi.getter(name="kubernetesHost")
304
+ def kubernetes_host(self) -> Optional[pulumi.Input[_builtins.str]]:
305
+ """
306
+ Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
307
+ """
308
+ return pulumi.get(self, "kubernetes_host")
309
+
310
+ @kubernetes_host.setter
311
+ def kubernetes_host(self, value: Optional[pulumi.Input[_builtins.str]]):
312
+ pulumi.set(self, "kubernetes_host", value)
313
+
314
+ @_builtins.property
315
+ @pulumi.getter
316
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
317
+ """
318
+ The namespace to provision the resource in.
319
+ The value should not contain leading or trailing forward slashes.
320
+ The `namespace` is always relative to the provider's configured namespace.
321
+ *Available only for Vault Enterprise*.
322
+ """
323
+ return pulumi.get(self, "namespace")
324
+
325
+ @namespace.setter
326
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
327
+ pulumi.set(self, "namespace", value)
328
+
329
+ @_builtins.property
330
+ @pulumi.getter(name="pemKeys")
331
+ def pem_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
332
+ """
333
+ List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
334
+ """
335
+ return pulumi.get(self, "pem_keys")
336
+
337
+ @pem_keys.setter
338
+ def pem_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
339
+ pulumi.set(self, "pem_keys", value)
340
+
341
+ @_builtins.property
342
+ @pulumi.getter(name="tokenReviewerJwt")
343
+ def token_reviewer_jwt(self) -> Optional[pulumi.Input[_builtins.str]]:
344
+ """
345
+ A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
346
+ """
347
+ return pulumi.get(self, "token_reviewer_jwt")
348
+
349
+ @token_reviewer_jwt.setter
350
+ def token_reviewer_jwt(self, value: Optional[pulumi.Input[_builtins.str]]):
351
+ pulumi.set(self, "token_reviewer_jwt", value)
352
+
353
+ @_builtins.property
354
+ @pulumi.getter(name="useAnnotationsAsAliasMetadata")
355
+ def use_annotations_as_alias_metadata(self) -> Optional[pulumi.Input[_builtins.bool]]:
356
+ """
357
+ Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
358
+ """
359
+ return pulumi.get(self, "use_annotations_as_alias_metadata")
360
+
361
+ @use_annotations_as_alias_metadata.setter
362
+ def use_annotations_as_alias_metadata(self, value: Optional[pulumi.Input[_builtins.bool]]):
363
+ pulumi.set(self, "use_annotations_as_alias_metadata", value)
364
+
365
+
366
+ @pulumi.type_token("vault:kubernetes/authBackendConfig:AuthBackendConfig")
367
+ class AuthBackendConfig(pulumi.CustomResource):
368
+ @overload
369
+ def __init__(__self__,
370
+ resource_name: str,
371
+ opts: Optional[pulumi.ResourceOptions] = None,
372
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
373
+ disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
374
+ disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
375
+ issuer: Optional[pulumi.Input[_builtins.str]] = None,
376
+ kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
377
+ kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
378
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
379
+ pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
380
+ token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
381
+ use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None,
382
+ __props__=None):
383
+ """
384
+ Manages an Kubernetes auth backend config in a Vault server. See the [Vault
385
+ documentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more
386
+ information.
387
+
388
+ ## Example Usage
389
+
390
+ ```python
391
+ import pulumi
392
+ import pulumi_vault as vault
393
+
394
+ kubernetes = vault.AuthBackend("kubernetes", type="kubernetes")
395
+ example = vault.kubernetes.AuthBackendConfig("example",
396
+ backend=kubernetes.path,
397
+ kubernetes_host="http://example.com:443",
398
+ kubernetes_ca_cert=\"\"\"-----BEGIN CERTIFICATE-----
399
+ example
400
+ -----END CERTIFICATE-----\"\"\",
401
+ token_reviewer_jwt="ZXhhbXBsZQo=",
402
+ issuer="api",
403
+ disable_iss_validation=True)
404
+ ```
405
+
406
+ ## Import
407
+
408
+ Kubernetes authentication backend can be imported using the `path`, e.g.
409
+
410
+ ```sh
411
+ $ pulumi import vault:kubernetes/authBackendConfig:AuthBackendConfig config auth/kubernetes/config
412
+ ```
413
+
414
+ :param str resource_name: The name of the resource.
415
+ :param pulumi.ResourceOptions opts: Options for the resource.
416
+ :param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
417
+ :param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
418
+ :param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
419
+ :param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
420
+ :param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
421
+ :param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
422
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
423
+ The value should not contain leading or trailing forward slashes.
424
+ The `namespace` is always relative to the provider's configured namespace.
425
+ *Available only for Vault Enterprise*.
426
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
427
+ :param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
428
+ :param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
429
+ """
430
+ ...
431
+ @overload
432
+ def __init__(__self__,
433
+ resource_name: str,
434
+ args: AuthBackendConfigArgs,
435
+ opts: Optional[pulumi.ResourceOptions] = None):
436
+ """
437
+ Manages an Kubernetes auth backend config in a Vault server. See the [Vault
438
+ documentation](https://www.vaultproject.io/docs/auth/kubernetes.html) for more
439
+ information.
440
+
441
+ ## Example Usage
442
+
443
+ ```python
444
+ import pulumi
445
+ import pulumi_vault as vault
446
+
447
+ kubernetes = vault.AuthBackend("kubernetes", type="kubernetes")
448
+ example = vault.kubernetes.AuthBackendConfig("example",
449
+ backend=kubernetes.path,
450
+ kubernetes_host="http://example.com:443",
451
+ kubernetes_ca_cert=\"\"\"-----BEGIN CERTIFICATE-----
452
+ example
453
+ -----END CERTIFICATE-----\"\"\",
454
+ token_reviewer_jwt="ZXhhbXBsZQo=",
455
+ issuer="api",
456
+ disable_iss_validation=True)
457
+ ```
458
+
459
+ ## Import
460
+
461
+ Kubernetes authentication backend can be imported using the `path`, e.g.
462
+
463
+ ```sh
464
+ $ pulumi import vault:kubernetes/authBackendConfig:AuthBackendConfig config auth/kubernetes/config
465
+ ```
466
+
467
+ :param str resource_name: The name of the resource.
468
+ :param AuthBackendConfigArgs args: The arguments to use to populate this resource's properties.
469
+ :param pulumi.ResourceOptions opts: Options for the resource.
470
+ """
471
+ ...
472
+ def __init__(__self__, resource_name: str, *args, **kwargs):
473
+ resource_args, opts = _utilities.get_resource_args_opts(AuthBackendConfigArgs, pulumi.ResourceOptions, *args, **kwargs)
474
+ if resource_args is not None:
475
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
476
+ else:
477
+ __self__._internal_init(resource_name, *args, **kwargs)
478
+
479
+ def _internal_init(__self__,
480
+ resource_name: str,
481
+ opts: Optional[pulumi.ResourceOptions] = None,
482
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
483
+ disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
484
+ disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
485
+ issuer: Optional[pulumi.Input[_builtins.str]] = None,
486
+ kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
487
+ kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
488
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
489
+ pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
490
+ token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
491
+ use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None,
492
+ __props__=None):
493
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
494
+ if not isinstance(opts, pulumi.ResourceOptions):
495
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
496
+ if opts.id is None:
497
+ if __props__ is not None:
498
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
499
+ __props__ = AuthBackendConfigArgs.__new__(AuthBackendConfigArgs)
500
+
501
+ __props__.__dict__["backend"] = backend
502
+ __props__.__dict__["disable_iss_validation"] = disable_iss_validation
503
+ __props__.__dict__["disable_local_ca_jwt"] = disable_local_ca_jwt
504
+ __props__.__dict__["issuer"] = issuer
505
+ __props__.__dict__["kubernetes_ca_cert"] = kubernetes_ca_cert
506
+ if kubernetes_host is None and not opts.urn:
507
+ raise TypeError("Missing required property 'kubernetes_host'")
508
+ __props__.__dict__["kubernetes_host"] = kubernetes_host
509
+ __props__.__dict__["namespace"] = namespace
510
+ __props__.__dict__["pem_keys"] = pem_keys
511
+ __props__.__dict__["token_reviewer_jwt"] = None if token_reviewer_jwt is None else pulumi.Output.secret(token_reviewer_jwt)
512
+ __props__.__dict__["use_annotations_as_alias_metadata"] = use_annotations_as_alias_metadata
513
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["tokenReviewerJwt"])
514
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
515
+ super(AuthBackendConfig, __self__).__init__(
516
+ 'vault:kubernetes/authBackendConfig:AuthBackendConfig',
517
+ resource_name,
518
+ __props__,
519
+ opts)
520
+
521
+ @staticmethod
522
+ def get(resource_name: str,
523
+ id: pulumi.Input[str],
524
+ opts: Optional[pulumi.ResourceOptions] = None,
525
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
526
+ disable_iss_validation: Optional[pulumi.Input[_builtins.bool]] = None,
527
+ disable_local_ca_jwt: Optional[pulumi.Input[_builtins.bool]] = None,
528
+ issuer: Optional[pulumi.Input[_builtins.str]] = None,
529
+ kubernetes_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
530
+ kubernetes_host: Optional[pulumi.Input[_builtins.str]] = None,
531
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
532
+ pem_keys: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
533
+ token_reviewer_jwt: Optional[pulumi.Input[_builtins.str]] = None,
534
+ use_annotations_as_alias_metadata: Optional[pulumi.Input[_builtins.bool]] = None) -> 'AuthBackendConfig':
535
+ """
536
+ Get an existing AuthBackendConfig resource's state with the given name, id, and optional extra
537
+ properties used to qualify the lookup.
538
+
539
+ :param str resource_name: The unique name of the resulting resource.
540
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
541
+ :param pulumi.ResourceOptions opts: Options for the resource.
542
+ :param pulumi.Input[_builtins.str] backend: Unique name of the kubernetes backend to configure.
543
+ :param pulumi.Input[_builtins.bool] disable_iss_validation: Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
544
+ :param pulumi.Input[_builtins.bool] disable_local_ca_jwt: Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
545
+ :param pulumi.Input[_builtins.str] issuer: JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
546
+ :param pulumi.Input[_builtins.str] kubernetes_ca_cert: PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
547
+ :param pulumi.Input[_builtins.str] kubernetes_host: Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
548
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
549
+ The value should not contain leading or trailing forward slashes.
550
+ The `namespace` is always relative to the provider's configured namespace.
551
+ *Available only for Vault Enterprise*.
552
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pem_keys: List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
553
+ :param pulumi.Input[_builtins.str] token_reviewer_jwt: A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
554
+ :param pulumi.Input[_builtins.bool] use_annotations_as_alias_metadata: Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
555
+ """
556
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
557
+
558
+ __props__ = _AuthBackendConfigState.__new__(_AuthBackendConfigState)
559
+
560
+ __props__.__dict__["backend"] = backend
561
+ __props__.__dict__["disable_iss_validation"] = disable_iss_validation
562
+ __props__.__dict__["disable_local_ca_jwt"] = disable_local_ca_jwt
563
+ __props__.__dict__["issuer"] = issuer
564
+ __props__.__dict__["kubernetes_ca_cert"] = kubernetes_ca_cert
565
+ __props__.__dict__["kubernetes_host"] = kubernetes_host
566
+ __props__.__dict__["namespace"] = namespace
567
+ __props__.__dict__["pem_keys"] = pem_keys
568
+ __props__.__dict__["token_reviewer_jwt"] = token_reviewer_jwt
569
+ __props__.__dict__["use_annotations_as_alias_metadata"] = use_annotations_as_alias_metadata
570
+ return AuthBackendConfig(resource_name, opts=opts, __props__=__props__)
571
+
572
+ @_builtins.property
573
+ @pulumi.getter
574
+ def backend(self) -> pulumi.Output[Optional[_builtins.str]]:
575
+ """
576
+ Unique name of the kubernetes backend to configure.
577
+ """
578
+ return pulumi.get(self, "backend")
579
+
580
+ @_builtins.property
581
+ @pulumi.getter(name="disableIssValidation")
582
+ def disable_iss_validation(self) -> pulumi.Output[_builtins.bool]:
583
+ """
584
+ Disable JWT issuer validation. Allows to skip ISS validation. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
585
+ """
586
+ return pulumi.get(self, "disable_iss_validation")
587
+
588
+ @_builtins.property
589
+ @pulumi.getter(name="disableLocalCaJwt")
590
+ def disable_local_ca_jwt(self) -> pulumi.Output[_builtins.bool]:
591
+ """
592
+ Disable defaulting to the local CA cert and service account JWT when running in a Kubernetes pod. Requires Vault `v1.5.4+` or Vault auth kubernetes plugin `v0.7.1+`
593
+ """
594
+ return pulumi.get(self, "disable_local_ca_jwt")
595
+
596
+ @_builtins.property
597
+ @pulumi.getter
598
+ def issuer(self) -> pulumi.Output[Optional[_builtins.str]]:
599
+ """
600
+ JWT issuer. If no issuer is specified, `kubernetes.io/serviceaccount` will be used as the default issuer.
601
+ """
602
+ return pulumi.get(self, "issuer")
603
+
604
+ @_builtins.property
605
+ @pulumi.getter(name="kubernetesCaCert")
606
+ def kubernetes_ca_cert(self) -> pulumi.Output[_builtins.str]:
607
+ """
608
+ PEM encoded CA cert for use by the TLS client used to talk with the Kubernetes API.
609
+ """
610
+ return pulumi.get(self, "kubernetes_ca_cert")
611
+
612
+ @_builtins.property
613
+ @pulumi.getter(name="kubernetesHost")
614
+ def kubernetes_host(self) -> pulumi.Output[_builtins.str]:
615
+ """
616
+ Host must be a host string, a host:port pair, or a URL to the base of the Kubernetes API server.
617
+ """
618
+ return pulumi.get(self, "kubernetes_host")
619
+
620
+ @_builtins.property
621
+ @pulumi.getter
622
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
623
+ """
624
+ The namespace to provision the resource in.
625
+ The value should not contain leading or trailing forward slashes.
626
+ The `namespace` is always relative to the provider's configured namespace.
627
+ *Available only for Vault Enterprise*.
628
+ """
629
+ return pulumi.get(self, "namespace")
630
+
631
+ @_builtins.property
632
+ @pulumi.getter(name="pemKeys")
633
+ def pem_keys(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
634
+ """
635
+ List of PEM-formatted public keys or certificates used to verify the signatures of Kubernetes service account JWTs. If a certificate is given, its public key will be extracted. Not every installation of Kubernetes exposes these keys.
636
+ """
637
+ return pulumi.get(self, "pem_keys")
638
+
639
+ @_builtins.property
640
+ @pulumi.getter(name="tokenReviewerJwt")
641
+ def token_reviewer_jwt(self) -> pulumi.Output[Optional[_builtins.str]]:
642
+ """
643
+ A service account JWT (or other token) used as a bearer token to access the TokenReview API to validate other JWTs during login. If not set the JWT used for login will be used to access the API.
644
+ """
645
+ return pulumi.get(self, "token_reviewer_jwt")
646
+
647
+ @_builtins.property
648
+ @pulumi.getter(name="useAnnotationsAsAliasMetadata")
649
+ def use_annotations_as_alias_metadata(self) -> pulumi.Output[_builtins.bool]:
650
+ """
651
+ Use annotations from the client token's associated service account as alias metadata for the Vault entity. Requires Vault `v1.16+` or Vault auth kubernetes plugin `v0.18.0+`
652
+ """
653
+ return pulumi.get(self, "use_annotations_as_alias_metadata")
654
+