pulumi-gcp 7.30.0a1719958694__py3-none-any.whl → 7.30.0a1720075632__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.
- pulumi_gcp/compute/region_disk_iam_binding.py +122 -95
- pulumi_gcp/compute/region_disk_iam_member.py +122 -95
- pulumi_gcp/compute/region_disk_iam_policy.py +115 -88
- pulumi_gcp/gkebackup/restore_plan_iam_binding.py +328 -953
- pulumi_gcp/gkebackup/restore_plan_iam_member.py +328 -953
- pulumi_gcp/gkebackup/restore_plan_iam_policy.py +238 -953
- pulumi_gcp/networksecurity/address_group_iam_binding.py +289 -2
- pulumi_gcp/networksecurity/address_group_iam_member.py +289 -2
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/sourcerepo/repository_iam_binding.py +92 -83
- pulumi_gcp/sourcerepo/repository_iam_member.py +92 -83
- pulumi_gcp/sourcerepo/repository_iam_policy.py +85 -76
- {pulumi_gcp-7.30.0a1719958694.dist-info → pulumi_gcp-7.30.0a1720075632.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.30.0a1719958694.dist-info → pulumi_gcp-7.30.0a1720075632.dist-info}/RECORD +16 -16
- {pulumi_gcp-7.30.0a1719958694.dist-info → pulumi_gcp-7.30.0a1720075632.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.30.0a1719958694.dist-info → pulumi_gcp-7.30.0a1720075632.dist-info}/top_level.txt +0 -0
@@ -29,6 +29,27 @@ class AddressGroupIamMemberArgs:
|
|
29
29
|
project: Optional[pulumi.Input[str]] = None):
|
30
30
|
"""
|
31
31
|
The set of arguments for constructing a AddressGroupIamMember resource.
|
32
|
+
:param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
|
33
|
+
Each entry can have one of the following values:
|
34
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
35
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
36
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
37
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
38
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
39
|
+
* **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.
|
40
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
41
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
42
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
43
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
44
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
45
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
46
|
+
:param pulumi.Input[str] location: The location of the gateway security policy.
|
47
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
48
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
49
|
+
location is specified, it is taken from the provider configuration.
|
50
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
51
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
52
|
+
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.
|
32
53
|
"""
|
33
54
|
pulumi.set(__self__, "member", member)
|
34
55
|
pulumi.set(__self__, "role", role)
|
@@ -44,6 +65,19 @@ class AddressGroupIamMemberArgs:
|
|
44
65
|
@property
|
45
66
|
@pulumi.getter
|
46
67
|
def member(self) -> pulumi.Input[str]:
|
68
|
+
"""
|
69
|
+
Identities that will be granted the privilege in `role`.
|
70
|
+
Each entry can have one of the following values:
|
71
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
72
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
73
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
74
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
75
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
76
|
+
* **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.
|
77
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
78
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
79
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
80
|
+
"""
|
47
81
|
return pulumi.get(self, "member")
|
48
82
|
|
49
83
|
@member.setter
|
@@ -53,6 +87,11 @@ class AddressGroupIamMemberArgs:
|
|
53
87
|
@property
|
54
88
|
@pulumi.getter
|
55
89
|
def role(self) -> pulumi.Input[str]:
|
90
|
+
"""
|
91
|
+
The role that should be applied. Only one
|
92
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
93
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
94
|
+
"""
|
56
95
|
return pulumi.get(self, "role")
|
57
96
|
|
58
97
|
@role.setter
|
@@ -71,6 +110,12 @@ class AddressGroupIamMemberArgs:
|
|
71
110
|
@property
|
72
111
|
@pulumi.getter
|
73
112
|
def location(self) -> Optional[pulumi.Input[str]]:
|
113
|
+
"""
|
114
|
+
The location of the gateway security policy.
|
115
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
116
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
117
|
+
location is specified, it is taken from the provider configuration.
|
118
|
+
"""
|
74
119
|
return pulumi.get(self, "location")
|
75
120
|
|
76
121
|
@location.setter
|
@@ -80,6 +125,9 @@ class AddressGroupIamMemberArgs:
|
|
80
125
|
@property
|
81
126
|
@pulumi.getter
|
82
127
|
def name(self) -> Optional[pulumi.Input[str]]:
|
128
|
+
"""
|
129
|
+
Used to find the parent resource to bind the IAM policy to
|
130
|
+
"""
|
83
131
|
return pulumi.get(self, "name")
|
84
132
|
|
85
133
|
@name.setter
|
@@ -89,6 +137,10 @@ class AddressGroupIamMemberArgs:
|
|
89
137
|
@property
|
90
138
|
@pulumi.getter
|
91
139
|
def project(self) -> Optional[pulumi.Input[str]]:
|
140
|
+
"""
|
141
|
+
The ID of the project in which the resource belongs.
|
142
|
+
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.
|
143
|
+
"""
|
92
144
|
return pulumi.get(self, "project")
|
93
145
|
|
94
146
|
@project.setter
|
@@ -108,6 +160,28 @@ class _AddressGroupIamMemberState:
|
|
108
160
|
role: Optional[pulumi.Input[str]] = None):
|
109
161
|
"""
|
110
162
|
Input properties used for looking up and filtering AddressGroupIamMember resources.
|
163
|
+
:param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
|
164
|
+
:param pulumi.Input[str] location: The location of the gateway security policy.
|
165
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
166
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
167
|
+
location is specified, it is taken from the provider configuration.
|
168
|
+
:param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
|
169
|
+
Each entry can have one of the following values:
|
170
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
171
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
172
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
173
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
174
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
175
|
+
* **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.
|
176
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
177
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
178
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
179
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
180
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
181
|
+
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.
|
182
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
183
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
184
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
111
185
|
"""
|
112
186
|
if condition is not None:
|
113
187
|
pulumi.set(__self__, "condition", condition)
|
@@ -136,6 +210,9 @@ class _AddressGroupIamMemberState:
|
|
136
210
|
@property
|
137
211
|
@pulumi.getter
|
138
212
|
def etag(self) -> Optional[pulumi.Input[str]]:
|
213
|
+
"""
|
214
|
+
(Computed) The etag of the IAM policy.
|
215
|
+
"""
|
139
216
|
return pulumi.get(self, "etag")
|
140
217
|
|
141
218
|
@etag.setter
|
@@ -145,6 +222,12 @@ class _AddressGroupIamMemberState:
|
|
145
222
|
@property
|
146
223
|
@pulumi.getter
|
147
224
|
def location(self) -> Optional[pulumi.Input[str]]:
|
225
|
+
"""
|
226
|
+
The location of the gateway security policy.
|
227
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
228
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
229
|
+
location is specified, it is taken from the provider configuration.
|
230
|
+
"""
|
148
231
|
return pulumi.get(self, "location")
|
149
232
|
|
150
233
|
@location.setter
|
@@ -154,6 +237,19 @@ class _AddressGroupIamMemberState:
|
|
154
237
|
@property
|
155
238
|
@pulumi.getter
|
156
239
|
def member(self) -> Optional[pulumi.Input[str]]:
|
240
|
+
"""
|
241
|
+
Identities that will be granted the privilege in `role`.
|
242
|
+
Each entry can have one of the following values:
|
243
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
244
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
245
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
246
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
247
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
248
|
+
* **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.
|
249
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
250
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
251
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
252
|
+
"""
|
157
253
|
return pulumi.get(self, "member")
|
158
254
|
|
159
255
|
@member.setter
|
@@ -163,6 +259,9 @@ class _AddressGroupIamMemberState:
|
|
163
259
|
@property
|
164
260
|
@pulumi.getter
|
165
261
|
def name(self) -> Optional[pulumi.Input[str]]:
|
262
|
+
"""
|
263
|
+
Used to find the parent resource to bind the IAM policy to
|
264
|
+
"""
|
166
265
|
return pulumi.get(self, "name")
|
167
266
|
|
168
267
|
@name.setter
|
@@ -172,6 +271,10 @@ class _AddressGroupIamMemberState:
|
|
172
271
|
@property
|
173
272
|
@pulumi.getter
|
174
273
|
def project(self) -> Optional[pulumi.Input[str]]:
|
274
|
+
"""
|
275
|
+
The ID of the project in which the resource belongs.
|
276
|
+
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.
|
277
|
+
"""
|
175
278
|
return pulumi.get(self, "project")
|
176
279
|
|
177
280
|
@project.setter
|
@@ -181,6 +284,11 @@ class _AddressGroupIamMemberState:
|
|
181
284
|
@property
|
182
285
|
@pulumi.getter
|
183
286
|
def role(self) -> Optional[pulumi.Input[str]]:
|
287
|
+
"""
|
288
|
+
The role that should be applied. Only one
|
289
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
290
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
291
|
+
"""
|
184
292
|
return pulumi.get(self, "role")
|
185
293
|
|
186
294
|
@role.setter
|
@@ -201,9 +309,81 @@ class AddressGroupIamMember(pulumi.CustomResource):
|
|
201
309
|
role: Optional[pulumi.Input[str]] = None,
|
202
310
|
__props__=None):
|
203
311
|
"""
|
204
|
-
|
312
|
+
Three different resources help you manage your IAM policy for Network security ProjectAddressGroup. Each of these resources serves a different use case:
|
313
|
+
|
314
|
+
* `networksecurity.AddressGroupIamPolicy`: Authoritative. Sets the IAM policy for the projectaddressgroup and replaces any existing policy already attached.
|
315
|
+
* `networksecurity.AddressGroupIamBinding`: 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 projectaddressgroup are preserved.
|
316
|
+
* `networksecurity.AddressGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the projectaddressgroup are preserved.
|
317
|
+
|
318
|
+
A data source can be used to retrieve policy data in advent you do not need creation
|
319
|
+
|
320
|
+
* `networksecurity.AddressGroupIamPolicy`: Retrieves the IAM policy for the projectaddressgroup
|
321
|
+
|
322
|
+
> **Note:** `networksecurity.AddressGroupIamPolicy` **cannot** be used in conjunction with `networksecurity.AddressGroupIamBinding` and `networksecurity.AddressGroupIamMember` or they will fight over what your policy should be.
|
323
|
+
|
324
|
+
> **Note:** `networksecurity.AddressGroupIamBinding` resources **can be** used in conjunction with `networksecurity.AddressGroupIamMember` resources **only if** they do not grant privilege to the same role.
|
325
|
+
|
326
|
+
## Import
|
327
|
+
|
328
|
+
For all import syntaxes, the "resource in question" can take any of the following forms:
|
329
|
+
|
330
|
+
* projects/{{project}}/locations/{{location}}/addressGroups/{{name}}
|
331
|
+
|
332
|
+
* {{project}}/{{location}}/{{name}}
|
333
|
+
|
334
|
+
* {{location}}/{{name}}
|
335
|
+
|
336
|
+
* {{name}}
|
337
|
+
|
338
|
+
Any variables not passed in the import command will be taken from the provider configuration.
|
339
|
+
|
340
|
+
Network security projectaddressgroup IAM resources can be imported using the resource identifiers, role, and member.
|
341
|
+
|
342
|
+
IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
|
343
|
+
|
344
|
+
```sh
|
345
|
+
$ pulumi import gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember editor "projects/{{project}}/locations/{{location}}/addressGroups/{{project_address_group}} roles/compute.networkAdmin user:jane@example.com"
|
346
|
+
```
|
347
|
+
|
348
|
+
IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
|
349
|
+
|
350
|
+
```sh
|
351
|
+
$ pulumi import gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember editor "projects/{{project}}/locations/{{location}}/addressGroups/{{project_address_group}} roles/compute.networkAdmin"
|
352
|
+
```
|
353
|
+
|
354
|
+
IAM policy imports use the identifier of the resource in question, e.g.
|
355
|
+
|
356
|
+
```sh
|
357
|
+
$ pulumi import gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember editor projects/{{project}}/locations/{{location}}/addressGroups/{{project_address_group}}
|
358
|
+
```
|
359
|
+
|
360
|
+
-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
|
361
|
+
|
362
|
+
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
363
|
+
|
205
364
|
:param str resource_name: The name of the resource.
|
206
365
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
366
|
+
:param pulumi.Input[str] location: The location of the gateway security policy.
|
367
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
368
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
369
|
+
location is specified, it is taken from the provider configuration.
|
370
|
+
:param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
|
371
|
+
Each entry can have one of the following values:
|
372
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
373
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
374
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
375
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
376
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
377
|
+
* **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.
|
378
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
379
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
380
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
381
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
382
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
383
|
+
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.
|
384
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
385
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
386
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
207
387
|
"""
|
208
388
|
...
|
209
389
|
@overload
|
@@ -212,7 +392,58 @@ class AddressGroupIamMember(pulumi.CustomResource):
|
|
212
392
|
args: AddressGroupIamMemberArgs,
|
213
393
|
opts: Optional[pulumi.ResourceOptions] = None):
|
214
394
|
"""
|
215
|
-
|
395
|
+
Three different resources help you manage your IAM policy for Network security ProjectAddressGroup. Each of these resources serves a different use case:
|
396
|
+
|
397
|
+
* `networksecurity.AddressGroupIamPolicy`: Authoritative. Sets the IAM policy for the projectaddressgroup and replaces any existing policy already attached.
|
398
|
+
* `networksecurity.AddressGroupIamBinding`: 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 projectaddressgroup are preserved.
|
399
|
+
* `networksecurity.AddressGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the projectaddressgroup are preserved.
|
400
|
+
|
401
|
+
A data source can be used to retrieve policy data in advent you do not need creation
|
402
|
+
|
403
|
+
* `networksecurity.AddressGroupIamPolicy`: Retrieves the IAM policy for the projectaddressgroup
|
404
|
+
|
405
|
+
> **Note:** `networksecurity.AddressGroupIamPolicy` **cannot** be used in conjunction with `networksecurity.AddressGroupIamBinding` and `networksecurity.AddressGroupIamMember` or they will fight over what your policy should be.
|
406
|
+
|
407
|
+
> **Note:** `networksecurity.AddressGroupIamBinding` resources **can be** used in conjunction with `networksecurity.AddressGroupIamMember` resources **only if** they do not grant privilege to the same role.
|
408
|
+
|
409
|
+
## Import
|
410
|
+
|
411
|
+
For all import syntaxes, the "resource in question" can take any of the following forms:
|
412
|
+
|
413
|
+
* projects/{{project}}/locations/{{location}}/addressGroups/{{name}}
|
414
|
+
|
415
|
+
* {{project}}/{{location}}/{{name}}
|
416
|
+
|
417
|
+
* {{location}}/{{name}}
|
418
|
+
|
419
|
+
* {{name}}
|
420
|
+
|
421
|
+
Any variables not passed in the import command will be taken from the provider configuration.
|
422
|
+
|
423
|
+
Network security projectaddressgroup IAM resources can be imported using the resource identifiers, role, and member.
|
424
|
+
|
425
|
+
IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.
|
426
|
+
|
427
|
+
```sh
|
428
|
+
$ pulumi import gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember editor "projects/{{project}}/locations/{{location}}/addressGroups/{{project_address_group}} roles/compute.networkAdmin user:jane@example.com"
|
429
|
+
```
|
430
|
+
|
431
|
+
IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.
|
432
|
+
|
433
|
+
```sh
|
434
|
+
$ pulumi import gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember editor "projects/{{project}}/locations/{{location}}/addressGroups/{{project_address_group}} roles/compute.networkAdmin"
|
435
|
+
```
|
436
|
+
|
437
|
+
IAM policy imports use the identifier of the resource in question, e.g.
|
438
|
+
|
439
|
+
```sh
|
440
|
+
$ pulumi import gcp:networksecurity/addressGroupIamMember:AddressGroupIamMember editor projects/{{project}}/locations/{{location}}/addressGroups/{{project_address_group}}
|
441
|
+
```
|
442
|
+
|
443
|
+
-> **Custom Roles**: If you're importing a IAM resource with a custom role, make sure to use the
|
444
|
+
|
445
|
+
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
446
|
+
|
216
447
|
:param str resource_name: The name of the resource.
|
217
448
|
:param AddressGroupIamMemberArgs args: The arguments to use to populate this resource's properties.
|
218
449
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
@@ -278,6 +509,28 @@ class AddressGroupIamMember(pulumi.CustomResource):
|
|
278
509
|
:param str resource_name: The unique name of the resulting resource.
|
279
510
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
280
511
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
512
|
+
:param pulumi.Input[str] etag: (Computed) The etag of the IAM policy.
|
513
|
+
:param pulumi.Input[str] location: The location of the gateway security policy.
|
514
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
515
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
516
|
+
location is specified, it is taken from the provider configuration.
|
517
|
+
:param pulumi.Input[str] member: Identities that will be granted the privilege in `role`.
|
518
|
+
Each entry can have one of the following values:
|
519
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
520
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
521
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
522
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
523
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
524
|
+
* **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.
|
525
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
526
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
527
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
528
|
+
:param pulumi.Input[str] name: Used to find the parent resource to bind the IAM policy to
|
529
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
530
|
+
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.
|
531
|
+
:param pulumi.Input[str] role: The role that should be applied. Only one
|
532
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
533
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
281
534
|
"""
|
282
535
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
283
536
|
|
@@ -300,30 +553,64 @@ class AddressGroupIamMember(pulumi.CustomResource):
|
|
300
553
|
@property
|
301
554
|
@pulumi.getter
|
302
555
|
def etag(self) -> pulumi.Output[str]:
|
556
|
+
"""
|
557
|
+
(Computed) The etag of the IAM policy.
|
558
|
+
"""
|
303
559
|
return pulumi.get(self, "etag")
|
304
560
|
|
305
561
|
@property
|
306
562
|
@pulumi.getter
|
307
563
|
def location(self) -> pulumi.Output[str]:
|
564
|
+
"""
|
565
|
+
The location of the gateway security policy.
|
566
|
+
Used to find the parent resource to bind the IAM policy to. If not specified,
|
567
|
+
the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
|
568
|
+
location is specified, it is taken from the provider configuration.
|
569
|
+
"""
|
308
570
|
return pulumi.get(self, "location")
|
309
571
|
|
310
572
|
@property
|
311
573
|
@pulumi.getter
|
312
574
|
def member(self) -> pulumi.Output[str]:
|
575
|
+
"""
|
576
|
+
Identities that will be granted the privilege in `role`.
|
577
|
+
Each entry can have one of the following values:
|
578
|
+
* **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
|
579
|
+
* **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
|
580
|
+
* **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
|
581
|
+
* **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
|
582
|
+
* **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
|
583
|
+
* **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.
|
584
|
+
* **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
|
585
|
+
* **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
|
586
|
+
* **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
|
587
|
+
"""
|
313
588
|
return pulumi.get(self, "member")
|
314
589
|
|
315
590
|
@property
|
316
591
|
@pulumi.getter
|
317
592
|
def name(self) -> pulumi.Output[str]:
|
593
|
+
"""
|
594
|
+
Used to find the parent resource to bind the IAM policy to
|
595
|
+
"""
|
318
596
|
return pulumi.get(self, "name")
|
319
597
|
|
320
598
|
@property
|
321
599
|
@pulumi.getter
|
322
600
|
def project(self) -> pulumi.Output[str]:
|
601
|
+
"""
|
602
|
+
The ID of the project in which the resource belongs.
|
603
|
+
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.
|
604
|
+
"""
|
323
605
|
return pulumi.get(self, "project")
|
324
606
|
|
325
607
|
@property
|
326
608
|
@pulumi.getter
|
327
609
|
def role(self) -> pulumi.Output[str]:
|
610
|
+
"""
|
611
|
+
The role that should be applied. Only one
|
612
|
+
`networksecurity.AddressGroupIamBinding` can be used per role. Note that custom roles must be of the format
|
613
|
+
`[projects|organizations]/{parent-name}/roles/{role-name}`.
|
614
|
+
"""
|
328
615
|
return pulumi.get(self, "role")
|
329
616
|
|
pulumi_gcp/pulumi-plugin.json
CHANGED