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