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,546 @@
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__ = ['SecretLibraryArgs', 'SecretLibrary']
18
+
19
+ @pulumi.input_type
20
+ class SecretLibraryArgs:
21
+ def __init__(__self__, *,
22
+ backend: pulumi.Input[_builtins.str],
23
+ service_account_names: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]],
24
+ disable_check_in_enforcement: Optional[pulumi.Input[_builtins.bool]] = None,
25
+ max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
26
+ name: Optional[pulumi.Input[_builtins.str]] = None,
27
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
28
+ ttl: Optional[pulumi.Input[_builtins.int]] = None):
29
+ """
30
+ The set of arguments for constructing a SecretLibrary resource.
31
+ :param pulumi.Input[_builtins.str] backend: The path the AD secret backend is mounted at,
32
+ with no leading or trailing `/`s.
33
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] service_account_names: Specifies the slice of service accounts mapped to this set.
34
+ :param pulumi.Input[_builtins.bool] disable_check_in_enforcement: Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
35
+ :param pulumi.Input[_builtins.int] max_ttl: The maximum password time-to-live in seconds. Defaults to the configuration
36
+ max_ttl if not provided.
37
+ :param pulumi.Input[_builtins.str] name: The name to identify this set of service accounts.
38
+ Must be unique within the backend.
39
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
40
+ The value should not contain leading or trailing forward slashes.
41
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
42
+ *Available only for Vault Enterprise*.
43
+ :param pulumi.Input[_builtins.int] ttl: The password time-to-live in seconds. Defaults to the configuration
44
+ ttl if not provided.
45
+ """
46
+ pulumi.set(__self__, "backend", backend)
47
+ pulumi.set(__self__, "service_account_names", service_account_names)
48
+ if disable_check_in_enforcement is not None:
49
+ pulumi.set(__self__, "disable_check_in_enforcement", disable_check_in_enforcement)
50
+ if max_ttl is not None:
51
+ pulumi.set(__self__, "max_ttl", max_ttl)
52
+ if name is not None:
53
+ pulumi.set(__self__, "name", name)
54
+ if namespace is not None:
55
+ pulumi.set(__self__, "namespace", namespace)
56
+ if ttl is not None:
57
+ pulumi.set(__self__, "ttl", ttl)
58
+
59
+ @_builtins.property
60
+ @pulumi.getter
61
+ def backend(self) -> pulumi.Input[_builtins.str]:
62
+ """
63
+ The path the AD secret backend is mounted at,
64
+ with no leading or trailing `/`s.
65
+ """
66
+ return pulumi.get(self, "backend")
67
+
68
+ @backend.setter
69
+ def backend(self, value: pulumi.Input[_builtins.str]):
70
+ pulumi.set(self, "backend", value)
71
+
72
+ @_builtins.property
73
+ @pulumi.getter(name="serviceAccountNames")
74
+ def service_account_names(self) -> pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]:
75
+ """
76
+ Specifies the slice of service accounts mapped to this set.
77
+ """
78
+ return pulumi.get(self, "service_account_names")
79
+
80
+ @service_account_names.setter
81
+ def service_account_names(self, value: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]):
82
+ pulumi.set(self, "service_account_names", value)
83
+
84
+ @_builtins.property
85
+ @pulumi.getter(name="disableCheckInEnforcement")
86
+ def disable_check_in_enforcement(self) -> Optional[pulumi.Input[_builtins.bool]]:
87
+ """
88
+ Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
89
+ """
90
+ return pulumi.get(self, "disable_check_in_enforcement")
91
+
92
+ @disable_check_in_enforcement.setter
93
+ def disable_check_in_enforcement(self, value: Optional[pulumi.Input[_builtins.bool]]):
94
+ pulumi.set(self, "disable_check_in_enforcement", value)
95
+
96
+ @_builtins.property
97
+ @pulumi.getter(name="maxTtl")
98
+ def max_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
99
+ """
100
+ The maximum password time-to-live in seconds. Defaults to the configuration
101
+ max_ttl if not provided.
102
+ """
103
+ return pulumi.get(self, "max_ttl")
104
+
105
+ @max_ttl.setter
106
+ def max_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
107
+ pulumi.set(self, "max_ttl", value)
108
+
109
+ @_builtins.property
110
+ @pulumi.getter
111
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
112
+ """
113
+ The name to identify this set of service accounts.
114
+ Must be unique within the backend.
115
+ """
116
+ return pulumi.get(self, "name")
117
+
118
+ @name.setter
119
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
120
+ pulumi.set(self, "name", value)
121
+
122
+ @_builtins.property
123
+ @pulumi.getter
124
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
125
+ """
126
+ The namespace to provision the resource in.
127
+ The value should not contain leading or trailing forward slashes.
128
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
129
+ *Available only for Vault Enterprise*.
130
+ """
131
+ return pulumi.get(self, "namespace")
132
+
133
+ @namespace.setter
134
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
135
+ pulumi.set(self, "namespace", value)
136
+
137
+ @_builtins.property
138
+ @pulumi.getter
139
+ def ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
140
+ """
141
+ The password time-to-live in seconds. Defaults to the configuration
142
+ ttl if not provided.
143
+ """
144
+ return pulumi.get(self, "ttl")
145
+
146
+ @ttl.setter
147
+ def ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
148
+ pulumi.set(self, "ttl", value)
149
+
150
+
151
+ @pulumi.input_type
152
+ class _SecretLibraryState:
153
+ def __init__(__self__, *,
154
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
155
+ disable_check_in_enforcement: Optional[pulumi.Input[_builtins.bool]] = None,
156
+ max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
157
+ name: Optional[pulumi.Input[_builtins.str]] = None,
158
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
159
+ service_account_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
160
+ ttl: Optional[pulumi.Input[_builtins.int]] = None):
161
+ """
162
+ Input properties used for looking up and filtering SecretLibrary resources.
163
+ :param pulumi.Input[_builtins.str] backend: The path the AD secret backend is mounted at,
164
+ with no leading or trailing `/`s.
165
+ :param pulumi.Input[_builtins.bool] disable_check_in_enforcement: Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
166
+ :param pulumi.Input[_builtins.int] max_ttl: The maximum password time-to-live in seconds. Defaults to the configuration
167
+ max_ttl if not provided.
168
+ :param pulumi.Input[_builtins.str] name: The name to identify this set of service accounts.
169
+ Must be unique within the backend.
170
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
171
+ The value should not contain leading or trailing forward slashes.
172
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
173
+ *Available only for Vault Enterprise*.
174
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] service_account_names: Specifies the slice of service accounts mapped to this set.
175
+ :param pulumi.Input[_builtins.int] ttl: The password time-to-live in seconds. Defaults to the configuration
176
+ ttl if not provided.
177
+ """
178
+ if backend is not None:
179
+ pulumi.set(__self__, "backend", backend)
180
+ if disable_check_in_enforcement is not None:
181
+ pulumi.set(__self__, "disable_check_in_enforcement", disable_check_in_enforcement)
182
+ if max_ttl is not None:
183
+ pulumi.set(__self__, "max_ttl", max_ttl)
184
+ if name is not None:
185
+ pulumi.set(__self__, "name", name)
186
+ if namespace is not None:
187
+ pulumi.set(__self__, "namespace", namespace)
188
+ if service_account_names is not None:
189
+ pulumi.set(__self__, "service_account_names", service_account_names)
190
+ if ttl is not None:
191
+ pulumi.set(__self__, "ttl", ttl)
192
+
193
+ @_builtins.property
194
+ @pulumi.getter
195
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
196
+ """
197
+ The path the AD secret backend is mounted at,
198
+ with no leading or trailing `/`s.
199
+ """
200
+ return pulumi.get(self, "backend")
201
+
202
+ @backend.setter
203
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
204
+ pulumi.set(self, "backend", value)
205
+
206
+ @_builtins.property
207
+ @pulumi.getter(name="disableCheckInEnforcement")
208
+ def disable_check_in_enforcement(self) -> Optional[pulumi.Input[_builtins.bool]]:
209
+ """
210
+ Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
211
+ """
212
+ return pulumi.get(self, "disable_check_in_enforcement")
213
+
214
+ @disable_check_in_enforcement.setter
215
+ def disable_check_in_enforcement(self, value: Optional[pulumi.Input[_builtins.bool]]):
216
+ pulumi.set(self, "disable_check_in_enforcement", value)
217
+
218
+ @_builtins.property
219
+ @pulumi.getter(name="maxTtl")
220
+ def max_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
221
+ """
222
+ The maximum password time-to-live in seconds. Defaults to the configuration
223
+ max_ttl if not provided.
224
+ """
225
+ return pulumi.get(self, "max_ttl")
226
+
227
+ @max_ttl.setter
228
+ def max_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
229
+ pulumi.set(self, "max_ttl", value)
230
+
231
+ @_builtins.property
232
+ @pulumi.getter
233
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
234
+ """
235
+ The name to identify this set of service accounts.
236
+ Must be unique within the backend.
237
+ """
238
+ return pulumi.get(self, "name")
239
+
240
+ @name.setter
241
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
242
+ pulumi.set(self, "name", value)
243
+
244
+ @_builtins.property
245
+ @pulumi.getter
246
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
247
+ """
248
+ The namespace to provision the resource in.
249
+ The value should not contain leading or trailing forward slashes.
250
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
251
+ *Available only for Vault Enterprise*.
252
+ """
253
+ return pulumi.get(self, "namespace")
254
+
255
+ @namespace.setter
256
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
257
+ pulumi.set(self, "namespace", value)
258
+
259
+ @_builtins.property
260
+ @pulumi.getter(name="serviceAccountNames")
261
+ def service_account_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
262
+ """
263
+ Specifies the slice of service accounts mapped to this set.
264
+ """
265
+ return pulumi.get(self, "service_account_names")
266
+
267
+ @service_account_names.setter
268
+ def service_account_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
269
+ pulumi.set(self, "service_account_names", value)
270
+
271
+ @_builtins.property
272
+ @pulumi.getter
273
+ def ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
274
+ """
275
+ The password time-to-live in seconds. Defaults to the configuration
276
+ ttl if not provided.
277
+ """
278
+ return pulumi.get(self, "ttl")
279
+
280
+ @ttl.setter
281
+ def ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
282
+ pulumi.set(self, "ttl", value)
283
+
284
+
285
+ @pulumi.type_token("vault:ad/secretLibrary:SecretLibrary")
286
+ class SecretLibrary(pulumi.CustomResource):
287
+ @overload
288
+ def __init__(__self__,
289
+ resource_name: str,
290
+ opts: Optional[pulumi.ResourceOptions] = None,
291
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
292
+ disable_check_in_enforcement: Optional[pulumi.Input[_builtins.bool]] = None,
293
+ max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
294
+ name: Optional[pulumi.Input[_builtins.str]] = None,
295
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
296
+ service_account_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
297
+ ttl: Optional[pulumi.Input[_builtins.int]] = None,
298
+ __props__=None):
299
+ """
300
+ ## Example Usage
301
+
302
+ ```python
303
+ import pulumi
304
+ import pulumi_vault as vault
305
+
306
+ config = vault.ad.SecretBackend("config",
307
+ backend="ad",
308
+ binddn="CN=Administrator,CN=Users,DC=corp,DC=example,DC=net",
309
+ bindpass="SuperSecretPassw0rd",
310
+ url="ldaps://ad",
311
+ insecure_tls=True,
312
+ userdn="CN=Users,DC=corp,DC=example,DC=net")
313
+ qa = vault.ad.SecretLibrary("qa",
314
+ backend=config.backend,
315
+ name="qa",
316
+ service_account_names=[
317
+ "Bob",
318
+ "Mary",
319
+ ],
320
+ ttl=60,
321
+ disable_check_in_enforcement=True,
322
+ max_ttl=120)
323
+ ```
324
+
325
+ ## Import
326
+
327
+ AD secret backend libraries can be imported using the `path`, e.g.
328
+
329
+ ```sh
330
+ $ pulumi import vault:ad/secretLibrary:SecretLibrary role ad/library/bob
331
+ ```
332
+
333
+ :param str resource_name: The name of the resource.
334
+ :param pulumi.ResourceOptions opts: Options for the resource.
335
+ :param pulumi.Input[_builtins.str] backend: The path the AD secret backend is mounted at,
336
+ with no leading or trailing `/`s.
337
+ :param pulumi.Input[_builtins.bool] disable_check_in_enforcement: Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
338
+ :param pulumi.Input[_builtins.int] max_ttl: The maximum password time-to-live in seconds. Defaults to the configuration
339
+ max_ttl if not provided.
340
+ :param pulumi.Input[_builtins.str] name: The name to identify this set of service accounts.
341
+ Must be unique within the backend.
342
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
343
+ The value should not contain leading or trailing forward slashes.
344
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
345
+ *Available only for Vault Enterprise*.
346
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] service_account_names: Specifies the slice of service accounts mapped to this set.
347
+ :param pulumi.Input[_builtins.int] ttl: The password time-to-live in seconds. Defaults to the configuration
348
+ ttl if not provided.
349
+ """
350
+ ...
351
+ @overload
352
+ def __init__(__self__,
353
+ resource_name: str,
354
+ args: SecretLibraryArgs,
355
+ opts: Optional[pulumi.ResourceOptions] = None):
356
+ """
357
+ ## Example Usage
358
+
359
+ ```python
360
+ import pulumi
361
+ import pulumi_vault as vault
362
+
363
+ config = vault.ad.SecretBackend("config",
364
+ backend="ad",
365
+ binddn="CN=Administrator,CN=Users,DC=corp,DC=example,DC=net",
366
+ bindpass="SuperSecretPassw0rd",
367
+ url="ldaps://ad",
368
+ insecure_tls=True,
369
+ userdn="CN=Users,DC=corp,DC=example,DC=net")
370
+ qa = vault.ad.SecretLibrary("qa",
371
+ backend=config.backend,
372
+ name="qa",
373
+ service_account_names=[
374
+ "Bob",
375
+ "Mary",
376
+ ],
377
+ ttl=60,
378
+ disable_check_in_enforcement=True,
379
+ max_ttl=120)
380
+ ```
381
+
382
+ ## Import
383
+
384
+ AD secret backend libraries can be imported using the `path`, e.g.
385
+
386
+ ```sh
387
+ $ pulumi import vault:ad/secretLibrary:SecretLibrary role ad/library/bob
388
+ ```
389
+
390
+ :param str resource_name: The name of the resource.
391
+ :param SecretLibraryArgs args: The arguments to use to populate this resource's properties.
392
+ :param pulumi.ResourceOptions opts: Options for the resource.
393
+ """
394
+ ...
395
+ def __init__(__self__, resource_name: str, *args, **kwargs):
396
+ resource_args, opts = _utilities.get_resource_args_opts(SecretLibraryArgs, pulumi.ResourceOptions, *args, **kwargs)
397
+ if resource_args is not None:
398
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
399
+ else:
400
+ __self__._internal_init(resource_name, *args, **kwargs)
401
+
402
+ def _internal_init(__self__,
403
+ resource_name: str,
404
+ opts: Optional[pulumi.ResourceOptions] = None,
405
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
406
+ disable_check_in_enforcement: Optional[pulumi.Input[_builtins.bool]] = None,
407
+ max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
408
+ name: Optional[pulumi.Input[_builtins.str]] = None,
409
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
410
+ service_account_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
411
+ ttl: Optional[pulumi.Input[_builtins.int]] = None,
412
+ __props__=None):
413
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
414
+ if not isinstance(opts, pulumi.ResourceOptions):
415
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
416
+ if opts.id is None:
417
+ if __props__ is not None:
418
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
419
+ __props__ = SecretLibraryArgs.__new__(SecretLibraryArgs)
420
+
421
+ if backend is None and not opts.urn:
422
+ raise TypeError("Missing required property 'backend'")
423
+ __props__.__dict__["backend"] = backend
424
+ __props__.__dict__["disable_check_in_enforcement"] = disable_check_in_enforcement
425
+ __props__.__dict__["max_ttl"] = max_ttl
426
+ __props__.__dict__["name"] = name
427
+ __props__.__dict__["namespace"] = namespace
428
+ if service_account_names is None and not opts.urn:
429
+ raise TypeError("Missing required property 'service_account_names'")
430
+ __props__.__dict__["service_account_names"] = service_account_names
431
+ __props__.__dict__["ttl"] = ttl
432
+ super(SecretLibrary, __self__).__init__(
433
+ 'vault:ad/secretLibrary:SecretLibrary',
434
+ resource_name,
435
+ __props__,
436
+ opts)
437
+
438
+ @staticmethod
439
+ def get(resource_name: str,
440
+ id: pulumi.Input[str],
441
+ opts: Optional[pulumi.ResourceOptions] = None,
442
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
443
+ disable_check_in_enforcement: Optional[pulumi.Input[_builtins.bool]] = None,
444
+ max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
445
+ name: Optional[pulumi.Input[_builtins.str]] = None,
446
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
447
+ service_account_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
448
+ ttl: Optional[pulumi.Input[_builtins.int]] = None) -> 'SecretLibrary':
449
+ """
450
+ Get an existing SecretLibrary resource's state with the given name, id, and optional extra
451
+ properties used to qualify the lookup.
452
+
453
+ :param str resource_name: The unique name of the resulting resource.
454
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
455
+ :param pulumi.ResourceOptions opts: Options for the resource.
456
+ :param pulumi.Input[_builtins.str] backend: The path the AD secret backend is mounted at,
457
+ with no leading or trailing `/`s.
458
+ :param pulumi.Input[_builtins.bool] disable_check_in_enforcement: Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
459
+ :param pulumi.Input[_builtins.int] max_ttl: The maximum password time-to-live in seconds. Defaults to the configuration
460
+ max_ttl if not provided.
461
+ :param pulumi.Input[_builtins.str] name: The name to identify this set of service accounts.
462
+ Must be unique within the backend.
463
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
464
+ The value should not contain leading or trailing forward slashes.
465
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
466
+ *Available only for Vault Enterprise*.
467
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] service_account_names: Specifies the slice of service accounts mapped to this set.
468
+ :param pulumi.Input[_builtins.int] ttl: The password time-to-live in seconds. Defaults to the configuration
469
+ ttl if not provided.
470
+ """
471
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
472
+
473
+ __props__ = _SecretLibraryState.__new__(_SecretLibraryState)
474
+
475
+ __props__.__dict__["backend"] = backend
476
+ __props__.__dict__["disable_check_in_enforcement"] = disable_check_in_enforcement
477
+ __props__.__dict__["max_ttl"] = max_ttl
478
+ __props__.__dict__["name"] = name
479
+ __props__.__dict__["namespace"] = namespace
480
+ __props__.__dict__["service_account_names"] = service_account_names
481
+ __props__.__dict__["ttl"] = ttl
482
+ return SecretLibrary(resource_name, opts=opts, __props__=__props__)
483
+
484
+ @_builtins.property
485
+ @pulumi.getter
486
+ def backend(self) -> pulumi.Output[_builtins.str]:
487
+ """
488
+ The path the AD secret backend is mounted at,
489
+ with no leading or trailing `/`s.
490
+ """
491
+ return pulumi.get(self, "backend")
492
+
493
+ @_builtins.property
494
+ @pulumi.getter(name="disableCheckInEnforcement")
495
+ def disable_check_in_enforcement(self) -> pulumi.Output[Optional[_builtins.bool]]:
496
+ """
497
+ Disable enforcing that service accounts must be checked in by the entity or client token that checked them out.
498
+ """
499
+ return pulumi.get(self, "disable_check_in_enforcement")
500
+
501
+ @_builtins.property
502
+ @pulumi.getter(name="maxTtl")
503
+ def max_ttl(self) -> pulumi.Output[_builtins.int]:
504
+ """
505
+ The maximum password time-to-live in seconds. Defaults to the configuration
506
+ max_ttl if not provided.
507
+ """
508
+ return pulumi.get(self, "max_ttl")
509
+
510
+ @_builtins.property
511
+ @pulumi.getter
512
+ def name(self) -> pulumi.Output[_builtins.str]:
513
+ """
514
+ The name to identify this set of service accounts.
515
+ Must be unique within the backend.
516
+ """
517
+ return pulumi.get(self, "name")
518
+
519
+ @_builtins.property
520
+ @pulumi.getter
521
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
522
+ """
523
+ The namespace to provision the resource in.
524
+ The value should not contain leading or trailing forward slashes.
525
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
526
+ *Available only for Vault Enterprise*.
527
+ """
528
+ return pulumi.get(self, "namespace")
529
+
530
+ @_builtins.property
531
+ @pulumi.getter(name="serviceAccountNames")
532
+ def service_account_names(self) -> pulumi.Output[Sequence[_builtins.str]]:
533
+ """
534
+ Specifies the slice of service accounts mapped to this set.
535
+ """
536
+ return pulumi.get(self, "service_account_names")
537
+
538
+ @_builtins.property
539
+ @pulumi.getter
540
+ def ttl(self) -> pulumi.Output[_builtins.int]:
541
+ """
542
+ The password time-to-live in seconds. Defaults to the configuration
543
+ ttl if not provided.
544
+ """
545
+ return pulumi.get(self, "ttl")
546
+