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,397 @@
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
+ namespace: Optional[pulumi.Input[_builtins.str]] = None):
25
+ """
26
+ The set of arguments for constructing a Secret resource.
27
+ :param pulumi.Input[_builtins.str] data_json: JSON-encoded string that will be
28
+ written as the secret data at the given path.
29
+ :param pulumi.Input[_builtins.str] path: Full path of the KV-V1 secret.
30
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
31
+ The value should not contain leading or trailing forward slashes.
32
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
33
+ *Available only for Vault Enterprise*.
34
+ """
35
+ pulumi.set(__self__, "data_json", data_json)
36
+ pulumi.set(__self__, "path", path)
37
+ if namespace is not None:
38
+ pulumi.set(__self__, "namespace", namespace)
39
+
40
+ @_builtins.property
41
+ @pulumi.getter(name="dataJson")
42
+ def data_json(self) -> pulumi.Input[_builtins.str]:
43
+ """
44
+ JSON-encoded string that will be
45
+ written as the secret data at the given path.
46
+ """
47
+ return pulumi.get(self, "data_json")
48
+
49
+ @data_json.setter
50
+ def data_json(self, value: pulumi.Input[_builtins.str]):
51
+ pulumi.set(self, "data_json", value)
52
+
53
+ @_builtins.property
54
+ @pulumi.getter
55
+ def path(self) -> pulumi.Input[_builtins.str]:
56
+ """
57
+ Full path of the KV-V1 secret.
58
+ """
59
+ return pulumi.get(self, "path")
60
+
61
+ @path.setter
62
+ def path(self, value: pulumi.Input[_builtins.str]):
63
+ pulumi.set(self, "path", value)
64
+
65
+ @_builtins.property
66
+ @pulumi.getter
67
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
68
+ """
69
+ The namespace to provision the resource in.
70
+ The value should not contain leading or trailing forward slashes.
71
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
72
+ *Available only for Vault Enterprise*.
73
+ """
74
+ return pulumi.get(self, "namespace")
75
+
76
+ @namespace.setter
77
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
78
+ pulumi.set(self, "namespace", value)
79
+
80
+
81
+ @pulumi.input_type
82
+ class _SecretState:
83
+ def __init__(__self__, *,
84
+ data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
85
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
86
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
87
+ path: Optional[pulumi.Input[_builtins.str]] = None):
88
+ """
89
+ Input properties used for looking up and filtering Secret resources.
90
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] data: A mapping whose keys are the top-level data keys returned from
91
+ Vault and whose values are the corresponding values. This map can only
92
+ represent string data, so any non-string values returned from Vault are
93
+ serialized as JSON.
94
+ :param pulumi.Input[_builtins.str] data_json: JSON-encoded string that will be
95
+ written as the secret data at the given path.
96
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
97
+ The value should not contain leading or trailing forward slashes.
98
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
99
+ *Available only for Vault Enterprise*.
100
+ :param pulumi.Input[_builtins.str] path: Full path of the KV-V1 secret.
101
+ """
102
+ if data is not None:
103
+ pulumi.set(__self__, "data", data)
104
+ if data_json is not None:
105
+ pulumi.set(__self__, "data_json", data_json)
106
+ if namespace is not None:
107
+ pulumi.set(__self__, "namespace", namespace)
108
+ if path is not None:
109
+ pulumi.set(__self__, "path", path)
110
+
111
+ @_builtins.property
112
+ @pulumi.getter
113
+ def data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
114
+ """
115
+ A mapping whose keys are the top-level data keys returned from
116
+ Vault and whose values are the corresponding values. This map can only
117
+ represent string data, so any non-string values returned from Vault are
118
+ serialized as JSON.
119
+ """
120
+ return pulumi.get(self, "data")
121
+
122
+ @data.setter
123
+ def data(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
124
+ pulumi.set(self, "data", value)
125
+
126
+ @_builtins.property
127
+ @pulumi.getter(name="dataJson")
128
+ def data_json(self) -> Optional[pulumi.Input[_builtins.str]]:
129
+ """
130
+ JSON-encoded string that will be
131
+ written as the secret data at the given path.
132
+ """
133
+ return pulumi.get(self, "data_json")
134
+
135
+ @data_json.setter
136
+ def data_json(self, value: Optional[pulumi.Input[_builtins.str]]):
137
+ pulumi.set(self, "data_json", value)
138
+
139
+ @_builtins.property
140
+ @pulumi.getter
141
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
142
+ """
143
+ The namespace to provision the resource in.
144
+ The value should not contain leading or trailing forward slashes.
145
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
146
+ *Available only for Vault Enterprise*.
147
+ """
148
+ return pulumi.get(self, "namespace")
149
+
150
+ @namespace.setter
151
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
152
+ pulumi.set(self, "namespace", value)
153
+
154
+ @_builtins.property
155
+ @pulumi.getter
156
+ def path(self) -> Optional[pulumi.Input[_builtins.str]]:
157
+ """
158
+ Full path of the KV-V1 secret.
159
+ """
160
+ return pulumi.get(self, "path")
161
+
162
+ @path.setter
163
+ def path(self, value: Optional[pulumi.Input[_builtins.str]]):
164
+ pulumi.set(self, "path", value)
165
+
166
+
167
+ @pulumi.type_token("vault:kv/secret:Secret")
168
+ class Secret(pulumi.CustomResource):
169
+ @overload
170
+ def __init__(__self__,
171
+ resource_name: str,
172
+ opts: Optional[pulumi.ResourceOptions] = None,
173
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
174
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
175
+ path: Optional[pulumi.Input[_builtins.str]] = None,
176
+ __props__=None):
177
+ """
178
+ Writes a KV-V1 secret to a given path in Vault.
179
+
180
+ For more information on Vault's KV-V1 secret backend
181
+ [see here](https://www.vaultproject.io/docs/secrets/kv/kv-v1).
182
+
183
+ ## Example Usage
184
+
185
+ ```python
186
+ import pulumi
187
+ import json
188
+ import pulumi_vault as vault
189
+
190
+ kvv1 = vault.Mount("kvv1",
191
+ path="kvv1",
192
+ type="kv",
193
+ options={
194
+ "version": "1",
195
+ },
196
+ description="KV Version 1 secret engine mount")
197
+ secret = vault.kv.Secret("secret",
198
+ path=kvv1.path.apply(lambda path: f"{path}/secret"),
199
+ data_json=json.dumps({
200
+ "zip": "zap",
201
+ "foo": "bar",
202
+ }))
203
+ ```
204
+
205
+ ## Required Vault Capabilities
206
+
207
+ Use of this resource requires the `create` or `update` capability
208
+ (depending on whether the resource already exists) on the given path,
209
+ the `delete` capability if the resource is removed from configuration,
210
+ and the `read` capability for drift detection (by default).
211
+
212
+ ## Import
213
+
214
+ KV-V1 secrets can be imported using the `path`, e.g.
215
+
216
+ ```sh
217
+ $ pulumi import vault:kv/secret:Secret secret kvv1/secret
218
+ ```
219
+
220
+ :param str resource_name: The name of the resource.
221
+ :param pulumi.ResourceOptions opts: Options for the resource.
222
+ :param pulumi.Input[_builtins.str] data_json: JSON-encoded string that will be
223
+ written as the secret data at the given path.
224
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
225
+ The value should not contain leading or trailing forward slashes.
226
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
227
+ *Available only for Vault Enterprise*.
228
+ :param pulumi.Input[_builtins.str] path: Full path of the KV-V1 secret.
229
+ """
230
+ ...
231
+ @overload
232
+ def __init__(__self__,
233
+ resource_name: str,
234
+ args: SecretArgs,
235
+ opts: Optional[pulumi.ResourceOptions] = None):
236
+ """
237
+ Writes a KV-V1 secret to a given path in Vault.
238
+
239
+ For more information on Vault's KV-V1 secret backend
240
+ [see here](https://www.vaultproject.io/docs/secrets/kv/kv-v1).
241
+
242
+ ## Example Usage
243
+
244
+ ```python
245
+ import pulumi
246
+ import json
247
+ import pulumi_vault as vault
248
+
249
+ kvv1 = vault.Mount("kvv1",
250
+ path="kvv1",
251
+ type="kv",
252
+ options={
253
+ "version": "1",
254
+ },
255
+ description="KV Version 1 secret engine mount")
256
+ secret = vault.kv.Secret("secret",
257
+ path=kvv1.path.apply(lambda path: f"{path}/secret"),
258
+ data_json=json.dumps({
259
+ "zip": "zap",
260
+ "foo": "bar",
261
+ }))
262
+ ```
263
+
264
+ ## Required Vault Capabilities
265
+
266
+ Use of this resource requires the `create` or `update` capability
267
+ (depending on whether the resource already exists) on the given path,
268
+ the `delete` capability if the resource is removed from configuration,
269
+ and the `read` capability for drift detection (by default).
270
+
271
+ ## Import
272
+
273
+ KV-V1 secrets can be imported using the `path`, e.g.
274
+
275
+ ```sh
276
+ $ pulumi import vault:kv/secret:Secret secret kvv1/secret
277
+ ```
278
+
279
+ :param str resource_name: The name of the resource.
280
+ :param SecretArgs args: The arguments to use to populate this resource's properties.
281
+ :param pulumi.ResourceOptions opts: Options for the resource.
282
+ """
283
+ ...
284
+ def __init__(__self__, resource_name: str, *args, **kwargs):
285
+ resource_args, opts = _utilities.get_resource_args_opts(SecretArgs, pulumi.ResourceOptions, *args, **kwargs)
286
+ if resource_args is not None:
287
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
288
+ else:
289
+ __self__._internal_init(resource_name, *args, **kwargs)
290
+
291
+ def _internal_init(__self__,
292
+ resource_name: str,
293
+ opts: Optional[pulumi.ResourceOptions] = None,
294
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
295
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
296
+ path: Optional[pulumi.Input[_builtins.str]] = None,
297
+ __props__=None):
298
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
299
+ if not isinstance(opts, pulumi.ResourceOptions):
300
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
301
+ if opts.id is None:
302
+ if __props__ is not None:
303
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
304
+ __props__ = SecretArgs.__new__(SecretArgs)
305
+
306
+ if data_json is None and not opts.urn:
307
+ raise TypeError("Missing required property 'data_json'")
308
+ __props__.__dict__["data_json"] = None if data_json is None else pulumi.Output.secret(data_json)
309
+ __props__.__dict__["namespace"] = namespace
310
+ if path is None and not opts.urn:
311
+ raise TypeError("Missing required property 'path'")
312
+ __props__.__dict__["path"] = path
313
+ __props__.__dict__["data"] = None
314
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["data", "dataJson"])
315
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
316
+ super(Secret, __self__).__init__(
317
+ 'vault:kv/secret:Secret',
318
+ resource_name,
319
+ __props__,
320
+ opts)
321
+
322
+ @staticmethod
323
+ def get(resource_name: str,
324
+ id: pulumi.Input[str],
325
+ opts: Optional[pulumi.ResourceOptions] = None,
326
+ data: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
327
+ data_json: Optional[pulumi.Input[_builtins.str]] = None,
328
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
329
+ path: Optional[pulumi.Input[_builtins.str]] = None) -> 'Secret':
330
+ """
331
+ Get an existing Secret resource's state with the given name, id, and optional extra
332
+ properties used to qualify the lookup.
333
+
334
+ :param str resource_name: The unique name of the resulting resource.
335
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
336
+ :param pulumi.ResourceOptions opts: Options for the resource.
337
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] data: A mapping whose keys are the top-level data keys returned from
338
+ Vault and whose values are the corresponding values. This map can only
339
+ represent string data, so any non-string values returned from Vault are
340
+ serialized as JSON.
341
+ :param pulumi.Input[_builtins.str] data_json: JSON-encoded string that will be
342
+ written as the secret data at the given path.
343
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
344
+ The value should not contain leading or trailing forward slashes.
345
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
346
+ *Available only for Vault Enterprise*.
347
+ :param pulumi.Input[_builtins.str] path: Full path of the KV-V1 secret.
348
+ """
349
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
350
+
351
+ __props__ = _SecretState.__new__(_SecretState)
352
+
353
+ __props__.__dict__["data"] = data
354
+ __props__.__dict__["data_json"] = data_json
355
+ __props__.__dict__["namespace"] = namespace
356
+ __props__.__dict__["path"] = path
357
+ return Secret(resource_name, opts=opts, __props__=__props__)
358
+
359
+ @_builtins.property
360
+ @pulumi.getter
361
+ def data(self) -> pulumi.Output[Mapping[str, _builtins.str]]:
362
+ """
363
+ A mapping whose keys are the top-level data keys returned from
364
+ Vault and whose values are the corresponding values. This map can only
365
+ represent string data, so any non-string values returned from Vault are
366
+ serialized as JSON.
367
+ """
368
+ return pulumi.get(self, "data")
369
+
370
+ @_builtins.property
371
+ @pulumi.getter(name="dataJson")
372
+ def data_json(self) -> pulumi.Output[_builtins.str]:
373
+ """
374
+ JSON-encoded string that will be
375
+ written as the secret data at the given path.
376
+ """
377
+ return pulumi.get(self, "data_json")
378
+
379
+ @_builtins.property
380
+ @pulumi.getter
381
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
382
+ """
383
+ The namespace to provision the resource in.
384
+ The value should not contain leading or trailing forward slashes.
385
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
386
+ *Available only for Vault Enterprise*.
387
+ """
388
+ return pulumi.get(self, "namespace")
389
+
390
+ @_builtins.property
391
+ @pulumi.getter
392
+ def path(self) -> pulumi.Output[_builtins.str]:
393
+ """
394
+ Full path of the KV-V1 secret.
395
+ """
396
+ return pulumi.get(self, "path")
397
+