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,299 @@
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__ = ['PluginPinnedVersionArgs', 'PluginPinnedVersion']
18
+
19
+ @pulumi.input_type
20
+ class PluginPinnedVersionArgs:
21
+ def __init__(__self__, *,
22
+ type: pulumi.Input[_builtins.str],
23
+ version: pulumi.Input[_builtins.str],
24
+ name: Optional[pulumi.Input[_builtins.str]] = None):
25
+ """
26
+ The set of arguments for constructing a PluginPinnedVersion resource.
27
+ :param pulumi.Input[_builtins.str] type: Type of plugin; one of "auth", "secret", or "database".
28
+ :param pulumi.Input[_builtins.str] version: Semantic version of the plugin to pin.
29
+ :param pulumi.Input[_builtins.str] name: Name of the plugin.
30
+ """
31
+ pulumi.set(__self__, "type", type)
32
+ pulumi.set(__self__, "version", version)
33
+ if name is not None:
34
+ pulumi.set(__self__, "name", name)
35
+
36
+ @_builtins.property
37
+ @pulumi.getter
38
+ def type(self) -> pulumi.Input[_builtins.str]:
39
+ """
40
+ Type of plugin; one of "auth", "secret", or "database".
41
+ """
42
+ return pulumi.get(self, "type")
43
+
44
+ @type.setter
45
+ def type(self, value: pulumi.Input[_builtins.str]):
46
+ pulumi.set(self, "type", value)
47
+
48
+ @_builtins.property
49
+ @pulumi.getter
50
+ def version(self) -> pulumi.Input[_builtins.str]:
51
+ """
52
+ Semantic version of the plugin to pin.
53
+ """
54
+ return pulumi.get(self, "version")
55
+
56
+ @version.setter
57
+ def version(self, value: pulumi.Input[_builtins.str]):
58
+ pulumi.set(self, "version", value)
59
+
60
+ @_builtins.property
61
+ @pulumi.getter
62
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
63
+ """
64
+ Name of the plugin.
65
+ """
66
+ return pulumi.get(self, "name")
67
+
68
+ @name.setter
69
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
70
+ pulumi.set(self, "name", value)
71
+
72
+
73
+ @pulumi.input_type
74
+ class _PluginPinnedVersionState:
75
+ def __init__(__self__, *,
76
+ name: Optional[pulumi.Input[_builtins.str]] = None,
77
+ type: Optional[pulumi.Input[_builtins.str]] = None,
78
+ version: Optional[pulumi.Input[_builtins.str]] = None):
79
+ """
80
+ Input properties used for looking up and filtering PluginPinnedVersion resources.
81
+ :param pulumi.Input[_builtins.str] name: Name of the plugin.
82
+ :param pulumi.Input[_builtins.str] type: Type of plugin; one of "auth", "secret", or "database".
83
+ :param pulumi.Input[_builtins.str] version: Semantic version of the plugin to pin.
84
+ """
85
+ if name is not None:
86
+ pulumi.set(__self__, "name", name)
87
+ if type is not None:
88
+ pulumi.set(__self__, "type", type)
89
+ if version is not None:
90
+ pulumi.set(__self__, "version", version)
91
+
92
+ @_builtins.property
93
+ @pulumi.getter
94
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
95
+ """
96
+ Name of the plugin.
97
+ """
98
+ return pulumi.get(self, "name")
99
+
100
+ @name.setter
101
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
102
+ pulumi.set(self, "name", value)
103
+
104
+ @_builtins.property
105
+ @pulumi.getter
106
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
107
+ """
108
+ Type of plugin; one of "auth", "secret", or "database".
109
+ """
110
+ return pulumi.get(self, "type")
111
+
112
+ @type.setter
113
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
114
+ pulumi.set(self, "type", value)
115
+
116
+ @_builtins.property
117
+ @pulumi.getter
118
+ def version(self) -> Optional[pulumi.Input[_builtins.str]]:
119
+ """
120
+ Semantic version of the plugin to pin.
121
+ """
122
+ return pulumi.get(self, "version")
123
+
124
+ @version.setter
125
+ def version(self, value: Optional[pulumi.Input[_builtins.str]]):
126
+ pulumi.set(self, "version", value)
127
+
128
+
129
+ @pulumi.type_token("vault:index/pluginPinnedVersion:PluginPinnedVersion")
130
+ class PluginPinnedVersion(pulumi.CustomResource):
131
+ @overload
132
+ def __init__(__self__,
133
+ resource_name: str,
134
+ opts: Optional[pulumi.ResourceOptions] = None,
135
+ name: Optional[pulumi.Input[_builtins.str]] = None,
136
+ type: Optional[pulumi.Input[_builtins.str]] = None,
137
+ version: Optional[pulumi.Input[_builtins.str]] = None,
138
+ __props__=None):
139
+ """
140
+ ## Example Usage
141
+
142
+ ```python
143
+ import pulumi
144
+ import pulumi_vault as vault
145
+
146
+ jwt = vault.Plugin("jwt",
147
+ type="auth",
148
+ name="jwt",
149
+ command="vault-plugin-auth-jwt",
150
+ version="v0.17.0",
151
+ sha256="6bd0a803ed742aa3ce35e4fa23d2c8d550e6c1567bf63410cec489c28b68b0fc",
152
+ envs=["HTTP_PROXY=http://proxy.example.com:8080"])
153
+ jwt_pin = vault.PluginPinnedVersion("jwt_pin",
154
+ type=jwt.type,
155
+ name=jwt.name,
156
+ version=jwt.version)
157
+ jwt_auth = vault.AuthBackend("jwt_auth", type=jwt_pin.name)
158
+ ```
159
+
160
+ ## Import
161
+
162
+ Pinned plugin versions can be imported using `type/name` as the ID, e.g.
163
+
164
+ ```sh
165
+ $ pulumi import vault:index/pluginPinnedVersion:PluginPinnedVersion jwt_pin auth/jwt
166
+ ```
167
+
168
+ :param str resource_name: The name of the resource.
169
+ :param pulumi.ResourceOptions opts: Options for the resource.
170
+ :param pulumi.Input[_builtins.str] name: Name of the plugin.
171
+ :param pulumi.Input[_builtins.str] type: Type of plugin; one of "auth", "secret", or "database".
172
+ :param pulumi.Input[_builtins.str] version: Semantic version of the plugin to pin.
173
+ """
174
+ ...
175
+ @overload
176
+ def __init__(__self__,
177
+ resource_name: str,
178
+ args: PluginPinnedVersionArgs,
179
+ opts: Optional[pulumi.ResourceOptions] = None):
180
+ """
181
+ ## Example Usage
182
+
183
+ ```python
184
+ import pulumi
185
+ import pulumi_vault as vault
186
+
187
+ jwt = vault.Plugin("jwt",
188
+ type="auth",
189
+ name="jwt",
190
+ command="vault-plugin-auth-jwt",
191
+ version="v0.17.0",
192
+ sha256="6bd0a803ed742aa3ce35e4fa23d2c8d550e6c1567bf63410cec489c28b68b0fc",
193
+ envs=["HTTP_PROXY=http://proxy.example.com:8080"])
194
+ jwt_pin = vault.PluginPinnedVersion("jwt_pin",
195
+ type=jwt.type,
196
+ name=jwt.name,
197
+ version=jwt.version)
198
+ jwt_auth = vault.AuthBackend("jwt_auth", type=jwt_pin.name)
199
+ ```
200
+
201
+ ## Import
202
+
203
+ Pinned plugin versions can be imported using `type/name` as the ID, e.g.
204
+
205
+ ```sh
206
+ $ pulumi import vault:index/pluginPinnedVersion:PluginPinnedVersion jwt_pin auth/jwt
207
+ ```
208
+
209
+ :param str resource_name: The name of the resource.
210
+ :param PluginPinnedVersionArgs args: The arguments to use to populate this resource's properties.
211
+ :param pulumi.ResourceOptions opts: Options for the resource.
212
+ """
213
+ ...
214
+ def __init__(__self__, resource_name: str, *args, **kwargs):
215
+ resource_args, opts = _utilities.get_resource_args_opts(PluginPinnedVersionArgs, pulumi.ResourceOptions, *args, **kwargs)
216
+ if resource_args is not None:
217
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
218
+ else:
219
+ __self__._internal_init(resource_name, *args, **kwargs)
220
+
221
+ def _internal_init(__self__,
222
+ resource_name: str,
223
+ opts: Optional[pulumi.ResourceOptions] = None,
224
+ name: Optional[pulumi.Input[_builtins.str]] = None,
225
+ type: Optional[pulumi.Input[_builtins.str]] = None,
226
+ version: Optional[pulumi.Input[_builtins.str]] = None,
227
+ __props__=None):
228
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
229
+ if not isinstance(opts, pulumi.ResourceOptions):
230
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
231
+ if opts.id is None:
232
+ if __props__ is not None:
233
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
234
+ __props__ = PluginPinnedVersionArgs.__new__(PluginPinnedVersionArgs)
235
+
236
+ __props__.__dict__["name"] = name
237
+ if type is None and not opts.urn:
238
+ raise TypeError("Missing required property 'type'")
239
+ __props__.__dict__["type"] = type
240
+ if version is None and not opts.urn:
241
+ raise TypeError("Missing required property 'version'")
242
+ __props__.__dict__["version"] = version
243
+ super(PluginPinnedVersion, __self__).__init__(
244
+ 'vault:index/pluginPinnedVersion:PluginPinnedVersion',
245
+ resource_name,
246
+ __props__,
247
+ opts)
248
+
249
+ @staticmethod
250
+ def get(resource_name: str,
251
+ id: pulumi.Input[str],
252
+ opts: Optional[pulumi.ResourceOptions] = None,
253
+ name: Optional[pulumi.Input[_builtins.str]] = None,
254
+ type: Optional[pulumi.Input[_builtins.str]] = None,
255
+ version: Optional[pulumi.Input[_builtins.str]] = None) -> 'PluginPinnedVersion':
256
+ """
257
+ Get an existing PluginPinnedVersion resource's state with the given name, id, and optional extra
258
+ properties used to qualify the lookup.
259
+
260
+ :param str resource_name: The unique name of the resulting resource.
261
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
262
+ :param pulumi.ResourceOptions opts: Options for the resource.
263
+ :param pulumi.Input[_builtins.str] name: Name of the plugin.
264
+ :param pulumi.Input[_builtins.str] type: Type of plugin; one of "auth", "secret", or "database".
265
+ :param pulumi.Input[_builtins.str] version: Semantic version of the plugin to pin.
266
+ """
267
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
268
+
269
+ __props__ = _PluginPinnedVersionState.__new__(_PluginPinnedVersionState)
270
+
271
+ __props__.__dict__["name"] = name
272
+ __props__.__dict__["type"] = type
273
+ __props__.__dict__["version"] = version
274
+ return PluginPinnedVersion(resource_name, opts=opts, __props__=__props__)
275
+
276
+ @_builtins.property
277
+ @pulumi.getter
278
+ def name(self) -> pulumi.Output[_builtins.str]:
279
+ """
280
+ Name of the plugin.
281
+ """
282
+ return pulumi.get(self, "name")
283
+
284
+ @_builtins.property
285
+ @pulumi.getter
286
+ def type(self) -> pulumi.Output[_builtins.str]:
287
+ """
288
+ Type of plugin; one of "auth", "secret", or "database".
289
+ """
290
+ return pulumi.get(self, "type")
291
+
292
+ @_builtins.property
293
+ @pulumi.getter
294
+ def version(self) -> pulumi.Output[_builtins.str]:
295
+ """
296
+ Semantic version of the plugin to pin.
297
+ """
298
+ return pulumi.get(self, "version")
299
+
pulumi_vault/policy.py ADDED
@@ -0,0 +1,279 @@
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__ = ['PolicyArgs', 'Policy']
18
+
19
+ @pulumi.input_type
20
+ class PolicyArgs:
21
+ def __init__(__self__, *,
22
+ policy: pulumi.Input[_builtins.str],
23
+ name: Optional[pulumi.Input[_builtins.str]] = None,
24
+ namespace: Optional[pulumi.Input[_builtins.str]] = None):
25
+ """
26
+ The set of arguments for constructing a Policy resource.
27
+ :param pulumi.Input[_builtins.str] policy: String containing a Vault policy
28
+ :param pulumi.Input[_builtins.str] name: The name of the policy
29
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
30
+ The value should not contain leading or trailing forward slashes.
31
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
32
+ *Available only for Vault Enterprise*.
33
+ """
34
+ pulumi.set(__self__, "policy", policy)
35
+ if name is not None:
36
+ pulumi.set(__self__, "name", name)
37
+ if namespace is not None:
38
+ pulumi.set(__self__, "namespace", namespace)
39
+
40
+ @_builtins.property
41
+ @pulumi.getter
42
+ def policy(self) -> pulumi.Input[_builtins.str]:
43
+ """
44
+ String containing a Vault policy
45
+ """
46
+ return pulumi.get(self, "policy")
47
+
48
+ @policy.setter
49
+ def policy(self, value: pulumi.Input[_builtins.str]):
50
+ pulumi.set(self, "policy", value)
51
+
52
+ @_builtins.property
53
+ @pulumi.getter
54
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
55
+ """
56
+ The name of the policy
57
+ """
58
+ return pulumi.get(self, "name")
59
+
60
+ @name.setter
61
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
62
+ pulumi.set(self, "name", value)
63
+
64
+ @_builtins.property
65
+ @pulumi.getter
66
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
67
+ """
68
+ The namespace to provision the resource in.
69
+ The value should not contain leading or trailing forward slashes.
70
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
71
+ *Available only for Vault Enterprise*.
72
+ """
73
+ return pulumi.get(self, "namespace")
74
+
75
+ @namespace.setter
76
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
77
+ pulumi.set(self, "namespace", value)
78
+
79
+
80
+ @pulumi.input_type
81
+ class _PolicyState:
82
+ def __init__(__self__, *,
83
+ name: Optional[pulumi.Input[_builtins.str]] = None,
84
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
85
+ policy: Optional[pulumi.Input[_builtins.str]] = None):
86
+ """
87
+ Input properties used for looking up and filtering Policy resources.
88
+ :param pulumi.Input[_builtins.str] name: The name of the policy
89
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
90
+ The value should not contain leading or trailing forward slashes.
91
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
92
+ *Available only for Vault Enterprise*.
93
+ :param pulumi.Input[_builtins.str] policy: String containing a Vault policy
94
+ """
95
+ if name is not None:
96
+ pulumi.set(__self__, "name", name)
97
+ if namespace is not None:
98
+ pulumi.set(__self__, "namespace", namespace)
99
+ if policy is not None:
100
+ pulumi.set(__self__, "policy", policy)
101
+
102
+ @_builtins.property
103
+ @pulumi.getter
104
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
105
+ """
106
+ The name of the policy
107
+ """
108
+ return pulumi.get(self, "name")
109
+
110
+ @name.setter
111
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
112
+ pulumi.set(self, "name", value)
113
+
114
+ @_builtins.property
115
+ @pulumi.getter
116
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
117
+ """
118
+ The namespace to provision the resource in.
119
+ The value should not contain leading or trailing forward slashes.
120
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
121
+ *Available only for Vault Enterprise*.
122
+ """
123
+ return pulumi.get(self, "namespace")
124
+
125
+ @namespace.setter
126
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
127
+ pulumi.set(self, "namespace", value)
128
+
129
+ @_builtins.property
130
+ @pulumi.getter
131
+ def policy(self) -> Optional[pulumi.Input[_builtins.str]]:
132
+ """
133
+ String containing a Vault policy
134
+ """
135
+ return pulumi.get(self, "policy")
136
+
137
+ @policy.setter
138
+ def policy(self, value: Optional[pulumi.Input[_builtins.str]]):
139
+ pulumi.set(self, "policy", value)
140
+
141
+
142
+ @pulumi.type_token("vault:index/policy:Policy")
143
+ class Policy(pulumi.CustomResource):
144
+ @overload
145
+ def __init__(__self__,
146
+ resource_name: str,
147
+ opts: Optional[pulumi.ResourceOptions] = None,
148
+ name: Optional[pulumi.Input[_builtins.str]] = None,
149
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
150
+ policy: Optional[pulumi.Input[_builtins.str]] = None,
151
+ __props__=None):
152
+ """
153
+ ## Import
154
+
155
+ Policies can be imported using the `name`, e.g.
156
+
157
+ ```sh
158
+ $ pulumi import vault:index/policy:Policy example dev-team
159
+ ```
160
+
161
+ :param str resource_name: The name of the resource.
162
+ :param pulumi.ResourceOptions opts: Options for the resource.
163
+ :param pulumi.Input[_builtins.str] name: The name of the policy
164
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
165
+ The value should not contain leading or trailing forward slashes.
166
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
167
+ *Available only for Vault Enterprise*.
168
+ :param pulumi.Input[_builtins.str] policy: String containing a Vault policy
169
+ """
170
+ ...
171
+ @overload
172
+ def __init__(__self__,
173
+ resource_name: str,
174
+ args: PolicyArgs,
175
+ opts: Optional[pulumi.ResourceOptions] = None):
176
+ """
177
+ ## Import
178
+
179
+ Policies can be imported using the `name`, e.g.
180
+
181
+ ```sh
182
+ $ pulumi import vault:index/policy:Policy example dev-team
183
+ ```
184
+
185
+ :param str resource_name: The name of the resource.
186
+ :param PolicyArgs args: The arguments to use to populate this resource's properties.
187
+ :param pulumi.ResourceOptions opts: Options for the resource.
188
+ """
189
+ ...
190
+ def __init__(__self__, resource_name: str, *args, **kwargs):
191
+ resource_args, opts = _utilities.get_resource_args_opts(PolicyArgs, pulumi.ResourceOptions, *args, **kwargs)
192
+ if resource_args is not None:
193
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
194
+ else:
195
+ __self__._internal_init(resource_name, *args, **kwargs)
196
+
197
+ def _internal_init(__self__,
198
+ resource_name: str,
199
+ opts: Optional[pulumi.ResourceOptions] = None,
200
+ name: Optional[pulumi.Input[_builtins.str]] = None,
201
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
202
+ policy: Optional[pulumi.Input[_builtins.str]] = None,
203
+ __props__=None):
204
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
205
+ if not isinstance(opts, pulumi.ResourceOptions):
206
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
207
+ if opts.id is None:
208
+ if __props__ is not None:
209
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
210
+ __props__ = PolicyArgs.__new__(PolicyArgs)
211
+
212
+ __props__.__dict__["name"] = name
213
+ __props__.__dict__["namespace"] = namespace
214
+ if policy is None and not opts.urn:
215
+ raise TypeError("Missing required property 'policy'")
216
+ __props__.__dict__["policy"] = policy
217
+ super(Policy, __self__).__init__(
218
+ 'vault:index/policy:Policy',
219
+ resource_name,
220
+ __props__,
221
+ opts)
222
+
223
+ @staticmethod
224
+ def get(resource_name: str,
225
+ id: pulumi.Input[str],
226
+ opts: Optional[pulumi.ResourceOptions] = None,
227
+ name: Optional[pulumi.Input[_builtins.str]] = None,
228
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
229
+ policy: Optional[pulumi.Input[_builtins.str]] = None) -> 'Policy':
230
+ """
231
+ Get an existing Policy resource's state with the given name, id, and optional extra
232
+ properties used to qualify the lookup.
233
+
234
+ :param str resource_name: The unique name of the resulting resource.
235
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
236
+ :param pulumi.ResourceOptions opts: Options for the resource.
237
+ :param pulumi.Input[_builtins.str] name: The name of the policy
238
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
239
+ The value should not contain leading or trailing forward slashes.
240
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
241
+ *Available only for Vault Enterprise*.
242
+ :param pulumi.Input[_builtins.str] policy: String containing a Vault policy
243
+ """
244
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
245
+
246
+ __props__ = _PolicyState.__new__(_PolicyState)
247
+
248
+ __props__.__dict__["name"] = name
249
+ __props__.__dict__["namespace"] = namespace
250
+ __props__.__dict__["policy"] = policy
251
+ return Policy(resource_name, opts=opts, __props__=__props__)
252
+
253
+ @_builtins.property
254
+ @pulumi.getter
255
+ def name(self) -> pulumi.Output[_builtins.str]:
256
+ """
257
+ The name of the policy
258
+ """
259
+ return pulumi.get(self, "name")
260
+
261
+ @_builtins.property
262
+ @pulumi.getter
263
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
264
+ """
265
+ The namespace to provision the resource in.
266
+ The value should not contain leading or trailing forward slashes.
267
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
268
+ *Available only for Vault Enterprise*.
269
+ """
270
+ return pulumi.get(self, "namespace")
271
+
272
+ @_builtins.property
273
+ @pulumi.getter
274
+ def policy(self) -> pulumi.Output[_builtins.str]:
275
+ """
276
+ String containing a Vault policy
277
+ """
278
+ return pulumi.get(self, "policy")
279
+