pulumi-gcp 7.26.0a1717544115__py3-none-any.whl → 7.26.0a1717690580__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 (165) hide show
  1. pulumi_gcp/__init__.py +56 -0
  2. pulumi_gcp/alloydb/_inputs.py +92 -0
  3. pulumi_gcp/alloydb/backup.py +12 -4
  4. pulumi_gcp/alloydb/cluster.py +72 -6
  5. pulumi_gcp/alloydb/instance.py +60 -2
  6. pulumi_gcp/alloydb/outputs.py +114 -0
  7. pulumi_gcp/artifactregistry/get_repository_iam_policy.py +6 -2
  8. pulumi_gcp/artifactregistry/repository_iam_binding.py +21 -7
  9. pulumi_gcp/artifactregistry/repository_iam_member.py +21 -7
  10. pulumi_gcp/artifactregistry/repository_iam_policy.py +21 -7
  11. pulumi_gcp/bigquery/connection_iam_binding.py +21 -7
  12. pulumi_gcp/bigquery/connection_iam_member.py +21 -7
  13. pulumi_gcp/bigquery/connection_iam_policy.py +21 -7
  14. pulumi_gcp/bigquery/data_transfer_config.py +14 -7
  15. pulumi_gcp/bigquery/get_connection_iam_policy.py +6 -2
  16. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +21 -7
  17. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +21 -7
  18. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +21 -7
  19. pulumi_gcp/bigqueryanalyticshub/get_data_exchange_iam_policy.py +6 -2
  20. pulumi_gcp/bigqueryanalyticshub/get_listing_iam_policy.py +6 -2
  21. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +21 -7
  22. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +21 -7
  23. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +21 -7
  24. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +21 -7
  25. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +21 -7
  26. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +21 -7
  27. pulumi_gcp/bigquerydatapolicy/get_iam_policy.py +6 -2
  28. pulumi_gcp/certificateauthority/_inputs.py +20 -4
  29. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +21 -7
  30. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +21 -7
  31. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +21 -7
  32. pulumi_gcp/certificateauthority/certificate_template.py +157 -173
  33. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +27 -0
  34. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +27 -0
  35. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +27 -0
  36. pulumi_gcp/certificateauthority/get_ca_pool_iam_policy.py +6 -2
  37. pulumi_gcp/certificateauthority/get_certificate_template_iam_policy.py +6 -0
  38. pulumi_gcp/certificateauthority/outputs.py +20 -4
  39. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +21 -7
  40. pulumi_gcp/cloudbuildv2/connection_iam_member.py +21 -7
  41. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +21 -7
  42. pulumi_gcp/cloudbuildv2/get_connection_iam_policy.py +6 -2
  43. pulumi_gcp/clouddeploy/get_custom_target_type_iam_policy.py +6 -2
  44. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +21 -7
  45. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +21 -7
  46. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +21 -7
  47. pulumi_gcp/cloudfunctionsv2/get_function_iam_policy.py +6 -2
  48. pulumi_gcp/cloudrun/get_service_iam_policy.py +6 -2
  49. pulumi_gcp/cloudrun/iam_binding.py +21 -7
  50. pulumi_gcp/cloudrun/iam_member.py +21 -7
  51. pulumi_gcp/cloudrun/iam_policy.py +21 -7
  52. pulumi_gcp/cloudrunv2/get_job_iam_policy.py +6 -2
  53. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  54. pulumi_gcp/cloudrunv2/get_service_iam_policy.py +6 -2
  55. pulumi_gcp/cloudrunv2/job_iam_binding.py +21 -7
  56. pulumi_gcp/cloudrunv2/job_iam_member.py +21 -7
  57. pulumi_gcp/cloudrunv2/job_iam_policy.py +21 -7
  58. pulumi_gcp/cloudrunv2/service.py +47 -0
  59. pulumi_gcp/cloudrunv2/service_iam_binding.py +21 -7
  60. pulumi_gcp/cloudrunv2/service_iam_member.py +21 -7
  61. pulumi_gcp/cloudrunv2/service_iam_policy.py +21 -7
  62. pulumi_gcp/cloudtasks/get_queue_iam_policy.py +6 -2
  63. pulumi_gcp/cloudtasks/queue_iam_binding.py +21 -7
  64. pulumi_gcp/cloudtasks/queue_iam_member.py +21 -7
  65. pulumi_gcp/cloudtasks/queue_iam_policy.py +21 -7
  66. pulumi_gcp/compute/_inputs.py +18 -18
  67. pulumi_gcp/compute/outputs.py +20 -20
  68. pulumi_gcp/dataplex/__init__.py +5 -0
  69. pulumi_gcp/dataplex/_inputs.py +104 -0
  70. pulumi_gcp/dataplex/aspect_type_iam_binding.py +21 -7
  71. pulumi_gcp/dataplex/aspect_type_iam_member.py +21 -7
  72. pulumi_gcp/dataplex/aspect_type_iam_policy.py +21 -7
  73. pulumi_gcp/dataplex/datascan_iam_binding.py +21 -7
  74. pulumi_gcp/dataplex/datascan_iam_member.py +21 -7
  75. pulumi_gcp/dataplex/datascan_iam_policy.py +21 -7
  76. pulumi_gcp/dataplex/entry_group_iam_binding.py +21 -7
  77. pulumi_gcp/dataplex/entry_group_iam_member.py +21 -7
  78. pulumi_gcp/dataplex/entry_group_iam_policy.py +21 -7
  79. pulumi_gcp/dataplex/entry_type.py +963 -0
  80. pulumi_gcp/dataplex/entry_type_iam_binding.py +779 -0
  81. pulumi_gcp/dataplex/entry_type_iam_member.py +779 -0
  82. pulumi_gcp/dataplex/entry_type_iam_policy.py +618 -0
  83. pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +6 -2
  84. pulumi_gcp/dataplex/get_datascan_iam_policy.py +6 -2
  85. pulumi_gcp/dataplex/get_entry_group_iam_policy.py +6 -2
  86. pulumi_gcp/dataplex/get_entry_type_iam_policy.py +168 -0
  87. pulumi_gcp/dataplex/get_task_iam_policy.py +6 -2
  88. pulumi_gcp/dataplex/outputs.py +76 -0
  89. pulumi_gcp/dataplex/task.py +16 -16
  90. pulumi_gcp/dataplex/task_iam_binding.py +21 -7
  91. pulumi_gcp/dataplex/task_iam_member.py +21 -7
  92. pulumi_gcp/dataplex/task_iam_policy.py +21 -7
  93. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +21 -7
  94. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +21 -7
  95. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +21 -7
  96. pulumi_gcp/dataproc/get_autoscaling_policy_iam_policy.py +6 -2
  97. pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +6 -2
  98. pulumi_gcp/dataproc/get_metastore_service_iam_policy.py +6 -2
  99. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +21 -7
  100. pulumi_gcp/dataproc/metastore_federation_iam_member.py +21 -7
  101. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +21 -7
  102. pulumi_gcp/dataproc/metastore_service_iam_binding.py +21 -7
  103. pulumi_gcp/dataproc/metastore_service_iam_member.py +21 -7
  104. pulumi_gcp/dataproc/metastore_service_iam_policy.py +21 -7
  105. pulumi_gcp/firestore/field.py +4 -4
  106. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +21 -7
  107. pulumi_gcp/gkebackup/backup_plan_iam_member.py +21 -7
  108. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +21 -7
  109. pulumi_gcp/gkebackup/get_backup_plan_iam_policy.py +6 -2
  110. pulumi_gcp/gkebackup/get_restore_plan_iam_policy.py +6 -2
  111. pulumi_gcp/gkehub/feature_iam_binding.py +21 -7
  112. pulumi_gcp/gkehub/feature_iam_member.py +21 -7
  113. pulumi_gcp/gkehub/feature_iam_policy.py +21 -7
  114. pulumi_gcp/gkehub/get_feature_iam_policy.py +6 -2
  115. pulumi_gcp/gkehub/get_membership_iam_policy.py +6 -2
  116. pulumi_gcp/gkehub/membership_binding.py +6 -6
  117. pulumi_gcp/gkehub/membership_iam_binding.py +21 -7
  118. pulumi_gcp/gkehub/membership_iam_member.py +21 -7
  119. pulumi_gcp/gkehub/membership_iam_policy.py +21 -7
  120. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  121. pulumi_gcp/gkehub/namespace.py +4 -4
  122. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  123. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  124. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  125. pulumi_gcp/logging/__init__.py +4 -0
  126. pulumi_gcp/logging/_inputs.py +100 -0
  127. pulumi_gcp/logging/get_log_view_iam_policy.py +157 -0
  128. pulumi_gcp/logging/log_view_iam_binding.py +630 -0
  129. pulumi_gcp/logging/log_view_iam_member.py +630 -0
  130. pulumi_gcp/logging/log_view_iam_policy.py +449 -0
  131. pulumi_gcp/logging/outputs.py +76 -0
  132. pulumi_gcp/netapp/storage_pool.py +9 -9
  133. pulumi_gcp/networksecurity/address_group_iam_policy.py +21 -7
  134. pulumi_gcp/networksecurity/get_address_group_iam_policy.py +6 -2
  135. pulumi_gcp/notebooks/get_instance_iam_policy.py +6 -2
  136. pulumi_gcp/notebooks/get_runtime_iam_policy.py +6 -2
  137. pulumi_gcp/notebooks/instance_iam_binding.py +21 -7
  138. pulumi_gcp/notebooks/instance_iam_member.py +21 -7
  139. pulumi_gcp/notebooks/instance_iam_policy.py +21 -7
  140. pulumi_gcp/notebooks/runtime_iam_binding.py +21 -7
  141. pulumi_gcp/notebooks/runtime_iam_member.py +21 -7
  142. pulumi_gcp/notebooks/runtime_iam_policy.py +21 -7
  143. pulumi_gcp/orgpolicy/policy.py +2 -2
  144. pulumi_gcp/privilegedaccessmanager/entitlement.py +7 -7
  145. pulumi_gcp/pubsub/subscription.py +4 -4
  146. pulumi_gcp/pulumi-plugin.json +1 -1
  147. pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +6 -2
  148. pulumi_gcp/sql/_inputs.py +2 -4
  149. pulumi_gcp/sql/outputs.py +6 -8
  150. pulumi_gcp/storage/_inputs.py +48 -0
  151. pulumi_gcp/storage/outputs.py +75 -0
  152. pulumi_gcp/vertex/get_ai_endpoint_iam_policy.py +6 -2
  153. pulumi_gcp/workbench/get_instance_iam_policy.py +6 -2
  154. pulumi_gcp/workstations/get_workstation_config_iam_policy.py +6 -2
  155. pulumi_gcp/workstations/get_workstation_iam_policy.py +6 -2
  156. pulumi_gcp/workstations/workstation_config_iam_binding.py +21 -7
  157. pulumi_gcp/workstations/workstation_config_iam_member.py +21 -7
  158. pulumi_gcp/workstations/workstation_config_iam_policy.py +21 -7
  159. pulumi_gcp/workstations/workstation_iam_binding.py +21 -7
  160. pulumi_gcp/workstations/workstation_iam_member.py +21 -7
  161. pulumi_gcp/workstations/workstation_iam_policy.py +21 -7
  162. {pulumi_gcp-7.26.0a1717544115.dist-info → pulumi_gcp-7.26.0a1717690580.dist-info}/METADATA +1 -1
  163. {pulumi_gcp-7.26.0a1717544115.dist-info → pulumi_gcp-7.26.0a1717690580.dist-info}/RECORD +165 -156
  164. {pulumi_gcp-7.26.0a1717544115.dist-info → pulumi_gcp-7.26.0a1717690580.dist-info}/WHEEL +0 -0
  165. {pulumi_gcp-7.26.0a1717544115.dist-info → pulumi_gcp-7.26.0a1717690580.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,779 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['EntryTypeIamMemberArgs', 'EntryTypeIamMember']
15
+
16
+ @pulumi.input_type
17
+ class EntryTypeIamMemberArgs:
18
+ def __init__(__self__, *,
19
+ entry_type_id: pulumi.Input[str],
20
+ member: pulumi.Input[str],
21
+ role: pulumi.Input[str],
22
+ condition: Optional[pulumi.Input['EntryTypeIamMemberConditionArgs']] = None,
23
+ location: Optional[pulumi.Input[str]] = None,
24
+ project: Optional[pulumi.Input[str]] = None):
25
+ """
26
+ The set of arguments for constructing a EntryTypeIamMember resource.
27
+ :param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
28
+ Each entry can have one of the following values:
29
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
30
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
31
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
32
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
33
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
34
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
35
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
36
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
37
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
38
+ :param pulumi.Input[str] role: The role that should be applied. Only one
39
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
40
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
41
+ :param pulumi.Input[str] location: The location where entry type will be created in.
42
+ Used to find the parent resource to bind the IAM policy to. If not specified,
43
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
44
+ location is specified, it is taken from the provider configuration.
45
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
46
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
47
+ """
48
+ pulumi.set(__self__, "entry_type_id", entry_type_id)
49
+ pulumi.set(__self__, "member", member)
50
+ pulumi.set(__self__, "role", role)
51
+ if condition is not None:
52
+ pulumi.set(__self__, "condition", condition)
53
+ if location is not None:
54
+ pulumi.set(__self__, "location", location)
55
+ if project is not None:
56
+ pulumi.set(__self__, "project", project)
57
+
58
+ @property
59
+ @pulumi.getter(name="entryTypeId")
60
+ def entry_type_id(self) -> pulumi.Input[str]:
61
+ return pulumi.get(self, "entry_type_id")
62
+
63
+ @entry_type_id.setter
64
+ def entry_type_id(self, value: pulumi.Input[str]):
65
+ pulumi.set(self, "entry_type_id", value)
66
+
67
+ @property
68
+ @pulumi.getter
69
+ def member(self) -> pulumi.Input[str]:
70
+ """
71
+ Identities that will be granted the privilege in `role`.
72
+ Each entry can have one of the following values:
73
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
74
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
75
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
76
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
77
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
78
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
79
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
80
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
81
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
82
+ """
83
+ return pulumi.get(self, "member")
84
+
85
+ @member.setter
86
+ def member(self, value: pulumi.Input[str]):
87
+ pulumi.set(self, "member", value)
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def role(self) -> pulumi.Input[str]:
92
+ """
93
+ The role that should be applied. Only one
94
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
95
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
96
+ """
97
+ return pulumi.get(self, "role")
98
+
99
+ @role.setter
100
+ def role(self, value: pulumi.Input[str]):
101
+ pulumi.set(self, "role", value)
102
+
103
+ @property
104
+ @pulumi.getter
105
+ def condition(self) -> Optional[pulumi.Input['EntryTypeIamMemberConditionArgs']]:
106
+ return pulumi.get(self, "condition")
107
+
108
+ @condition.setter
109
+ def condition(self, value: Optional[pulumi.Input['EntryTypeIamMemberConditionArgs']]):
110
+ pulumi.set(self, "condition", value)
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def location(self) -> Optional[pulumi.Input[str]]:
115
+ """
116
+ The location where entry type will be created in.
117
+ Used to find the parent resource to bind the IAM policy to. If not specified,
118
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
119
+ location is specified, it is taken from the provider configuration.
120
+ """
121
+ return pulumi.get(self, "location")
122
+
123
+ @location.setter
124
+ def location(self, value: Optional[pulumi.Input[str]]):
125
+ pulumi.set(self, "location", value)
126
+
127
+ @property
128
+ @pulumi.getter
129
+ def project(self) -> Optional[pulumi.Input[str]]:
130
+ """
131
+ The ID of the project in which the resource belongs.
132
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
133
+ """
134
+ return pulumi.get(self, "project")
135
+
136
+ @project.setter
137
+ def project(self, value: Optional[pulumi.Input[str]]):
138
+ pulumi.set(self, "project", value)
139
+
140
+
141
+ @pulumi.input_type
142
+ class _EntryTypeIamMemberState:
143
+ def __init__(__self__, *,
144
+ condition: Optional[pulumi.Input['EntryTypeIamMemberConditionArgs']] = None,
145
+ entry_type_id: Optional[pulumi.Input[str]] = None,
146
+ etag: Optional[pulumi.Input[str]] = None,
147
+ location: Optional[pulumi.Input[str]] = None,
148
+ member: Optional[pulumi.Input[str]] = None,
149
+ project: Optional[pulumi.Input[str]] = None,
150
+ role: Optional[pulumi.Input[str]] = None):
151
+ """
152
+ Input properties used for looking up and filtering EntryTypeIamMember resources.
153
+ :param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
154
+ :param pulumi.Input[str] location: The location where entry type will be created in.
155
+ Used to find the parent resource to bind the IAM policy to. If not specified,
156
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
157
+ location is specified, it is taken from the provider configuration.
158
+ :param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
159
+ Each entry can have one of the following values:
160
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
161
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
162
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
163
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
164
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
165
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
166
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
167
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
168
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
169
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
170
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
171
+ :param pulumi.Input[str] role: The role that should be applied. Only one
172
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
173
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
174
+ """
175
+ if condition is not None:
176
+ pulumi.set(__self__, "condition", condition)
177
+ if entry_type_id is not None:
178
+ pulumi.set(__self__, "entry_type_id", entry_type_id)
179
+ if etag is not None:
180
+ pulumi.set(__self__, "etag", etag)
181
+ if location is not None:
182
+ pulumi.set(__self__, "location", location)
183
+ if member is not None:
184
+ pulumi.set(__self__, "member", member)
185
+ if project is not None:
186
+ pulumi.set(__self__, "project", project)
187
+ if role is not None:
188
+ pulumi.set(__self__, "role", role)
189
+
190
+ @property
191
+ @pulumi.getter
192
+ def condition(self) -> Optional[pulumi.Input['EntryTypeIamMemberConditionArgs']]:
193
+ return pulumi.get(self, "condition")
194
+
195
+ @condition.setter
196
+ def condition(self, value: Optional[pulumi.Input['EntryTypeIamMemberConditionArgs']]):
197
+ pulumi.set(self, "condition", value)
198
+
199
+ @property
200
+ @pulumi.getter(name="entryTypeId")
201
+ def entry_type_id(self) -> Optional[pulumi.Input[str]]:
202
+ return pulumi.get(self, "entry_type_id")
203
+
204
+ @entry_type_id.setter
205
+ def entry_type_id(self, value: Optional[pulumi.Input[str]]):
206
+ pulumi.set(self, "entry_type_id", value)
207
+
208
+ @property
209
+ @pulumi.getter
210
+ def etag(self) -> Optional[pulumi.Input[str]]:
211
+ """
212
+ (Computed) The etag of the IAM policy.
213
+ """
214
+ return pulumi.get(self, "etag")
215
+
216
+ @etag.setter
217
+ def etag(self, value: Optional[pulumi.Input[str]]):
218
+ pulumi.set(self, "etag", value)
219
+
220
+ @property
221
+ @pulumi.getter
222
+ def location(self) -> Optional[pulumi.Input[str]]:
223
+ """
224
+ The location where entry type will be created in.
225
+ Used to find the parent resource to bind the IAM policy to. If not specified,
226
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
227
+ location is specified, it is taken from the provider configuration.
228
+ """
229
+ return pulumi.get(self, "location")
230
+
231
+ @location.setter
232
+ def location(self, value: Optional[pulumi.Input[str]]):
233
+ pulumi.set(self, "location", value)
234
+
235
+ @property
236
+ @pulumi.getter
237
+ def member(self) -> Optional[pulumi.Input[str]]:
238
+ """
239
+ Identities that will be granted the privilege in `role`.
240
+ Each entry can have one of the following values:
241
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
242
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
243
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
244
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
245
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
246
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
247
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
248
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
249
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
250
+ """
251
+ return pulumi.get(self, "member")
252
+
253
+ @member.setter
254
+ def member(self, value: Optional[pulumi.Input[str]]):
255
+ pulumi.set(self, "member", value)
256
+
257
+ @property
258
+ @pulumi.getter
259
+ def project(self) -> Optional[pulumi.Input[str]]:
260
+ """
261
+ The ID of the project in which the resource belongs.
262
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
263
+ """
264
+ return pulumi.get(self, "project")
265
+
266
+ @project.setter
267
+ def project(self, value: Optional[pulumi.Input[str]]):
268
+ pulumi.set(self, "project", value)
269
+
270
+ @property
271
+ @pulumi.getter
272
+ def role(self) -> Optional[pulumi.Input[str]]:
273
+ """
274
+ The role that should be applied. Only one
275
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
276
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
277
+ """
278
+ return pulumi.get(self, "role")
279
+
280
+ @role.setter
281
+ def role(self, value: Optional[pulumi.Input[str]]):
282
+ pulumi.set(self, "role", value)
283
+
284
+
285
+ class EntryTypeIamMember(pulumi.CustomResource):
286
+ @overload
287
+ def __init__(__self__,
288
+ resource_name: str,
289
+ opts: Optional[pulumi.ResourceOptions] = None,
290
+ condition: Optional[pulumi.Input[pulumi.InputType['EntryTypeIamMemberConditionArgs']]] = None,
291
+ entry_type_id: Optional[pulumi.Input[str]] = None,
292
+ location: Optional[pulumi.Input[str]] = None,
293
+ member: Optional[pulumi.Input[str]] = None,
294
+ project: Optional[pulumi.Input[str]] = None,
295
+ role: Optional[pulumi.Input[str]] = None,
296
+ __props__=None):
297
+ """
298
+ Three different resources help you manage your IAM policy for Dataplex EntryType. Each of these resources serves a different use case:
299
+
300
+ * `dataplex.EntryTypeIamPolicy`: Authoritative. Sets the IAM policy for the entrytype and replaces any existing policy already attached.
301
+ * `dataplex.EntryTypeIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the entrytype are preserved.
302
+ * `dataplex.EntryTypeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the entrytype are preserved.
303
+
304
+ A data source can be used to retrieve policy data in advent you do not need creation
305
+
306
+ * `dataplex.EntryTypeIamPolicy`: Retrieves the IAM policy for the entrytype
307
+
308
+ > **Note:** `dataplex.EntryTypeIamPolicy` **cannot** be used in conjunction with `dataplex.EntryTypeIamBinding` and `dataplex.EntryTypeIamMember` or they will fight over what your policy should be.
309
+
310
+ > **Note:** `dataplex.EntryTypeIamBinding` resources **can be** used in conjunction with `dataplex.EntryTypeIamMember` resources **only if** they do not grant privilege to the same role.
311
+
312
+ ## dataplex.EntryTypeIamPolicy
313
+
314
+ ```python
315
+ import pulumi
316
+ import pulumi_gcp as gcp
317
+
318
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
319
+ role="roles/viewer",
320
+ members=["user:jane@example.com"],
321
+ )])
322
+ policy = gcp.dataplex.EntryTypeIamPolicy("policy",
323
+ project=test_entry_type_basic["project"],
324
+ location=test_entry_type_basic["location"],
325
+ entry_type_id=test_entry_type_basic["entryTypeId"],
326
+ policy_data=admin.policy_data)
327
+ ```
328
+
329
+ ## dataplex.EntryTypeIamBinding
330
+
331
+ ```python
332
+ import pulumi
333
+ import pulumi_gcp as gcp
334
+
335
+ binding = gcp.dataplex.EntryTypeIamBinding("binding",
336
+ project=test_entry_type_basic["project"],
337
+ location=test_entry_type_basic["location"],
338
+ entry_type_id=test_entry_type_basic["entryTypeId"],
339
+ role="roles/viewer",
340
+ members=["user:jane@example.com"])
341
+ ```
342
+
343
+ ## dataplex.EntryTypeIamMember
344
+
345
+ ```python
346
+ import pulumi
347
+ import pulumi_gcp as gcp
348
+
349
+ member = gcp.dataplex.EntryTypeIamMember("member",
350
+ project=test_entry_type_basic["project"],
351
+ location=test_entry_type_basic["location"],
352
+ entry_type_id=test_entry_type_basic["entryTypeId"],
353
+ role="roles/viewer",
354
+ member="user:jane@example.com")
355
+ ```
356
+
357
+ ## dataplex.EntryTypeIamPolicy
358
+
359
+ ```python
360
+ import pulumi
361
+ import pulumi_gcp as gcp
362
+
363
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
364
+ role="roles/viewer",
365
+ members=["user:jane@example.com"],
366
+ )])
367
+ policy = gcp.dataplex.EntryTypeIamPolicy("policy",
368
+ project=test_entry_type_basic["project"],
369
+ location=test_entry_type_basic["location"],
370
+ entry_type_id=test_entry_type_basic["entryTypeId"],
371
+ policy_data=admin.policy_data)
372
+ ```
373
+
374
+ ## dataplex.EntryTypeIamBinding
375
+
376
+ ```python
377
+ import pulumi
378
+ import pulumi_gcp as gcp
379
+
380
+ binding = gcp.dataplex.EntryTypeIamBinding("binding",
381
+ project=test_entry_type_basic["project"],
382
+ location=test_entry_type_basic["location"],
383
+ entry_type_id=test_entry_type_basic["entryTypeId"],
384
+ role="roles/viewer",
385
+ members=["user:jane@example.com"])
386
+ ```
387
+
388
+ ## dataplex.EntryTypeIamMember
389
+
390
+ ```python
391
+ import pulumi
392
+ import pulumi_gcp as gcp
393
+
394
+ member = gcp.dataplex.EntryTypeIamMember("member",
395
+ project=test_entry_type_basic["project"],
396
+ location=test_entry_type_basic["location"],
397
+ entry_type_id=test_entry_type_basic["entryTypeId"],
398
+ role="roles/viewer",
399
+ member="user:jane@example.com")
400
+ ```
401
+
402
+ ## Import
403
+
404
+ For all import syntaxes, the "resource in question" can take any of the following forms:
405
+
406
+ * projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}}
407
+
408
+ * {{project}}/{{location}}/{{entry_type_id}}
409
+
410
+ * {{location}}/{{entry_type_id}}
411
+
412
+ * {{entry_type_id}}
413
+
414
+ Any variables not passed in the import command will be taken from the provider configuration.
415
+
416
+ Dataplex entrytype IAM resources can be imported using the resource identifiers, role, and member.
417
+
418
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
419
+
420
+ ```sh
421
+ $ pulumi import gcp:dataplex/entryTypeIamMember:EntryTypeIamMember editor "projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}} roles/viewer user:jane@example.com"
422
+ ```
423
+
424
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
425
+
426
+ ```sh
427
+ $ pulumi import gcp:dataplex/entryTypeIamMember:EntryTypeIamMember editor "projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}} roles/viewer"
428
+ ```
429
+
430
+ IAM policy imports use the identifier of the resource in question, e.g.
431
+
432
+ ```sh
433
+ $ pulumi import gcp:dataplex/entryTypeIamMember:EntryTypeIamMember editor projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}}
434
+ ```
435
+
436
+ -> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
437
+
438
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
439
+
440
+ :param str resource_name: The name of the resource.
441
+ :param pulumi.ResourceOptions opts: Options for the resource.
442
+ :param pulumi.Input[str] location: The location where entry type will be created in.
443
+ Used to find the parent resource to bind the IAM policy to. If not specified,
444
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
445
+ location is specified, it is taken from the provider configuration.
446
+ :param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
447
+ Each entry can have one of the following values:
448
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
449
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
450
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
451
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
452
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
453
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
454
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
455
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
456
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
457
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
458
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
459
+ :param pulumi.Input[str] role: The role that should be applied. Only one
460
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
461
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
462
+ """
463
+ ...
464
+ @overload
465
+ def __init__(__self__,
466
+ resource_name: str,
467
+ args: EntryTypeIamMemberArgs,
468
+ opts: Optional[pulumi.ResourceOptions] = None):
469
+ """
470
+ Three different resources help you manage your IAM policy for Dataplex EntryType. Each of these resources serves a different use case:
471
+
472
+ * `dataplex.EntryTypeIamPolicy`: Authoritative. Sets the IAM policy for the entrytype and replaces any existing policy already attached.
473
+ * `dataplex.EntryTypeIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the entrytype are preserved.
474
+ * `dataplex.EntryTypeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the entrytype are preserved.
475
+
476
+ A data source can be used to retrieve policy data in advent you do not need creation
477
+
478
+ * `dataplex.EntryTypeIamPolicy`: Retrieves the IAM policy for the entrytype
479
+
480
+ > **Note:** `dataplex.EntryTypeIamPolicy` **cannot** be used in conjunction with `dataplex.EntryTypeIamBinding` and `dataplex.EntryTypeIamMember` or they will fight over what your policy should be.
481
+
482
+ > **Note:** `dataplex.EntryTypeIamBinding` resources **can be** used in conjunction with `dataplex.EntryTypeIamMember` resources **only if** they do not grant privilege to the same role.
483
+
484
+ ## dataplex.EntryTypeIamPolicy
485
+
486
+ ```python
487
+ import pulumi
488
+ import pulumi_gcp as gcp
489
+
490
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
491
+ role="roles/viewer",
492
+ members=["user:jane@example.com"],
493
+ )])
494
+ policy = gcp.dataplex.EntryTypeIamPolicy("policy",
495
+ project=test_entry_type_basic["project"],
496
+ location=test_entry_type_basic["location"],
497
+ entry_type_id=test_entry_type_basic["entryTypeId"],
498
+ policy_data=admin.policy_data)
499
+ ```
500
+
501
+ ## dataplex.EntryTypeIamBinding
502
+
503
+ ```python
504
+ import pulumi
505
+ import pulumi_gcp as gcp
506
+
507
+ binding = gcp.dataplex.EntryTypeIamBinding("binding",
508
+ project=test_entry_type_basic["project"],
509
+ location=test_entry_type_basic["location"],
510
+ entry_type_id=test_entry_type_basic["entryTypeId"],
511
+ role="roles/viewer",
512
+ members=["user:jane@example.com"])
513
+ ```
514
+
515
+ ## dataplex.EntryTypeIamMember
516
+
517
+ ```python
518
+ import pulumi
519
+ import pulumi_gcp as gcp
520
+
521
+ member = gcp.dataplex.EntryTypeIamMember("member",
522
+ project=test_entry_type_basic["project"],
523
+ location=test_entry_type_basic["location"],
524
+ entry_type_id=test_entry_type_basic["entryTypeId"],
525
+ role="roles/viewer",
526
+ member="user:jane@example.com")
527
+ ```
528
+
529
+ ## dataplex.EntryTypeIamPolicy
530
+
531
+ ```python
532
+ import pulumi
533
+ import pulumi_gcp as gcp
534
+
535
+ admin = gcp.organizations.get_iam_policy(bindings=[gcp.organizations.GetIAMPolicyBindingArgs(
536
+ role="roles/viewer",
537
+ members=["user:jane@example.com"],
538
+ )])
539
+ policy = gcp.dataplex.EntryTypeIamPolicy("policy",
540
+ project=test_entry_type_basic["project"],
541
+ location=test_entry_type_basic["location"],
542
+ entry_type_id=test_entry_type_basic["entryTypeId"],
543
+ policy_data=admin.policy_data)
544
+ ```
545
+
546
+ ## dataplex.EntryTypeIamBinding
547
+
548
+ ```python
549
+ import pulumi
550
+ import pulumi_gcp as gcp
551
+
552
+ binding = gcp.dataplex.EntryTypeIamBinding("binding",
553
+ project=test_entry_type_basic["project"],
554
+ location=test_entry_type_basic["location"],
555
+ entry_type_id=test_entry_type_basic["entryTypeId"],
556
+ role="roles/viewer",
557
+ members=["user:jane@example.com"])
558
+ ```
559
+
560
+ ## dataplex.EntryTypeIamMember
561
+
562
+ ```python
563
+ import pulumi
564
+ import pulumi_gcp as gcp
565
+
566
+ member = gcp.dataplex.EntryTypeIamMember("member",
567
+ project=test_entry_type_basic["project"],
568
+ location=test_entry_type_basic["location"],
569
+ entry_type_id=test_entry_type_basic["entryTypeId"],
570
+ role="roles/viewer",
571
+ member="user:jane@example.com")
572
+ ```
573
+
574
+ ## Import
575
+
576
+ For all import syntaxes, the "resource in question" can take any of the following forms:
577
+
578
+ * projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}}
579
+
580
+ * {{project}}/{{location}}/{{entry_type_id}}
581
+
582
+ * {{location}}/{{entry_type_id}}
583
+
584
+ * {{entry_type_id}}
585
+
586
+ Any variables not passed in the import command will be taken from the provider configuration.
587
+
588
+ Dataplex entrytype IAM resources can be imported using the resource identifiers, role, and member.
589
+
590
+ IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
591
+
592
+ ```sh
593
+ $ pulumi import gcp:dataplex/entryTypeIamMember:EntryTypeIamMember editor "projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}} roles/viewer user:jane@example.com"
594
+ ```
595
+
596
+ IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
597
+
598
+ ```sh
599
+ $ pulumi import gcp:dataplex/entryTypeIamMember:EntryTypeIamMember editor "projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}} roles/viewer"
600
+ ```
601
+
602
+ IAM policy imports use the identifier of the resource in question, e.g.
603
+
604
+ ```sh
605
+ $ pulumi import gcp:dataplex/entryTypeIamMember:EntryTypeIamMember editor projects/{{project}}/locations/{{location}}/entryTypes/{{entry_type_id}}
606
+ ```
607
+
608
+ -> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
609
+
610
+ full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
611
+
612
+ :param str resource_name: The name of the resource.
613
+ :param EntryTypeIamMemberArgs args: The arguments to use to populate this resource's properties.
614
+ :param pulumi.ResourceOptions opts: Options for the resource.
615
+ """
616
+ ...
617
+ def __init__(__self__, resource_name: str, *args, **kwargs):
618
+ resource_args, opts = _utilities.get_resource_args_opts(EntryTypeIamMemberArgs, pulumi.ResourceOptions, *args, **kwargs)
619
+ if resource_args is not None:
620
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
621
+ else:
622
+ __self__._internal_init(resource_name, *args, **kwargs)
623
+
624
+ def _internal_init(__self__,
625
+ resource_name: str,
626
+ opts: Optional[pulumi.ResourceOptions] = None,
627
+ condition: Optional[pulumi.Input[pulumi.InputType['EntryTypeIamMemberConditionArgs']]] = None,
628
+ entry_type_id: Optional[pulumi.Input[str]] = None,
629
+ location: Optional[pulumi.Input[str]] = None,
630
+ member: Optional[pulumi.Input[str]] = None,
631
+ project: Optional[pulumi.Input[str]] = None,
632
+ role: Optional[pulumi.Input[str]] = None,
633
+ __props__=None):
634
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
635
+ if not isinstance(opts, pulumi.ResourceOptions):
636
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
637
+ if opts.id is None:
638
+ if __props__ is not None:
639
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
640
+ __props__ = EntryTypeIamMemberArgs.__new__(EntryTypeIamMemberArgs)
641
+
642
+ __props__.__dict__["condition"] = condition
643
+ if entry_type_id is None and not opts.urn:
644
+ raise TypeError("Missing required property 'entry_type_id'")
645
+ __props__.__dict__["entry_type_id"] = entry_type_id
646
+ __props__.__dict__["location"] = location
647
+ if member is None and not opts.urn:
648
+ raise TypeError("Missing required property 'member'")
649
+ __props__.__dict__["member"] = member
650
+ __props__.__dict__["project"] = project
651
+ if role is None and not opts.urn:
652
+ raise TypeError("Missing required property 'role'")
653
+ __props__.__dict__["role"] = role
654
+ __props__.__dict__["etag"] = None
655
+ super(EntryTypeIamMember, __self__).__init__(
656
+ 'gcp:dataplex/entryTypeIamMember:EntryTypeIamMember',
657
+ resource_name,
658
+ __props__,
659
+ opts)
660
+
661
+ @staticmethod
662
+ def get(resource_name: str,
663
+ id: pulumi.Input[str],
664
+ opts: Optional[pulumi.ResourceOptions] = None,
665
+ condition: Optional[pulumi.Input[pulumi.InputType['EntryTypeIamMemberConditionArgs']]] = None,
666
+ entry_type_id: Optional[pulumi.Input[str]] = None,
667
+ etag: Optional[pulumi.Input[str]] = None,
668
+ location: Optional[pulumi.Input[str]] = None,
669
+ member: Optional[pulumi.Input[str]] = None,
670
+ project: Optional[pulumi.Input[str]] = None,
671
+ role: Optional[pulumi.Input[str]] = None) -> 'EntryTypeIamMember':
672
+ """
673
+ Get an existing EntryTypeIamMember resource's state with the given name, id, and optional extra
674
+ properties used to qualify the lookup.
675
+
676
+ :param str resource_name: The unique name of the resulting resource.
677
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
678
+ :param pulumi.ResourceOptions opts: Options for the resource.
679
+ :param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
680
+ :param pulumi.Input[str] location: The location where entry type will be created in.
681
+ Used to find the parent resource to bind the IAM policy to. If not specified,
682
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
683
+ location is specified, it is taken from the provider configuration.
684
+ :param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
685
+ Each entry can have one of the following values:
686
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
687
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
688
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
689
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
690
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
691
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
692
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
693
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
694
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
695
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
696
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
697
+ :param pulumi.Input[str] role: The role that should be applied. Only one
698
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
699
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
700
+ """
701
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
702
+
703
+ __props__ = _EntryTypeIamMemberState.__new__(_EntryTypeIamMemberState)
704
+
705
+ __props__.__dict__["condition"] = condition
706
+ __props__.__dict__["entry_type_id"] = entry_type_id
707
+ __props__.__dict__["etag"] = etag
708
+ __props__.__dict__["location"] = location
709
+ __props__.__dict__["member"] = member
710
+ __props__.__dict__["project"] = project
711
+ __props__.__dict__["role"] = role
712
+ return EntryTypeIamMember(resource_name, opts=opts, __props__=__props__)
713
+
714
+ @property
715
+ @pulumi.getter
716
+ def condition(self) -> pulumi.Output[Optional['outputs.EntryTypeIamMemberCondition']]:
717
+ return pulumi.get(self, "condition")
718
+
719
+ @property
720
+ @pulumi.getter(name="entryTypeId")
721
+ def entry_type_id(self) -> pulumi.Output[str]:
722
+ return pulumi.get(self, "entry_type_id")
723
+
724
+ @property
725
+ @pulumi.getter
726
+ def etag(self) -> pulumi.Output[str]:
727
+ """
728
+ (Computed) The etag of the IAM policy.
729
+ """
730
+ return pulumi.get(self, "etag")
731
+
732
+ @property
733
+ @pulumi.getter
734
+ def location(self) -> pulumi.Output[str]:
735
+ """
736
+ The location where entry type will be created in.
737
+ Used to find the parent resource to bind the IAM policy to. If not specified,
738
+ the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
739
+ location is specified, it is taken from the provider configuration.
740
+ """
741
+ return pulumi.get(self, "location")
742
+
743
+ @property
744
+ @pulumi.getter
745
+ def member(self) -> pulumi.Output[str]:
746
+ """
747
+ Identities that will be granted the privilege in `role`.
748
+ Each entry can have one of the following values:
749
+ * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
750
+ * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
751
+ * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
752
+ * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
753
+ * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
754
+ * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
755
+ * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
756
+ * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
757
+ * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
758
+ """
759
+ return pulumi.get(self, "member")
760
+
761
+ @property
762
+ @pulumi.getter
763
+ def project(self) -> pulumi.Output[str]:
764
+ """
765
+ The ID of the project in which the resource belongs.
766
+ If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
767
+ """
768
+ return pulumi.get(self, "project")
769
+
770
+ @property
771
+ @pulumi.getter
772
+ def role(self) -> pulumi.Output[str]:
773
+ """
774
+ The role that should be applied. Only one
775
+ `dataplex.EntryTypeIamBinding` can be used per role. Note that custom roles must be of the format
776
+ `[projects|organizations]/{parent-name}/roles/{role-name}`.
777
+ """
778
+ return pulumi.get(self, "role")
779
+