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,467 @@
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__ = ['GroupMemberGroupIdsArgs', 'GroupMemberGroupIds']
18
+
19
+ @pulumi.input_type
20
+ class GroupMemberGroupIdsArgs:
21
+ def __init__(__self__, *,
22
+ group_id: pulumi.Input[_builtins.str],
23
+ exclusive: Optional[pulumi.Input[_builtins.bool]] = None,
24
+ member_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
25
+ namespace: Optional[pulumi.Input[_builtins.str]] = None):
26
+ """
27
+ The set of arguments for constructing a GroupMemberGroupIds resource.
28
+ :param pulumi.Input[_builtins.str] group_id: Group ID to assign member entities to.
29
+ :param pulumi.Input[_builtins.bool] exclusive: Defaults to `true`.
30
+
31
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
32
+ it equal to what is specified in the resource.
33
+
34
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
35
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
36
+ are removed.
37
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] member_group_ids: List of member groups that belong to the group
38
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
39
+ The value should not contain leading or trailing forward slashes.
40
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
41
+ *Available only for Vault Enterprise*.
42
+ """
43
+ pulumi.set(__self__, "group_id", group_id)
44
+ if exclusive is not None:
45
+ pulumi.set(__self__, "exclusive", exclusive)
46
+ if member_group_ids is not None:
47
+ pulumi.set(__self__, "member_group_ids", member_group_ids)
48
+ if namespace is not None:
49
+ pulumi.set(__self__, "namespace", namespace)
50
+
51
+ @_builtins.property
52
+ @pulumi.getter(name="groupId")
53
+ def group_id(self) -> pulumi.Input[_builtins.str]:
54
+ """
55
+ Group ID to assign member entities to.
56
+ """
57
+ return pulumi.get(self, "group_id")
58
+
59
+ @group_id.setter
60
+ def group_id(self, value: pulumi.Input[_builtins.str]):
61
+ pulumi.set(self, "group_id", value)
62
+
63
+ @_builtins.property
64
+ @pulumi.getter
65
+ def exclusive(self) -> Optional[pulumi.Input[_builtins.bool]]:
66
+ """
67
+ Defaults to `true`.
68
+
69
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
70
+ it equal to what is specified in the resource.
71
+
72
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
73
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
74
+ are removed.
75
+ """
76
+ return pulumi.get(self, "exclusive")
77
+
78
+ @exclusive.setter
79
+ def exclusive(self, value: Optional[pulumi.Input[_builtins.bool]]):
80
+ pulumi.set(self, "exclusive", value)
81
+
82
+ @_builtins.property
83
+ @pulumi.getter(name="memberGroupIds")
84
+ def member_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
85
+ """
86
+ List of member groups that belong to the group
87
+ """
88
+ return pulumi.get(self, "member_group_ids")
89
+
90
+ @member_group_ids.setter
91
+ def member_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
92
+ pulumi.set(self, "member_group_ids", value)
93
+
94
+ @_builtins.property
95
+ @pulumi.getter
96
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
97
+ """
98
+ The namespace to provision the resource in.
99
+ The value should not contain leading or trailing forward slashes.
100
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
101
+ *Available only for Vault Enterprise*.
102
+ """
103
+ return pulumi.get(self, "namespace")
104
+
105
+ @namespace.setter
106
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
107
+ pulumi.set(self, "namespace", value)
108
+
109
+
110
+ @pulumi.input_type
111
+ class _GroupMemberGroupIdsState:
112
+ def __init__(__self__, *,
113
+ exclusive: Optional[pulumi.Input[_builtins.bool]] = None,
114
+ group_id: Optional[pulumi.Input[_builtins.str]] = None,
115
+ member_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
116
+ namespace: Optional[pulumi.Input[_builtins.str]] = None):
117
+ """
118
+ Input properties used for looking up and filtering GroupMemberGroupIds resources.
119
+ :param pulumi.Input[_builtins.bool] exclusive: Defaults to `true`.
120
+
121
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
122
+ it equal to what is specified in the resource.
123
+
124
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
125
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
126
+ are removed.
127
+ :param pulumi.Input[_builtins.str] group_id: Group ID to assign member entities to.
128
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] member_group_ids: List of member groups that belong to the group
129
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
130
+ The value should not contain leading or trailing forward slashes.
131
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
132
+ *Available only for Vault Enterprise*.
133
+ """
134
+ if exclusive is not None:
135
+ pulumi.set(__self__, "exclusive", exclusive)
136
+ if group_id is not None:
137
+ pulumi.set(__self__, "group_id", group_id)
138
+ if member_group_ids is not None:
139
+ pulumi.set(__self__, "member_group_ids", member_group_ids)
140
+ if namespace is not None:
141
+ pulumi.set(__self__, "namespace", namespace)
142
+
143
+ @_builtins.property
144
+ @pulumi.getter
145
+ def exclusive(self) -> Optional[pulumi.Input[_builtins.bool]]:
146
+ """
147
+ Defaults to `true`.
148
+
149
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
150
+ it equal to what is specified in the resource.
151
+
152
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
153
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
154
+ are removed.
155
+ """
156
+ return pulumi.get(self, "exclusive")
157
+
158
+ @exclusive.setter
159
+ def exclusive(self, value: Optional[pulumi.Input[_builtins.bool]]):
160
+ pulumi.set(self, "exclusive", value)
161
+
162
+ @_builtins.property
163
+ @pulumi.getter(name="groupId")
164
+ def group_id(self) -> Optional[pulumi.Input[_builtins.str]]:
165
+ """
166
+ Group ID to assign member entities to.
167
+ """
168
+ return pulumi.get(self, "group_id")
169
+
170
+ @group_id.setter
171
+ def group_id(self, value: Optional[pulumi.Input[_builtins.str]]):
172
+ pulumi.set(self, "group_id", value)
173
+
174
+ @_builtins.property
175
+ @pulumi.getter(name="memberGroupIds")
176
+ def member_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
177
+ """
178
+ List of member groups that belong to the group
179
+ """
180
+ return pulumi.get(self, "member_group_ids")
181
+
182
+ @member_group_ids.setter
183
+ def member_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
184
+ pulumi.set(self, "member_group_ids", value)
185
+
186
+ @_builtins.property
187
+ @pulumi.getter
188
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
189
+ """
190
+ The namespace to provision the resource in.
191
+ The value should not contain leading or trailing forward slashes.
192
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
193
+ *Available only for Vault Enterprise*.
194
+ """
195
+ return pulumi.get(self, "namespace")
196
+
197
+ @namespace.setter
198
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
199
+ pulumi.set(self, "namespace", value)
200
+
201
+
202
+ @pulumi.type_token("vault:identity/groupMemberGroupIds:GroupMemberGroupIds")
203
+ class GroupMemberGroupIds(pulumi.CustomResource):
204
+ @overload
205
+ def __init__(__self__,
206
+ resource_name: str,
207
+ opts: Optional[pulumi.ResourceOptions] = None,
208
+ exclusive: Optional[pulumi.Input[_builtins.bool]] = None,
209
+ group_id: Optional[pulumi.Input[_builtins.str]] = None,
210
+ member_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
211
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
212
+ __props__=None):
213
+ """
214
+ Manages member groups for an Identity Group for Vault. The
215
+ [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html)
216
+ is the identity management solution for Vault.
217
+
218
+ ## Example Usage
219
+
220
+ ### Exclusive Member Groups
221
+
222
+ ```python
223
+ import pulumi
224
+ import pulumi_vault as vault
225
+
226
+ internal = vault.identity.Group("internal",
227
+ name="internal",
228
+ type="internal",
229
+ external_member_group_ids=True,
230
+ metadata={
231
+ "version": "2",
232
+ })
233
+ users = vault.identity.Group("users",
234
+ name="users",
235
+ metadata={
236
+ "version": "2",
237
+ })
238
+ members = vault.identity.GroupMemberGroupIds("members",
239
+ exclusive=True,
240
+ member_group_ids=[users.id],
241
+ group_id=internal.id)
242
+ ```
243
+
244
+ ### Non-Exclusive Member Groups
245
+
246
+ ```python
247
+ import pulumi
248
+ import pulumi_vault as vault
249
+
250
+ internal = vault.identity.Group("internal",
251
+ name="internal",
252
+ type="internal",
253
+ external_member_group_ids=True,
254
+ metadata={
255
+ "version": "2",
256
+ })
257
+ users = vault.identity.Group("users",
258
+ name="users",
259
+ metadata={
260
+ "version": "2",
261
+ })
262
+ members = vault.identity.GroupMemberGroupIds("members",
263
+ exclusive=False,
264
+ member_group_ids=[users.id],
265
+ group_id=internal.id)
266
+ ```
267
+
268
+ :param str resource_name: The name of the resource.
269
+ :param pulumi.ResourceOptions opts: Options for the resource.
270
+ :param pulumi.Input[_builtins.bool] exclusive: Defaults to `true`.
271
+
272
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
273
+ it equal to what is specified in the resource.
274
+
275
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
276
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
277
+ are removed.
278
+ :param pulumi.Input[_builtins.str] group_id: Group ID to assign member entities to.
279
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] member_group_ids: List of member groups that belong to the group
280
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
281
+ The value should not contain leading or trailing forward slashes.
282
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
283
+ *Available only for Vault Enterprise*.
284
+ """
285
+ ...
286
+ @overload
287
+ def __init__(__self__,
288
+ resource_name: str,
289
+ args: GroupMemberGroupIdsArgs,
290
+ opts: Optional[pulumi.ResourceOptions] = None):
291
+ """
292
+ Manages member groups for an Identity Group for Vault. The
293
+ [Identity secrets engine](https://www.vaultproject.io/docs/secrets/identity/index.html)
294
+ is the identity management solution for Vault.
295
+
296
+ ## Example Usage
297
+
298
+ ### Exclusive Member Groups
299
+
300
+ ```python
301
+ import pulumi
302
+ import pulumi_vault as vault
303
+
304
+ internal = vault.identity.Group("internal",
305
+ name="internal",
306
+ type="internal",
307
+ external_member_group_ids=True,
308
+ metadata={
309
+ "version": "2",
310
+ })
311
+ users = vault.identity.Group("users",
312
+ name="users",
313
+ metadata={
314
+ "version": "2",
315
+ })
316
+ members = vault.identity.GroupMemberGroupIds("members",
317
+ exclusive=True,
318
+ member_group_ids=[users.id],
319
+ group_id=internal.id)
320
+ ```
321
+
322
+ ### Non-Exclusive Member Groups
323
+
324
+ ```python
325
+ import pulumi
326
+ import pulumi_vault as vault
327
+
328
+ internal = vault.identity.Group("internal",
329
+ name="internal",
330
+ type="internal",
331
+ external_member_group_ids=True,
332
+ metadata={
333
+ "version": "2",
334
+ })
335
+ users = vault.identity.Group("users",
336
+ name="users",
337
+ metadata={
338
+ "version": "2",
339
+ })
340
+ members = vault.identity.GroupMemberGroupIds("members",
341
+ exclusive=False,
342
+ member_group_ids=[users.id],
343
+ group_id=internal.id)
344
+ ```
345
+
346
+ :param str resource_name: The name of the resource.
347
+ :param GroupMemberGroupIdsArgs args: The arguments to use to populate this resource's properties.
348
+ :param pulumi.ResourceOptions opts: Options for the resource.
349
+ """
350
+ ...
351
+ def __init__(__self__, resource_name: str, *args, **kwargs):
352
+ resource_args, opts = _utilities.get_resource_args_opts(GroupMemberGroupIdsArgs, pulumi.ResourceOptions, *args, **kwargs)
353
+ if resource_args is not None:
354
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
355
+ else:
356
+ __self__._internal_init(resource_name, *args, **kwargs)
357
+
358
+ def _internal_init(__self__,
359
+ resource_name: str,
360
+ opts: Optional[pulumi.ResourceOptions] = None,
361
+ exclusive: Optional[pulumi.Input[_builtins.bool]] = None,
362
+ group_id: Optional[pulumi.Input[_builtins.str]] = None,
363
+ member_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
364
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
365
+ __props__=None):
366
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
367
+ if not isinstance(opts, pulumi.ResourceOptions):
368
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
369
+ if opts.id is None:
370
+ if __props__ is not None:
371
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
372
+ __props__ = GroupMemberGroupIdsArgs.__new__(GroupMemberGroupIdsArgs)
373
+
374
+ __props__.__dict__["exclusive"] = exclusive
375
+ if group_id is None and not opts.urn:
376
+ raise TypeError("Missing required property 'group_id'")
377
+ __props__.__dict__["group_id"] = group_id
378
+ __props__.__dict__["member_group_ids"] = member_group_ids
379
+ __props__.__dict__["namespace"] = namespace
380
+ super(GroupMemberGroupIds, __self__).__init__(
381
+ 'vault:identity/groupMemberGroupIds:GroupMemberGroupIds',
382
+ resource_name,
383
+ __props__,
384
+ opts)
385
+
386
+ @staticmethod
387
+ def get(resource_name: str,
388
+ id: pulumi.Input[str],
389
+ opts: Optional[pulumi.ResourceOptions] = None,
390
+ exclusive: Optional[pulumi.Input[_builtins.bool]] = None,
391
+ group_id: Optional[pulumi.Input[_builtins.str]] = None,
392
+ member_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
393
+ namespace: Optional[pulumi.Input[_builtins.str]] = None) -> 'GroupMemberGroupIds':
394
+ """
395
+ Get an existing GroupMemberGroupIds resource's state with the given name, id, and optional extra
396
+ properties used to qualify the lookup.
397
+
398
+ :param str resource_name: The unique name of the resulting resource.
399
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
400
+ :param pulumi.ResourceOptions opts: Options for the resource.
401
+ :param pulumi.Input[_builtins.bool] exclusive: Defaults to `true`.
402
+
403
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
404
+ it equal to what is specified in the resource.
405
+
406
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
407
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
408
+ are removed.
409
+ :param pulumi.Input[_builtins.str] group_id: Group ID to assign member entities to.
410
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] member_group_ids: List of member groups that belong to the group
411
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
412
+ The value should not contain leading or trailing forward slashes.
413
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
414
+ *Available only for Vault Enterprise*.
415
+ """
416
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
417
+
418
+ __props__ = _GroupMemberGroupIdsState.__new__(_GroupMemberGroupIdsState)
419
+
420
+ __props__.__dict__["exclusive"] = exclusive
421
+ __props__.__dict__["group_id"] = group_id
422
+ __props__.__dict__["member_group_ids"] = member_group_ids
423
+ __props__.__dict__["namespace"] = namespace
424
+ return GroupMemberGroupIds(resource_name, opts=opts, __props__=__props__)
425
+
426
+ @_builtins.property
427
+ @pulumi.getter
428
+ def exclusive(self) -> pulumi.Output[Optional[_builtins.bool]]:
429
+ """
430
+ Defaults to `true`.
431
+
432
+ If `true`, this resource will take exclusive control of the member groups that belong to the group and will set
433
+ it equal to what is specified in the resource.
434
+
435
+ If set to `false`, this resource will simply ensure that the member groups specified in the resource are present
436
+ in the group. When destroying the resource, the resource will ensure that the member groups specified in the resource
437
+ are removed.
438
+ """
439
+ return pulumi.get(self, "exclusive")
440
+
441
+ @_builtins.property
442
+ @pulumi.getter(name="groupId")
443
+ def group_id(self) -> pulumi.Output[_builtins.str]:
444
+ """
445
+ Group ID to assign member entities to.
446
+ """
447
+ return pulumi.get(self, "group_id")
448
+
449
+ @_builtins.property
450
+ @pulumi.getter(name="memberGroupIds")
451
+ def member_group_ids(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
452
+ """
453
+ List of member groups that belong to the group
454
+ """
455
+ return pulumi.get(self, "member_group_ids")
456
+
457
+ @_builtins.property
458
+ @pulumi.getter
459
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
460
+ """
461
+ The namespace to provision the resource in.
462
+ The value should not contain leading or trailing forward slashes.
463
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
464
+ *Available only for Vault Enterprise*.
465
+ """
466
+ return pulumi.get(self, "namespace")
467
+