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,486 @@
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__ = ['SecretArgs', 'Secret']
18
+
19
+ @pulumi.input_type
20
+ class SecretArgs:
21
+ def __init__(__self__, *,
22
+ data_json: pulumi.Input[_builtins.str],
23
+ path: pulumi.Input[_builtins.str],
24
+ delete_all_versions: Optional[pulumi.Input[_builtins.bool]] = None,
25
+ disable_read: Optional[pulumi.Input[_builtins.bool]] = None,
26
+ namespace: Optional[pulumi.Input[_builtins.str]] = None):
27
+ """
28
+ The set of arguments for constructing a Secret resource.
29
+ :param pulumi.Input[_builtins.str] data_json: String containing a JSON-encoded object that will be
30
+ written as the secret data at the given path.
31
+ :param pulumi.Input[_builtins.str] path: The full logical path at which to write the given data.
32
+ To write data into the "generic" secret backend mounted in Vault by default,
33
+ this should be prefixed with `secret/`. Writing to other backends with this
34
+ resource is possible; consult each backend's documentation to see which
35
+ endpoints support the `PUT` and `DELETE` methods.
36
+ :param pulumi.Input[_builtins.bool] delete_all_versions: true/false. Only applicable for kv-v2 stores.
37
+ If set to `true`, permanently deletes all versions for
38
+ the specified key. The default behavior is to only delete the latest version of the
39
+ secret.
40
+ :param pulumi.Input[_builtins.bool] disable_read: true/false. Set this to true if your vault
41
+ authentication is not able to read the data. Setting this to `true` will
42
+ break drift detection. Defaults to false.
43
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
44
+ The value should not contain leading or trailing forward slashes.
45
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
46
+ *Available only for Vault Enterprise*.
47
+ """
48
+ pulumi.set(__self__, "data_json", data_json)
49
+ pulumi.set(__self__, "path", path)
50
+ if delete_all_versions is not None:
51
+ pulumi.set(__self__, "delete_all_versions", delete_all_versions)
52
+ if disable_read is not None:
53
+ pulumi.set(__self__, "disable_read", disable_read)
54
+ if namespace is not None:
55
+ pulumi.set(__self__, "namespace", namespace)
56
+
57
+ @_builtins.property
58
+ @pulumi.getter(name="dataJson")
59
+ def data_json(self) -> pulumi.Input[_builtins.str]:
60
+ """
61
+ String containing a JSON-encoded object that will be
62
+ written as the secret data at the given path.
63
+ """
64
+ return pulumi.get(self, "data_json")
65
+
66
+ @data_json.setter
67
+ def data_json(self, value: pulumi.Input[_builtins.str]):
68
+ pulumi.set(self, "data_json", value)
69
+
70
+ @_builtins.property
71
+ @pulumi.getter
72
+ def path(self) -> pulumi.Input[_builtins.str]:
73
+ """
74
+ The full logical path at which to write the given data.
75
+ To write data into the "generic" secret backend mounted in Vault by default,
76
+ this should be prefixed with `secret/`. Writing to other backends with this
77
+ resource is possible; consult each backend's documentation to see which
78
+ endpoints support the `PUT` and `DELETE` methods.
79
+ """
80
+ return pulumi.get(self, "path")
81
+
82
+ @path.setter
83
+ def path(self, value: pulumi.Input[_builtins.str]):
84
+ pulumi.set(self, "path", value)
85
+
86
+ @_builtins.property
87
+ @pulumi.getter(name="deleteAllVersions")
88
+ def delete_all_versions(self) -> Optional[pulumi.Input[_builtins.bool]]:
89
+ """
90
+ true/false. Only applicable for kv-v2 stores.
91
+ If set to `true`, permanently deletes all versions for
92
+ the specified key. The default behavior is to only delete the latest version of the
93
+ secret.
94
+ """
95
+ return pulumi.get(self, "delete_all_versions")
96
+
97
+ @delete_all_versions.setter
98
+ def delete_all_versions(self, value: Optional[pulumi.Input[_builtins.bool]]):
99
+ pulumi.set(self, "delete_all_versions", value)
100
+
101
+ @_builtins.property
102
+ @pulumi.getter(name="disableRead")
103
+ def disable_read(self) -> Optional[pulumi.Input[_builtins.bool]]:
104
+ """
105
+ true/false. Set this to true if your vault
106
+ authentication is not able to read the data. Setting this to `true` will
107
+ break drift detection. Defaults to false.
108
+ """
109
+ return pulumi.get(self, "disable_read")
110
+
111
+ @disable_read.setter
112
+ def disable_read(self, value: Optional[pulumi.Input[_builtins.bool]]):
113
+ pulumi.set(self, "disable_read", value)
114
+
115
+ @_builtins.property
116
+ @pulumi.getter
117
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
118
+ """
119
+ The namespace to provision the resource in.
120
+ The value should not contain leading or trailing forward slashes.
121
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
122
+ *Available only for Vault Enterprise*.
123
+ """
124
+ return pulumi.get(self, "namespace")
125
+
126
+ @namespace.setter
127
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
128
+ pulumi.set(self, "namespace", value)
129
+
130
+
131
+ @pulumi.input_type
132
+ class _SecretState:
133
+ def __init__(__self__, *,
134
+ data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
135
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
136
+ delete_all_versions: Optional[pulumi.Input[_builtins.bool]] = None,
137
+ disable_read: Optional[pulumi.Input[_builtins.bool]] = None,
138
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
139
+ path: Optional[pulumi.Input[_builtins.str]] = None):
140
+ """
141
+ Input properties used for looking up and filtering Secret resources.
142
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] data: A mapping whose keys are the top-level data keys returned from
143
+ Vault and whose values are the corresponding values. This map can only
144
+ represent string data, so any non-string values returned from Vault are
145
+ serialized as JSON.
146
+ :param pulumi.Input[_builtins.str] data_json: String containing a JSON-encoded object that will be
147
+ written as the secret data at the given path.
148
+ :param pulumi.Input[_builtins.bool] delete_all_versions: true/false. Only applicable for kv-v2 stores.
149
+ If set to `true`, permanently deletes all versions for
150
+ the specified key. The default behavior is to only delete the latest version of the
151
+ secret.
152
+ :param pulumi.Input[_builtins.bool] disable_read: true/false. Set this to true if your vault
153
+ authentication is not able to read the data. Setting this to `true` will
154
+ break drift detection. Defaults to false.
155
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
156
+ The value should not contain leading or trailing forward slashes.
157
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
158
+ *Available only for Vault Enterprise*.
159
+ :param pulumi.Input[_builtins.str] path: The full logical path at which to write the given data.
160
+ To write data into the "generic" secret backend mounted in Vault by default,
161
+ this should be prefixed with `secret/`. Writing to other backends with this
162
+ resource is possible; consult each backend's documentation to see which
163
+ endpoints support the `PUT` and `DELETE` methods.
164
+ """
165
+ if data is not None:
166
+ pulumi.set(__self__, "data", data)
167
+ if data_json is not None:
168
+ pulumi.set(__self__, "data_json", data_json)
169
+ if delete_all_versions is not None:
170
+ pulumi.set(__self__, "delete_all_versions", delete_all_versions)
171
+ if disable_read is not None:
172
+ pulumi.set(__self__, "disable_read", disable_read)
173
+ if namespace is not None:
174
+ pulumi.set(__self__, "namespace", namespace)
175
+ if path is not None:
176
+ pulumi.set(__self__, "path", path)
177
+
178
+ @_builtins.property
179
+ @pulumi.getter
180
+ def data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
181
+ """
182
+ A mapping whose keys are the top-level data keys returned from
183
+ Vault and whose values are the corresponding values. This map can only
184
+ represent string data, so any non-string values returned from Vault are
185
+ serialized as JSON.
186
+ """
187
+ return pulumi.get(self, "data")
188
+
189
+ @data.setter
190
+ def data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
191
+ pulumi.set(self, "data", value)
192
+
193
+ @_builtins.property
194
+ @pulumi.getter(name="dataJson")
195
+ def data_json(self) -> Optional[pulumi.Input[_builtins.str]]:
196
+ """
197
+ String containing a JSON-encoded object that will be
198
+ written as the secret data at the given path.
199
+ """
200
+ return pulumi.get(self, "data_json")
201
+
202
+ @data_json.setter
203
+ def data_json(self, value: Optional[pulumi.Input[_builtins.str]]):
204
+ pulumi.set(self, "data_json", value)
205
+
206
+ @_builtins.property
207
+ @pulumi.getter(name="deleteAllVersions")
208
+ def delete_all_versions(self) -> Optional[pulumi.Input[_builtins.bool]]:
209
+ """
210
+ true/false. Only applicable for kv-v2 stores.
211
+ If set to `true`, permanently deletes all versions for
212
+ the specified key. The default behavior is to only delete the latest version of the
213
+ secret.
214
+ """
215
+ return pulumi.get(self, "delete_all_versions")
216
+
217
+ @delete_all_versions.setter
218
+ def delete_all_versions(self, value: Optional[pulumi.Input[_builtins.bool]]):
219
+ pulumi.set(self, "delete_all_versions", value)
220
+
221
+ @_builtins.property
222
+ @pulumi.getter(name="disableRead")
223
+ def disable_read(self) -> Optional[pulumi.Input[_builtins.bool]]:
224
+ """
225
+ true/false. Set this to true if your vault
226
+ authentication is not able to read the data. Setting this to `true` will
227
+ break drift detection. Defaults to false.
228
+ """
229
+ return pulumi.get(self, "disable_read")
230
+
231
+ @disable_read.setter
232
+ def disable_read(self, value: Optional[pulumi.Input[_builtins.bool]]):
233
+ pulumi.set(self, "disable_read", value)
234
+
235
+ @_builtins.property
236
+ @pulumi.getter
237
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
238
+ """
239
+ The namespace to provision the resource in.
240
+ The value should not contain leading or trailing forward slashes.
241
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
242
+ *Available only for Vault Enterprise*.
243
+ """
244
+ return pulumi.get(self, "namespace")
245
+
246
+ @namespace.setter
247
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
248
+ pulumi.set(self, "namespace", value)
249
+
250
+ @_builtins.property
251
+ @pulumi.getter
252
+ def path(self) -> Optional[pulumi.Input[_builtins.str]]:
253
+ """
254
+ The full logical path at which to write the given data.
255
+ To write data into the "generic" secret backend mounted in Vault by default,
256
+ this should be prefixed with `secret/`. Writing to other backends with this
257
+ resource is possible; consult each backend's documentation to see which
258
+ endpoints support the `PUT` and `DELETE` methods.
259
+ """
260
+ return pulumi.get(self, "path")
261
+
262
+ @path.setter
263
+ def path(self, value: Optional[pulumi.Input[_builtins.str]]):
264
+ pulumi.set(self, "path", value)
265
+
266
+
267
+ @pulumi.type_token("vault:generic/secret:Secret")
268
+ class Secret(pulumi.CustomResource):
269
+ @overload
270
+ def __init__(__self__,
271
+ resource_name: str,
272
+ opts: Optional[pulumi.ResourceOptions] = None,
273
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
274
+ delete_all_versions: Optional[pulumi.Input[_builtins.bool]] = None,
275
+ disable_read: Optional[pulumi.Input[_builtins.bool]] = None,
276
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
277
+ path: Optional[pulumi.Input[_builtins.str]] = None,
278
+ __props__=None):
279
+ """
280
+ ## Import
281
+
282
+ Generic secrets can be imported using the `path`, e.g.
283
+
284
+ ```sh
285
+ $ pulumi import vault:generic/secret:Secret example secret/foo
286
+ ```
287
+
288
+ :param str resource_name: The name of the resource.
289
+ :param pulumi.ResourceOptions opts: Options for the resource.
290
+ :param pulumi.Input[_builtins.str] data_json: String containing a JSON-encoded object that will be
291
+ written as the secret data at the given path.
292
+ :param pulumi.Input[_builtins.bool] delete_all_versions: true/false. Only applicable for kv-v2 stores.
293
+ If set to `true`, permanently deletes all versions for
294
+ the specified key. The default behavior is to only delete the latest version of the
295
+ secret.
296
+ :param pulumi.Input[_builtins.bool] disable_read: true/false. Set this to true if your vault
297
+ authentication is not able to read the data. Setting this to `true` will
298
+ break drift detection. Defaults to false.
299
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
300
+ The value should not contain leading or trailing forward slashes.
301
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
302
+ *Available only for Vault Enterprise*.
303
+ :param pulumi.Input[_builtins.str] path: The full logical path at which to write the given data.
304
+ To write data into the "generic" secret backend mounted in Vault by default,
305
+ this should be prefixed with `secret/`. Writing to other backends with this
306
+ resource is possible; consult each backend's documentation to see which
307
+ endpoints support the `PUT` and `DELETE` methods.
308
+ """
309
+ ...
310
+ @overload
311
+ def __init__(__self__,
312
+ resource_name: str,
313
+ args: SecretArgs,
314
+ opts: Optional[pulumi.ResourceOptions] = None):
315
+ """
316
+ ## Import
317
+
318
+ Generic secrets can be imported using the `path`, e.g.
319
+
320
+ ```sh
321
+ $ pulumi import vault:generic/secret:Secret example secret/foo
322
+ ```
323
+
324
+ :param str resource_name: The name of the resource.
325
+ :param SecretArgs args: The arguments to use to populate this resource's properties.
326
+ :param pulumi.ResourceOptions opts: Options for the resource.
327
+ """
328
+ ...
329
+ def __init__(__self__, resource_name: str, *args, **kwargs):
330
+ resource_args, opts = _utilities.get_resource_args_opts(SecretArgs, pulumi.ResourceOptions, *args, **kwargs)
331
+ if resource_args is not None:
332
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
333
+ else:
334
+ __self__._internal_init(resource_name, *args, **kwargs)
335
+
336
+ def _internal_init(__self__,
337
+ resource_name: str,
338
+ opts: Optional[pulumi.ResourceOptions] = None,
339
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
340
+ delete_all_versions: Optional[pulumi.Input[_builtins.bool]] = None,
341
+ disable_read: Optional[pulumi.Input[_builtins.bool]] = None,
342
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
343
+ path: Optional[pulumi.Input[_builtins.str]] = None,
344
+ __props__=None):
345
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
346
+ if not isinstance(opts, pulumi.ResourceOptions):
347
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
348
+ if opts.id is None:
349
+ if __props__ is not None:
350
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
351
+ __props__ = SecretArgs.__new__(SecretArgs)
352
+
353
+ if data_json is None and not opts.urn:
354
+ raise TypeError("Missing required property 'data_json'")
355
+ __props__.__dict__["data_json"] = None if data_json is None else pulumi.Output.secret(data_json)
356
+ __props__.__dict__["delete_all_versions"] = delete_all_versions
357
+ __props__.__dict__["disable_read"] = disable_read
358
+ __props__.__dict__["namespace"] = namespace
359
+ if path is None and not opts.urn:
360
+ raise TypeError("Missing required property 'path'")
361
+ __props__.__dict__["path"] = path
362
+ __props__.__dict__["data"] = None
363
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["data", "dataJson"])
364
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
365
+ super(Secret, __self__).__init__(
366
+ 'vault:generic/secret:Secret',
367
+ resource_name,
368
+ __props__,
369
+ opts)
370
+
371
+ @staticmethod
372
+ def get(resource_name: str,
373
+ id: pulumi.Input[str],
374
+ opts: Optional[pulumi.ResourceOptions] = None,
375
+ data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
376
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
377
+ delete_all_versions: Optional[pulumi.Input[_builtins.bool]] = None,
378
+ disable_read: Optional[pulumi.Input[_builtins.bool]] = None,
379
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
380
+ path: Optional[pulumi.Input[_builtins.str]] = None) -> 'Secret':
381
+ """
382
+ Get an existing Secret resource's state with the given name, id, and optional extra
383
+ properties used to qualify the lookup.
384
+
385
+ :param str resource_name: The unique name of the resulting resource.
386
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
387
+ :param pulumi.ResourceOptions opts: Options for the resource.
388
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] data: A mapping whose keys are the top-level data keys returned from
389
+ Vault and whose values are the corresponding values. This map can only
390
+ represent string data, so any non-string values returned from Vault are
391
+ serialized as JSON.
392
+ :param pulumi.Input[_builtins.str] data_json: String containing a JSON-encoded object that will be
393
+ written as the secret data at the given path.
394
+ :param pulumi.Input[_builtins.bool] delete_all_versions: true/false. Only applicable for kv-v2 stores.
395
+ If set to `true`, permanently deletes all versions for
396
+ the specified key. The default behavior is to only delete the latest version of the
397
+ secret.
398
+ :param pulumi.Input[_builtins.bool] disable_read: true/false. Set this to true if your vault
399
+ authentication is not able to read the data. Setting this to `true` will
400
+ break drift detection. Defaults to false.
401
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
402
+ The value should not contain leading or trailing forward slashes.
403
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
404
+ *Available only for Vault Enterprise*.
405
+ :param pulumi.Input[_builtins.str] path: The full logical path at which to write the given data.
406
+ To write data into the "generic" secret backend mounted in Vault by default,
407
+ this should be prefixed with `secret/`. Writing to other backends with this
408
+ resource is possible; consult each backend's documentation to see which
409
+ endpoints support the `PUT` and `DELETE` methods.
410
+ """
411
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
412
+
413
+ __props__ = _SecretState.__new__(_SecretState)
414
+
415
+ __props__.__dict__["data"] = data
416
+ __props__.__dict__["data_json"] = data_json
417
+ __props__.__dict__["delete_all_versions"] = delete_all_versions
418
+ __props__.__dict__["disable_read"] = disable_read
419
+ __props__.__dict__["namespace"] = namespace
420
+ __props__.__dict__["path"] = path
421
+ return Secret(resource_name, opts=opts, __props__=__props__)
422
+
423
+ @_builtins.property
424
+ @pulumi.getter
425
+ def data(self) -> pulumi.Output[Mapping[str, _builtins.str]]:
426
+ """
427
+ A mapping whose keys are the top-level data keys returned from
428
+ Vault and whose values are the corresponding values. This map can only
429
+ represent string data, so any non-string values returned from Vault are
430
+ serialized as JSON.
431
+ """
432
+ return pulumi.get(self, "data")
433
+
434
+ @_builtins.property
435
+ @pulumi.getter(name="dataJson")
436
+ def data_json(self) -> pulumi.Output[_builtins.str]:
437
+ """
438
+ String containing a JSON-encoded object that will be
439
+ written as the secret data at the given path.
440
+ """
441
+ return pulumi.get(self, "data_json")
442
+
443
+ @_builtins.property
444
+ @pulumi.getter(name="deleteAllVersions")
445
+ def delete_all_versions(self) -> pulumi.Output[Optional[_builtins.bool]]:
446
+ """
447
+ true/false. Only applicable for kv-v2 stores.
448
+ If set to `true`, permanently deletes all versions for
449
+ the specified key. The default behavior is to only delete the latest version of the
450
+ secret.
451
+ """
452
+ return pulumi.get(self, "delete_all_versions")
453
+
454
+ @_builtins.property
455
+ @pulumi.getter(name="disableRead")
456
+ def disable_read(self) -> pulumi.Output[Optional[_builtins.bool]]:
457
+ """
458
+ true/false. Set this to true if your vault
459
+ authentication is not able to read the data. Setting this to `true` will
460
+ break drift detection. Defaults to false.
461
+ """
462
+ return pulumi.get(self, "disable_read")
463
+
464
+ @_builtins.property
465
+ @pulumi.getter
466
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
467
+ """
468
+ The namespace to provision the resource in.
469
+ The value should not contain leading or trailing forward slashes.
470
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
471
+ *Available only for Vault Enterprise*.
472
+ """
473
+ return pulumi.get(self, "namespace")
474
+
475
+ @_builtins.property
476
+ @pulumi.getter
477
+ def path(self) -> pulumi.Output[_builtins.str]:
478
+ """
479
+ The full logical path at which to write the given data.
480
+ To write data into the "generic" secret backend mounted in Vault by default,
481
+ this should be prefixed with `secret/`. Writing to other backends with this
482
+ resource is possible; consult each backend's documentation to see which
483
+ endpoints support the `PUT` and `DELETE` methods.
484
+ """
485
+ return pulumi.get(self, "path")
486
+