pulumi-gcp 8.21.0a1741183435__py3-none-any.whl → 8.22.0__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/__init__.py +32 -0
- pulumi_gcp/alloydb/_inputs.py +66 -0
- pulumi_gcp/alloydb/outputs.py +95 -0
- pulumi_gcp/backupdisasterrecovery/_inputs.py +3 -3
- pulumi_gcp/backupdisasterrecovery/outputs.py +4 -4
- pulumi_gcp/certificatemanager/certificate.py +53 -7
- pulumi_gcp/certificatemanager/outputs.py +8 -2
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +600 -17
- pulumi_gcp/compute/backend_service.py +195 -7
- pulumi_gcp/compute/disk.py +108 -0
- pulumi_gcp/compute/firewall_policy_association.py +28 -2
- pulumi_gcp/compute/get_backend_service.py +12 -1
- pulumi_gcp/compute/get_disk.py +23 -1
- pulumi_gcp/compute/get_region_disk.py +23 -1
- pulumi_gcp/compute/get_region_ssl_policy.py +203 -0
- pulumi_gcp/compute/outputs.py +623 -23
- pulumi_gcp/compute/region_backend_service.py +193 -7
- pulumi_gcp/compute/region_disk.py +114 -0
- pulumi_gcp/compute/shared_vpc_service_project.py +0 -4
- pulumi_gcp/compute/subnetwork.py +147 -0
- pulumi_gcp/container/_inputs.py +3 -3
- pulumi_gcp/container/outputs.py +4 -4
- pulumi_gcp/datastream/_inputs.py +273 -0
- pulumi_gcp/datastream/connection_profile.py +54 -2
- pulumi_gcp/datastream/outputs.py +224 -0
- pulumi_gcp/eventarc/__init__.py +1 -0
- pulumi_gcp/eventarc/_inputs.py +40 -0
- pulumi_gcp/eventarc/channel.py +85 -93
- pulumi_gcp/eventarc/google_api_source.py +997 -0
- pulumi_gcp/eventarc/outputs.py +41 -0
- pulumi_gcp/firebase/data_connect_service.py +40 -2
- pulumi_gcp/iam/__init__.py +2 -0
- pulumi_gcp/iam/_inputs.py +51 -18
- pulumi_gcp/iam/folders_policy_binding.py +10 -26
- pulumi_gcp/iam/oauth_client.py +979 -0
- pulumi_gcp/iam/oauth_client_credential.py +641 -0
- pulumi_gcp/iam/organizations_policy_binding.py +8 -24
- pulumi_gcp/iam/outputs.py +34 -12
- pulumi_gcp/iam/principal_access_boundary_policy.py +58 -22
- pulumi_gcp/iam/projects_policy_binding.py +8 -24
- pulumi_gcp/kms/crypto_key_version.py +14 -7
- pulumi_gcp/monitoring/_inputs.py +15 -18
- pulumi_gcp/monitoring/alert_policy.py +46 -0
- pulumi_gcp/monitoring/outputs.py +10 -12
- pulumi_gcp/networksecurity/__init__.py +1 -0
- pulumi_gcp/networksecurity/_inputs.py +30 -18
- pulumi_gcp/networksecurity/backend_authentication_config.py +847 -0
- pulumi_gcp/networksecurity/intercept_deployment.py +178 -94
- pulumi_gcp/networksecurity/intercept_deployment_group.py +161 -77
- pulumi_gcp/networksecurity/intercept_endpoint_group.py +161 -66
- pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +137 -80
- pulumi_gcp/networksecurity/mirroring_deployment.py +178 -94
- pulumi_gcp/networksecurity/mirroring_deployment_group.py +161 -77
- pulumi_gcp/networksecurity/mirroring_endpoint_group.py +161 -80
- pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +137 -105
- pulumi_gcp/networksecurity/outputs.py +20 -12
- pulumi_gcp/networkservices/endpoint_policy.py +12 -0
- pulumi_gcp/networkservices/grpc_route.py +12 -0
- pulumi_gcp/networkservices/http_route.py +16 -0
- pulumi_gcp/networkservices/mesh.py +16 -0
- pulumi_gcp/networkservices/service_binding.py +14 -0
- pulumi_gcp/networkservices/tcp_route.py +16 -0
- pulumi_gcp/networkservices/tls_route.py +12 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/tpu/_inputs.py +21 -1
- pulumi_gcp/tpu/outputs.py +13 -1
- pulumi_gcp/tpu/v2_vm.py +2 -0
- pulumi_gcp/vmwareengine/_inputs.py +6 -0
- pulumi_gcp/vmwareengine/outputs.py +8 -0
- pulumi_gcp/workstations/workstation_cluster.py +137 -1
- {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/RECORD +75 -70
- {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.21.0a1741183435.dist-info → pulumi_gcp-8.22.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,979 @@
|
|
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 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__ = ['OauthClientArgs', 'OauthClient']
|
18
|
+
|
19
|
+
@pulumi.input_type
|
20
|
+
class OauthClientArgs:
|
21
|
+
def __init__(__self__, *,
|
22
|
+
allowed_grant_types: pulumi.Input[Sequence[pulumi.Input[str]]],
|
23
|
+
allowed_redirect_uris: pulumi.Input[Sequence[pulumi.Input[str]]],
|
24
|
+
allowed_scopes: pulumi.Input[Sequence[pulumi.Input[str]]],
|
25
|
+
location: pulumi.Input[str],
|
26
|
+
oauth_client_id: pulumi.Input[str],
|
27
|
+
client_type: Optional[pulumi.Input[str]] = None,
|
28
|
+
description: Optional[pulumi.Input[str]] = None,
|
29
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
30
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
31
|
+
project: Optional[pulumi.Input[str]] = None):
|
32
|
+
"""
|
33
|
+
The set of arguments for constructing a OauthClient resource.
|
34
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_grant_types: Required. The list of OAuth grant types is allowed for the OauthClient.
|
35
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_redirect_uris: Required. The list of redirect uris that is allowed to redirect back
|
36
|
+
when authorization process is completed.
|
37
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_scopes: Required. The list of scopes that the OauthClient is allowed to request during
|
38
|
+
OAuth flows.
|
39
|
+
The following scopes are supported:
|
40
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
41
|
+
and delete your Google Cloud data and see the email address for your Google
|
42
|
+
Account.
|
43
|
+
:param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
44
|
+
:param pulumi.Input[str] oauth_client_id: Required. The ID to use for the OauthClient, which becomes the final component of
|
45
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
46
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
47
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
48
|
+
not be specified.
|
49
|
+
|
50
|
+
|
51
|
+
- - -
|
52
|
+
:param pulumi.Input[str] client_type: Immutable. The type of OauthClient. Either public or private.
|
53
|
+
For private clients, the client secret can be managed using the dedicated
|
54
|
+
OauthClientCredential resource.
|
55
|
+
Possible values:
|
56
|
+
CLIENT_TYPE_UNSPECIFIED
|
57
|
+
PUBLIC_CLIENT
|
58
|
+
CONFIDENTIAL_CLIENT
|
59
|
+
:param pulumi.Input[str] description: A user-specified description of the OauthClient.
|
60
|
+
Cannot exceed 256 characters.
|
61
|
+
:param pulumi.Input[bool] disabled: Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
62
|
+
client.
|
63
|
+
:param pulumi.Input[str] display_name: A user-specified display name of the OauthClient.
|
64
|
+
Cannot exceed 32 characters.
|
65
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
66
|
+
If it is not provided, the provider project is used.
|
67
|
+
"""
|
68
|
+
pulumi.set(__self__, "allowed_grant_types", allowed_grant_types)
|
69
|
+
pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
|
70
|
+
pulumi.set(__self__, "allowed_scopes", allowed_scopes)
|
71
|
+
pulumi.set(__self__, "location", location)
|
72
|
+
pulumi.set(__self__, "oauth_client_id", oauth_client_id)
|
73
|
+
if client_type is not None:
|
74
|
+
pulumi.set(__self__, "client_type", client_type)
|
75
|
+
if description is not None:
|
76
|
+
pulumi.set(__self__, "description", description)
|
77
|
+
if disabled is not None:
|
78
|
+
pulumi.set(__self__, "disabled", disabled)
|
79
|
+
if display_name is not None:
|
80
|
+
pulumi.set(__self__, "display_name", display_name)
|
81
|
+
if project is not None:
|
82
|
+
pulumi.set(__self__, "project", project)
|
83
|
+
|
84
|
+
@property
|
85
|
+
@pulumi.getter(name="allowedGrantTypes")
|
86
|
+
def allowed_grant_types(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
87
|
+
"""
|
88
|
+
Required. The list of OAuth grant types is allowed for the OauthClient.
|
89
|
+
"""
|
90
|
+
return pulumi.get(self, "allowed_grant_types")
|
91
|
+
|
92
|
+
@allowed_grant_types.setter
|
93
|
+
def allowed_grant_types(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
94
|
+
pulumi.set(self, "allowed_grant_types", value)
|
95
|
+
|
96
|
+
@property
|
97
|
+
@pulumi.getter(name="allowedRedirectUris")
|
98
|
+
def allowed_redirect_uris(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
99
|
+
"""
|
100
|
+
Required. The list of redirect uris that is allowed to redirect back
|
101
|
+
when authorization process is completed.
|
102
|
+
"""
|
103
|
+
return pulumi.get(self, "allowed_redirect_uris")
|
104
|
+
|
105
|
+
@allowed_redirect_uris.setter
|
106
|
+
def allowed_redirect_uris(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
107
|
+
pulumi.set(self, "allowed_redirect_uris", value)
|
108
|
+
|
109
|
+
@property
|
110
|
+
@pulumi.getter(name="allowedScopes")
|
111
|
+
def allowed_scopes(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
112
|
+
"""
|
113
|
+
Required. The list of scopes that the OauthClient is allowed to request during
|
114
|
+
OAuth flows.
|
115
|
+
The following scopes are supported:
|
116
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
117
|
+
and delete your Google Cloud data and see the email address for your Google
|
118
|
+
Account.
|
119
|
+
"""
|
120
|
+
return pulumi.get(self, "allowed_scopes")
|
121
|
+
|
122
|
+
@allowed_scopes.setter
|
123
|
+
def allowed_scopes(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
124
|
+
pulumi.set(self, "allowed_scopes", value)
|
125
|
+
|
126
|
+
@property
|
127
|
+
@pulumi.getter
|
128
|
+
def location(self) -> pulumi.Input[str]:
|
129
|
+
"""
|
130
|
+
Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
131
|
+
"""
|
132
|
+
return pulumi.get(self, "location")
|
133
|
+
|
134
|
+
@location.setter
|
135
|
+
def location(self, value: pulumi.Input[str]):
|
136
|
+
pulumi.set(self, "location", value)
|
137
|
+
|
138
|
+
@property
|
139
|
+
@pulumi.getter(name="oauthClientId")
|
140
|
+
def oauth_client_id(self) -> pulumi.Input[str]:
|
141
|
+
"""
|
142
|
+
Required. The ID to use for the OauthClient, which becomes the final component of
|
143
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
144
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
145
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
146
|
+
not be specified.
|
147
|
+
|
148
|
+
|
149
|
+
- - -
|
150
|
+
"""
|
151
|
+
return pulumi.get(self, "oauth_client_id")
|
152
|
+
|
153
|
+
@oauth_client_id.setter
|
154
|
+
def oauth_client_id(self, value: pulumi.Input[str]):
|
155
|
+
pulumi.set(self, "oauth_client_id", value)
|
156
|
+
|
157
|
+
@property
|
158
|
+
@pulumi.getter(name="clientType")
|
159
|
+
def client_type(self) -> Optional[pulumi.Input[str]]:
|
160
|
+
"""
|
161
|
+
Immutable. The type of OauthClient. Either public or private.
|
162
|
+
For private clients, the client secret can be managed using the dedicated
|
163
|
+
OauthClientCredential resource.
|
164
|
+
Possible values:
|
165
|
+
CLIENT_TYPE_UNSPECIFIED
|
166
|
+
PUBLIC_CLIENT
|
167
|
+
CONFIDENTIAL_CLIENT
|
168
|
+
"""
|
169
|
+
return pulumi.get(self, "client_type")
|
170
|
+
|
171
|
+
@client_type.setter
|
172
|
+
def client_type(self, value: Optional[pulumi.Input[str]]):
|
173
|
+
pulumi.set(self, "client_type", value)
|
174
|
+
|
175
|
+
@property
|
176
|
+
@pulumi.getter
|
177
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
178
|
+
"""
|
179
|
+
A user-specified description of the OauthClient.
|
180
|
+
Cannot exceed 256 characters.
|
181
|
+
"""
|
182
|
+
return pulumi.get(self, "description")
|
183
|
+
|
184
|
+
@description.setter
|
185
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
186
|
+
pulumi.set(self, "description", value)
|
187
|
+
|
188
|
+
@property
|
189
|
+
@pulumi.getter
|
190
|
+
def disabled(self) -> Optional[pulumi.Input[bool]]:
|
191
|
+
"""
|
192
|
+
Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
193
|
+
client.
|
194
|
+
"""
|
195
|
+
return pulumi.get(self, "disabled")
|
196
|
+
|
197
|
+
@disabled.setter
|
198
|
+
def disabled(self, value: Optional[pulumi.Input[bool]]):
|
199
|
+
pulumi.set(self, "disabled", value)
|
200
|
+
|
201
|
+
@property
|
202
|
+
@pulumi.getter(name="displayName")
|
203
|
+
def display_name(self) -> Optional[pulumi.Input[str]]:
|
204
|
+
"""
|
205
|
+
A user-specified display name of the OauthClient.
|
206
|
+
Cannot exceed 32 characters.
|
207
|
+
"""
|
208
|
+
return pulumi.get(self, "display_name")
|
209
|
+
|
210
|
+
@display_name.setter
|
211
|
+
def display_name(self, value: Optional[pulumi.Input[str]]):
|
212
|
+
pulumi.set(self, "display_name", value)
|
213
|
+
|
214
|
+
@property
|
215
|
+
@pulumi.getter
|
216
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
217
|
+
"""
|
218
|
+
The ID of the project in which the resource belongs.
|
219
|
+
If it is not provided, the provider project is used.
|
220
|
+
"""
|
221
|
+
return pulumi.get(self, "project")
|
222
|
+
|
223
|
+
@project.setter
|
224
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
225
|
+
pulumi.set(self, "project", value)
|
226
|
+
|
227
|
+
|
228
|
+
@pulumi.input_type
|
229
|
+
class _OauthClientState:
|
230
|
+
def __init__(__self__, *,
|
231
|
+
allowed_grant_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
232
|
+
allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
233
|
+
allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
234
|
+
client_id: Optional[pulumi.Input[str]] = None,
|
235
|
+
client_type: Optional[pulumi.Input[str]] = None,
|
236
|
+
description: Optional[pulumi.Input[str]] = None,
|
237
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
238
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
239
|
+
expire_time: Optional[pulumi.Input[str]] = None,
|
240
|
+
location: Optional[pulumi.Input[str]] = None,
|
241
|
+
name: Optional[pulumi.Input[str]] = None,
|
242
|
+
oauth_client_id: Optional[pulumi.Input[str]] = None,
|
243
|
+
project: Optional[pulumi.Input[str]] = None,
|
244
|
+
state: Optional[pulumi.Input[str]] = None):
|
245
|
+
"""
|
246
|
+
Input properties used for looking up and filtering OauthClient resources.
|
247
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_grant_types: Required. The list of OAuth grant types is allowed for the OauthClient.
|
248
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_redirect_uris: Required. The list of redirect uris that is allowed to redirect back
|
249
|
+
when authorization process is completed.
|
250
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_scopes: Required. The list of scopes that the OauthClient is allowed to request during
|
251
|
+
OAuth flows.
|
252
|
+
The following scopes are supported:
|
253
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
254
|
+
and delete your Google Cloud data and see the email address for your Google
|
255
|
+
Account.
|
256
|
+
:param pulumi.Input[str] client_id: Output only. The system-generated OauthClient id.
|
257
|
+
:param pulumi.Input[str] client_type: Immutable. The type of OauthClient. Either public or private.
|
258
|
+
For private clients, the client secret can be managed using the dedicated
|
259
|
+
OauthClientCredential resource.
|
260
|
+
Possible values:
|
261
|
+
CLIENT_TYPE_UNSPECIFIED
|
262
|
+
PUBLIC_CLIENT
|
263
|
+
CONFIDENTIAL_CLIENT
|
264
|
+
:param pulumi.Input[str] description: A user-specified description of the OauthClient.
|
265
|
+
Cannot exceed 256 characters.
|
266
|
+
:param pulumi.Input[bool] disabled: Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
267
|
+
client.
|
268
|
+
:param pulumi.Input[str] display_name: A user-specified display name of the OauthClient.
|
269
|
+
Cannot exceed 32 characters.
|
270
|
+
:param pulumi.Input[str] expire_time: Time after which the OauthClient will be permanently purged and cannot
|
271
|
+
be recovered.
|
272
|
+
:param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
273
|
+
:param pulumi.Input[str] name: Immutable. Identifier. The resource name of the OauthClient.
|
274
|
+
Format:`projects/{project}/locations/{location}/oauthClients/{oauth_client}`.
|
275
|
+
:param pulumi.Input[str] oauth_client_id: Required. The ID to use for the OauthClient, which becomes the final component of
|
276
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
277
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
278
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
279
|
+
not be specified.
|
280
|
+
|
281
|
+
|
282
|
+
- - -
|
283
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
284
|
+
If it is not provided, the provider project is used.
|
285
|
+
:param pulumi.Input[str] state: The state of the OauthClient.
|
286
|
+
Possible values:
|
287
|
+
STATE_UNSPECIFIED
|
288
|
+
ACTIVE
|
289
|
+
DELETED
|
290
|
+
"""
|
291
|
+
if allowed_grant_types is not None:
|
292
|
+
pulumi.set(__self__, "allowed_grant_types", allowed_grant_types)
|
293
|
+
if allowed_redirect_uris is not None:
|
294
|
+
pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
|
295
|
+
if allowed_scopes is not None:
|
296
|
+
pulumi.set(__self__, "allowed_scopes", allowed_scopes)
|
297
|
+
if client_id is not None:
|
298
|
+
pulumi.set(__self__, "client_id", client_id)
|
299
|
+
if client_type is not None:
|
300
|
+
pulumi.set(__self__, "client_type", client_type)
|
301
|
+
if description is not None:
|
302
|
+
pulumi.set(__self__, "description", description)
|
303
|
+
if disabled is not None:
|
304
|
+
pulumi.set(__self__, "disabled", disabled)
|
305
|
+
if display_name is not None:
|
306
|
+
pulumi.set(__self__, "display_name", display_name)
|
307
|
+
if expire_time is not None:
|
308
|
+
pulumi.set(__self__, "expire_time", expire_time)
|
309
|
+
if location is not None:
|
310
|
+
pulumi.set(__self__, "location", location)
|
311
|
+
if name is not None:
|
312
|
+
pulumi.set(__self__, "name", name)
|
313
|
+
if oauth_client_id is not None:
|
314
|
+
pulumi.set(__self__, "oauth_client_id", oauth_client_id)
|
315
|
+
if project is not None:
|
316
|
+
pulumi.set(__self__, "project", project)
|
317
|
+
if state is not None:
|
318
|
+
pulumi.set(__self__, "state", state)
|
319
|
+
|
320
|
+
@property
|
321
|
+
@pulumi.getter(name="allowedGrantTypes")
|
322
|
+
def allowed_grant_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
323
|
+
"""
|
324
|
+
Required. The list of OAuth grant types is allowed for the OauthClient.
|
325
|
+
"""
|
326
|
+
return pulumi.get(self, "allowed_grant_types")
|
327
|
+
|
328
|
+
@allowed_grant_types.setter
|
329
|
+
def allowed_grant_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
330
|
+
pulumi.set(self, "allowed_grant_types", value)
|
331
|
+
|
332
|
+
@property
|
333
|
+
@pulumi.getter(name="allowedRedirectUris")
|
334
|
+
def allowed_redirect_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
335
|
+
"""
|
336
|
+
Required. The list of redirect uris that is allowed to redirect back
|
337
|
+
when authorization process is completed.
|
338
|
+
"""
|
339
|
+
return pulumi.get(self, "allowed_redirect_uris")
|
340
|
+
|
341
|
+
@allowed_redirect_uris.setter
|
342
|
+
def allowed_redirect_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
343
|
+
pulumi.set(self, "allowed_redirect_uris", value)
|
344
|
+
|
345
|
+
@property
|
346
|
+
@pulumi.getter(name="allowedScopes")
|
347
|
+
def allowed_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
348
|
+
"""
|
349
|
+
Required. The list of scopes that the OauthClient is allowed to request during
|
350
|
+
OAuth flows.
|
351
|
+
The following scopes are supported:
|
352
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
353
|
+
and delete your Google Cloud data and see the email address for your Google
|
354
|
+
Account.
|
355
|
+
"""
|
356
|
+
return pulumi.get(self, "allowed_scopes")
|
357
|
+
|
358
|
+
@allowed_scopes.setter
|
359
|
+
def allowed_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
360
|
+
pulumi.set(self, "allowed_scopes", value)
|
361
|
+
|
362
|
+
@property
|
363
|
+
@pulumi.getter(name="clientId")
|
364
|
+
def client_id(self) -> Optional[pulumi.Input[str]]:
|
365
|
+
"""
|
366
|
+
Output only. The system-generated OauthClient id.
|
367
|
+
"""
|
368
|
+
return pulumi.get(self, "client_id")
|
369
|
+
|
370
|
+
@client_id.setter
|
371
|
+
def client_id(self, value: Optional[pulumi.Input[str]]):
|
372
|
+
pulumi.set(self, "client_id", value)
|
373
|
+
|
374
|
+
@property
|
375
|
+
@pulumi.getter(name="clientType")
|
376
|
+
def client_type(self) -> Optional[pulumi.Input[str]]:
|
377
|
+
"""
|
378
|
+
Immutable. The type of OauthClient. Either public or private.
|
379
|
+
For private clients, the client secret can be managed using the dedicated
|
380
|
+
OauthClientCredential resource.
|
381
|
+
Possible values:
|
382
|
+
CLIENT_TYPE_UNSPECIFIED
|
383
|
+
PUBLIC_CLIENT
|
384
|
+
CONFIDENTIAL_CLIENT
|
385
|
+
"""
|
386
|
+
return pulumi.get(self, "client_type")
|
387
|
+
|
388
|
+
@client_type.setter
|
389
|
+
def client_type(self, value: Optional[pulumi.Input[str]]):
|
390
|
+
pulumi.set(self, "client_type", value)
|
391
|
+
|
392
|
+
@property
|
393
|
+
@pulumi.getter
|
394
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
395
|
+
"""
|
396
|
+
A user-specified description of the OauthClient.
|
397
|
+
Cannot exceed 256 characters.
|
398
|
+
"""
|
399
|
+
return pulumi.get(self, "description")
|
400
|
+
|
401
|
+
@description.setter
|
402
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
403
|
+
pulumi.set(self, "description", value)
|
404
|
+
|
405
|
+
@property
|
406
|
+
@pulumi.getter
|
407
|
+
def disabled(self) -> Optional[pulumi.Input[bool]]:
|
408
|
+
"""
|
409
|
+
Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
410
|
+
client.
|
411
|
+
"""
|
412
|
+
return pulumi.get(self, "disabled")
|
413
|
+
|
414
|
+
@disabled.setter
|
415
|
+
def disabled(self, value: Optional[pulumi.Input[bool]]):
|
416
|
+
pulumi.set(self, "disabled", value)
|
417
|
+
|
418
|
+
@property
|
419
|
+
@pulumi.getter(name="displayName")
|
420
|
+
def display_name(self) -> Optional[pulumi.Input[str]]:
|
421
|
+
"""
|
422
|
+
A user-specified display name of the OauthClient.
|
423
|
+
Cannot exceed 32 characters.
|
424
|
+
"""
|
425
|
+
return pulumi.get(self, "display_name")
|
426
|
+
|
427
|
+
@display_name.setter
|
428
|
+
def display_name(self, value: Optional[pulumi.Input[str]]):
|
429
|
+
pulumi.set(self, "display_name", value)
|
430
|
+
|
431
|
+
@property
|
432
|
+
@pulumi.getter(name="expireTime")
|
433
|
+
def expire_time(self) -> Optional[pulumi.Input[str]]:
|
434
|
+
"""
|
435
|
+
Time after which the OauthClient will be permanently purged and cannot
|
436
|
+
be recovered.
|
437
|
+
"""
|
438
|
+
return pulumi.get(self, "expire_time")
|
439
|
+
|
440
|
+
@expire_time.setter
|
441
|
+
def expire_time(self, value: Optional[pulumi.Input[str]]):
|
442
|
+
pulumi.set(self, "expire_time", value)
|
443
|
+
|
444
|
+
@property
|
445
|
+
@pulumi.getter
|
446
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
447
|
+
"""
|
448
|
+
Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
449
|
+
"""
|
450
|
+
return pulumi.get(self, "location")
|
451
|
+
|
452
|
+
@location.setter
|
453
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
454
|
+
pulumi.set(self, "location", value)
|
455
|
+
|
456
|
+
@property
|
457
|
+
@pulumi.getter
|
458
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
459
|
+
"""
|
460
|
+
Immutable. Identifier. The resource name of the OauthClient.
|
461
|
+
Format:`projects/{project}/locations/{location}/oauthClients/{oauth_client}`.
|
462
|
+
"""
|
463
|
+
return pulumi.get(self, "name")
|
464
|
+
|
465
|
+
@name.setter
|
466
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
467
|
+
pulumi.set(self, "name", value)
|
468
|
+
|
469
|
+
@property
|
470
|
+
@pulumi.getter(name="oauthClientId")
|
471
|
+
def oauth_client_id(self) -> Optional[pulumi.Input[str]]:
|
472
|
+
"""
|
473
|
+
Required. The ID to use for the OauthClient, which becomes the final component of
|
474
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
475
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
476
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
477
|
+
not be specified.
|
478
|
+
|
479
|
+
|
480
|
+
- - -
|
481
|
+
"""
|
482
|
+
return pulumi.get(self, "oauth_client_id")
|
483
|
+
|
484
|
+
@oauth_client_id.setter
|
485
|
+
def oauth_client_id(self, value: Optional[pulumi.Input[str]]):
|
486
|
+
pulumi.set(self, "oauth_client_id", value)
|
487
|
+
|
488
|
+
@property
|
489
|
+
@pulumi.getter
|
490
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
491
|
+
"""
|
492
|
+
The ID of the project in which the resource belongs.
|
493
|
+
If it is not provided, the provider project is used.
|
494
|
+
"""
|
495
|
+
return pulumi.get(self, "project")
|
496
|
+
|
497
|
+
@project.setter
|
498
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
499
|
+
pulumi.set(self, "project", value)
|
500
|
+
|
501
|
+
@property
|
502
|
+
@pulumi.getter
|
503
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
504
|
+
"""
|
505
|
+
The state of the OauthClient.
|
506
|
+
Possible values:
|
507
|
+
STATE_UNSPECIFIED
|
508
|
+
ACTIVE
|
509
|
+
DELETED
|
510
|
+
"""
|
511
|
+
return pulumi.get(self, "state")
|
512
|
+
|
513
|
+
@state.setter
|
514
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
515
|
+
pulumi.set(self, "state", value)
|
516
|
+
|
517
|
+
|
518
|
+
class OauthClient(pulumi.CustomResource):
|
519
|
+
@overload
|
520
|
+
def __init__(__self__,
|
521
|
+
resource_name: str,
|
522
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
523
|
+
allowed_grant_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
524
|
+
allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
525
|
+
allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
526
|
+
client_type: Optional[pulumi.Input[str]] = None,
|
527
|
+
description: Optional[pulumi.Input[str]] = None,
|
528
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
529
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
530
|
+
location: Optional[pulumi.Input[str]] = None,
|
531
|
+
oauth_client_id: Optional[pulumi.Input[str]] = None,
|
532
|
+
project: Optional[pulumi.Input[str]] = None,
|
533
|
+
__props__=None):
|
534
|
+
"""
|
535
|
+
Represents an OAuth Client. Used to access Google Cloud resources on behalf of a
|
536
|
+
Workforce Identity Federation user by using OAuth 2.0 Protocol to obtain an access
|
537
|
+
token from Google Cloud.
|
538
|
+
|
539
|
+
To get more information about OauthClient, see:
|
540
|
+
|
541
|
+
* [API documentation](https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.oauthClients)
|
542
|
+
* How-to Guides
|
543
|
+
* [Managing OAuth clients](https://cloud.google.com/iam/docs/workforce-manage-oauth-app#manage-clients)
|
544
|
+
|
545
|
+
## Example Usage
|
546
|
+
|
547
|
+
### Iam Oauth Client Full
|
548
|
+
|
549
|
+
```python
|
550
|
+
import pulumi
|
551
|
+
import pulumi_gcp as gcp
|
552
|
+
|
553
|
+
example = gcp.iam.OauthClient("example",
|
554
|
+
oauth_client_id="example-client-id",
|
555
|
+
display_name="Display Name of OAuth client",
|
556
|
+
description="A sample OAuth client",
|
557
|
+
location="global",
|
558
|
+
disabled=False,
|
559
|
+
allowed_grant_types=["AUTHORIZATION_CODE_GRANT"],
|
560
|
+
allowed_redirect_uris=["https://www.example.com"],
|
561
|
+
allowed_scopes=["https://www.googleapis.com/auth/cloud-platform"],
|
562
|
+
client_type="CONFIDENTIAL_CLIENT")
|
563
|
+
```
|
564
|
+
|
565
|
+
## Import
|
566
|
+
|
567
|
+
OauthClient can be imported using any of these accepted formats:
|
568
|
+
|
569
|
+
* `projects/{{project}}/locations/{{location}}/oauthClients/{{oauth_client_id}}`
|
570
|
+
|
571
|
+
* `{{project}}/{{location}}/{{oauth_client_id}}`
|
572
|
+
|
573
|
+
* `{{location}}/{{oauth_client_id}}`
|
574
|
+
|
575
|
+
When using the `pulumi import` command, OauthClient can be imported using one of the formats above. For example:
|
576
|
+
|
577
|
+
```sh
|
578
|
+
$ pulumi import gcp:iam/oauthClient:OauthClient default projects/{{project}}/locations/{{location}}/oauthClients/{{oauth_client_id}}
|
579
|
+
```
|
580
|
+
|
581
|
+
```sh
|
582
|
+
$ pulumi import gcp:iam/oauthClient:OauthClient default {{project}}/{{location}}/{{oauth_client_id}}
|
583
|
+
```
|
584
|
+
|
585
|
+
```sh
|
586
|
+
$ pulumi import gcp:iam/oauthClient:OauthClient default {{location}}/{{oauth_client_id}}
|
587
|
+
```
|
588
|
+
|
589
|
+
:param str resource_name: The name of the resource.
|
590
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
591
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_grant_types: Required. The list of OAuth grant types is allowed for the OauthClient.
|
592
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_redirect_uris: Required. The list of redirect uris that is allowed to redirect back
|
593
|
+
when authorization process is completed.
|
594
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_scopes: Required. The list of scopes that the OauthClient is allowed to request during
|
595
|
+
OAuth flows.
|
596
|
+
The following scopes are supported:
|
597
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
598
|
+
and delete your Google Cloud data and see the email address for your Google
|
599
|
+
Account.
|
600
|
+
:param pulumi.Input[str] client_type: Immutable. The type of OauthClient. Either public or private.
|
601
|
+
For private clients, the client secret can be managed using the dedicated
|
602
|
+
OauthClientCredential resource.
|
603
|
+
Possible values:
|
604
|
+
CLIENT_TYPE_UNSPECIFIED
|
605
|
+
PUBLIC_CLIENT
|
606
|
+
CONFIDENTIAL_CLIENT
|
607
|
+
:param pulumi.Input[str] description: A user-specified description of the OauthClient.
|
608
|
+
Cannot exceed 256 characters.
|
609
|
+
:param pulumi.Input[bool] disabled: Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
610
|
+
client.
|
611
|
+
:param pulumi.Input[str] display_name: A user-specified display name of the OauthClient.
|
612
|
+
Cannot exceed 32 characters.
|
613
|
+
:param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
614
|
+
:param pulumi.Input[str] oauth_client_id: Required. The ID to use for the OauthClient, which becomes the final component of
|
615
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
616
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
617
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
618
|
+
not be specified.
|
619
|
+
|
620
|
+
|
621
|
+
- - -
|
622
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
623
|
+
If it is not provided, the provider project is used.
|
624
|
+
"""
|
625
|
+
...
|
626
|
+
@overload
|
627
|
+
def __init__(__self__,
|
628
|
+
resource_name: str,
|
629
|
+
args: OauthClientArgs,
|
630
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
631
|
+
"""
|
632
|
+
Represents an OAuth Client. Used to access Google Cloud resources on behalf of a
|
633
|
+
Workforce Identity Federation user by using OAuth 2.0 Protocol to obtain an access
|
634
|
+
token from Google Cloud.
|
635
|
+
|
636
|
+
To get more information about OauthClient, see:
|
637
|
+
|
638
|
+
* [API documentation](https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.oauthClients)
|
639
|
+
* How-to Guides
|
640
|
+
* [Managing OAuth clients](https://cloud.google.com/iam/docs/workforce-manage-oauth-app#manage-clients)
|
641
|
+
|
642
|
+
## Example Usage
|
643
|
+
|
644
|
+
### Iam Oauth Client Full
|
645
|
+
|
646
|
+
```python
|
647
|
+
import pulumi
|
648
|
+
import pulumi_gcp as gcp
|
649
|
+
|
650
|
+
example = gcp.iam.OauthClient("example",
|
651
|
+
oauth_client_id="example-client-id",
|
652
|
+
display_name="Display Name of OAuth client",
|
653
|
+
description="A sample OAuth client",
|
654
|
+
location="global",
|
655
|
+
disabled=False,
|
656
|
+
allowed_grant_types=["AUTHORIZATION_CODE_GRANT"],
|
657
|
+
allowed_redirect_uris=["https://www.example.com"],
|
658
|
+
allowed_scopes=["https://www.googleapis.com/auth/cloud-platform"],
|
659
|
+
client_type="CONFIDENTIAL_CLIENT")
|
660
|
+
```
|
661
|
+
|
662
|
+
## Import
|
663
|
+
|
664
|
+
OauthClient can be imported using any of these accepted formats:
|
665
|
+
|
666
|
+
* `projects/{{project}}/locations/{{location}}/oauthClients/{{oauth_client_id}}`
|
667
|
+
|
668
|
+
* `{{project}}/{{location}}/{{oauth_client_id}}`
|
669
|
+
|
670
|
+
* `{{location}}/{{oauth_client_id}}`
|
671
|
+
|
672
|
+
When using the `pulumi import` command, OauthClient can be imported using one of the formats above. For example:
|
673
|
+
|
674
|
+
```sh
|
675
|
+
$ pulumi import gcp:iam/oauthClient:OauthClient default projects/{{project}}/locations/{{location}}/oauthClients/{{oauth_client_id}}
|
676
|
+
```
|
677
|
+
|
678
|
+
```sh
|
679
|
+
$ pulumi import gcp:iam/oauthClient:OauthClient default {{project}}/{{location}}/{{oauth_client_id}}
|
680
|
+
```
|
681
|
+
|
682
|
+
```sh
|
683
|
+
$ pulumi import gcp:iam/oauthClient:OauthClient default {{location}}/{{oauth_client_id}}
|
684
|
+
```
|
685
|
+
|
686
|
+
:param str resource_name: The name of the resource.
|
687
|
+
:param OauthClientArgs args: The arguments to use to populate this resource's properties.
|
688
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
689
|
+
"""
|
690
|
+
...
|
691
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
692
|
+
resource_args, opts = _utilities.get_resource_args_opts(OauthClientArgs, pulumi.ResourceOptions, *args, **kwargs)
|
693
|
+
if resource_args is not None:
|
694
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
695
|
+
else:
|
696
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
697
|
+
|
698
|
+
def _internal_init(__self__,
|
699
|
+
resource_name: str,
|
700
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
701
|
+
allowed_grant_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
702
|
+
allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
703
|
+
allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
704
|
+
client_type: Optional[pulumi.Input[str]] = None,
|
705
|
+
description: Optional[pulumi.Input[str]] = None,
|
706
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
707
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
708
|
+
location: Optional[pulumi.Input[str]] = None,
|
709
|
+
oauth_client_id: Optional[pulumi.Input[str]] = None,
|
710
|
+
project: Optional[pulumi.Input[str]] = None,
|
711
|
+
__props__=None):
|
712
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
713
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
714
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
715
|
+
if opts.id is None:
|
716
|
+
if __props__ is not None:
|
717
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
718
|
+
__props__ = OauthClientArgs.__new__(OauthClientArgs)
|
719
|
+
|
720
|
+
if allowed_grant_types is None and not opts.urn:
|
721
|
+
raise TypeError("Missing required property 'allowed_grant_types'")
|
722
|
+
__props__.__dict__["allowed_grant_types"] = allowed_grant_types
|
723
|
+
if allowed_redirect_uris is None and not opts.urn:
|
724
|
+
raise TypeError("Missing required property 'allowed_redirect_uris'")
|
725
|
+
__props__.__dict__["allowed_redirect_uris"] = allowed_redirect_uris
|
726
|
+
if allowed_scopes is None and not opts.urn:
|
727
|
+
raise TypeError("Missing required property 'allowed_scopes'")
|
728
|
+
__props__.__dict__["allowed_scopes"] = allowed_scopes
|
729
|
+
__props__.__dict__["client_type"] = client_type
|
730
|
+
__props__.__dict__["description"] = description
|
731
|
+
__props__.__dict__["disabled"] = disabled
|
732
|
+
__props__.__dict__["display_name"] = display_name
|
733
|
+
if location is None and not opts.urn:
|
734
|
+
raise TypeError("Missing required property 'location'")
|
735
|
+
__props__.__dict__["location"] = location
|
736
|
+
if oauth_client_id is None and not opts.urn:
|
737
|
+
raise TypeError("Missing required property 'oauth_client_id'")
|
738
|
+
__props__.__dict__["oauth_client_id"] = oauth_client_id
|
739
|
+
__props__.__dict__["project"] = project
|
740
|
+
__props__.__dict__["client_id"] = None
|
741
|
+
__props__.__dict__["expire_time"] = None
|
742
|
+
__props__.__dict__["name"] = None
|
743
|
+
__props__.__dict__["state"] = None
|
744
|
+
super(OauthClient, __self__).__init__(
|
745
|
+
'gcp:iam/oauthClient:OauthClient',
|
746
|
+
resource_name,
|
747
|
+
__props__,
|
748
|
+
opts)
|
749
|
+
|
750
|
+
@staticmethod
|
751
|
+
def get(resource_name: str,
|
752
|
+
id: pulumi.Input[str],
|
753
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
754
|
+
allowed_grant_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
755
|
+
allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
756
|
+
allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
757
|
+
client_id: Optional[pulumi.Input[str]] = None,
|
758
|
+
client_type: Optional[pulumi.Input[str]] = None,
|
759
|
+
description: Optional[pulumi.Input[str]] = None,
|
760
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
761
|
+
display_name: Optional[pulumi.Input[str]] = None,
|
762
|
+
expire_time: Optional[pulumi.Input[str]] = None,
|
763
|
+
location: Optional[pulumi.Input[str]] = None,
|
764
|
+
name: Optional[pulumi.Input[str]] = None,
|
765
|
+
oauth_client_id: Optional[pulumi.Input[str]] = None,
|
766
|
+
project: Optional[pulumi.Input[str]] = None,
|
767
|
+
state: Optional[pulumi.Input[str]] = None) -> 'OauthClient':
|
768
|
+
"""
|
769
|
+
Get an existing OauthClient resource's state with the given name, id, and optional extra
|
770
|
+
properties used to qualify the lookup.
|
771
|
+
|
772
|
+
:param str resource_name: The unique name of the resulting resource.
|
773
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
774
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
775
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_grant_types: Required. The list of OAuth grant types is allowed for the OauthClient.
|
776
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_redirect_uris: Required. The list of redirect uris that is allowed to redirect back
|
777
|
+
when authorization process is completed.
|
778
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_scopes: Required. The list of scopes that the OauthClient is allowed to request during
|
779
|
+
OAuth flows.
|
780
|
+
The following scopes are supported:
|
781
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
782
|
+
and delete your Google Cloud data and see the email address for your Google
|
783
|
+
Account.
|
784
|
+
:param pulumi.Input[str] client_id: Output only. The system-generated OauthClient id.
|
785
|
+
:param pulumi.Input[str] client_type: Immutable. The type of OauthClient. Either public or private.
|
786
|
+
For private clients, the client secret can be managed using the dedicated
|
787
|
+
OauthClientCredential resource.
|
788
|
+
Possible values:
|
789
|
+
CLIENT_TYPE_UNSPECIFIED
|
790
|
+
PUBLIC_CLIENT
|
791
|
+
CONFIDENTIAL_CLIENT
|
792
|
+
:param pulumi.Input[str] description: A user-specified description of the OauthClient.
|
793
|
+
Cannot exceed 256 characters.
|
794
|
+
:param pulumi.Input[bool] disabled: Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
795
|
+
client.
|
796
|
+
:param pulumi.Input[str] display_name: A user-specified display name of the OauthClient.
|
797
|
+
Cannot exceed 32 characters.
|
798
|
+
:param pulumi.Input[str] expire_time: Time after which the OauthClient will be permanently purged and cannot
|
799
|
+
be recovered.
|
800
|
+
:param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
801
|
+
:param pulumi.Input[str] name: Immutable. Identifier. The resource name of the OauthClient.
|
802
|
+
Format:`projects/{project}/locations/{location}/oauthClients/{oauth_client}`.
|
803
|
+
:param pulumi.Input[str] oauth_client_id: Required. The ID to use for the OauthClient, which becomes the final component of
|
804
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
805
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
806
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
807
|
+
not be specified.
|
808
|
+
|
809
|
+
|
810
|
+
- - -
|
811
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
812
|
+
If it is not provided, the provider project is used.
|
813
|
+
:param pulumi.Input[str] state: The state of the OauthClient.
|
814
|
+
Possible values:
|
815
|
+
STATE_UNSPECIFIED
|
816
|
+
ACTIVE
|
817
|
+
DELETED
|
818
|
+
"""
|
819
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
820
|
+
|
821
|
+
__props__ = _OauthClientState.__new__(_OauthClientState)
|
822
|
+
|
823
|
+
__props__.__dict__["allowed_grant_types"] = allowed_grant_types
|
824
|
+
__props__.__dict__["allowed_redirect_uris"] = allowed_redirect_uris
|
825
|
+
__props__.__dict__["allowed_scopes"] = allowed_scopes
|
826
|
+
__props__.__dict__["client_id"] = client_id
|
827
|
+
__props__.__dict__["client_type"] = client_type
|
828
|
+
__props__.__dict__["description"] = description
|
829
|
+
__props__.__dict__["disabled"] = disabled
|
830
|
+
__props__.__dict__["display_name"] = display_name
|
831
|
+
__props__.__dict__["expire_time"] = expire_time
|
832
|
+
__props__.__dict__["location"] = location
|
833
|
+
__props__.__dict__["name"] = name
|
834
|
+
__props__.__dict__["oauth_client_id"] = oauth_client_id
|
835
|
+
__props__.__dict__["project"] = project
|
836
|
+
__props__.__dict__["state"] = state
|
837
|
+
return OauthClient(resource_name, opts=opts, __props__=__props__)
|
838
|
+
|
839
|
+
@property
|
840
|
+
@pulumi.getter(name="allowedGrantTypes")
|
841
|
+
def allowed_grant_types(self) -> pulumi.Output[Sequence[str]]:
|
842
|
+
"""
|
843
|
+
Required. The list of OAuth grant types is allowed for the OauthClient.
|
844
|
+
"""
|
845
|
+
return pulumi.get(self, "allowed_grant_types")
|
846
|
+
|
847
|
+
@property
|
848
|
+
@pulumi.getter(name="allowedRedirectUris")
|
849
|
+
def allowed_redirect_uris(self) -> pulumi.Output[Sequence[str]]:
|
850
|
+
"""
|
851
|
+
Required. The list of redirect uris that is allowed to redirect back
|
852
|
+
when authorization process is completed.
|
853
|
+
"""
|
854
|
+
return pulumi.get(self, "allowed_redirect_uris")
|
855
|
+
|
856
|
+
@property
|
857
|
+
@pulumi.getter(name="allowedScopes")
|
858
|
+
def allowed_scopes(self) -> pulumi.Output[Sequence[str]]:
|
859
|
+
"""
|
860
|
+
Required. The list of scopes that the OauthClient is allowed to request during
|
861
|
+
OAuth flows.
|
862
|
+
The following scopes are supported:
|
863
|
+
* `https://www.googleapis.com/auth/cloud-platform`: See, edit, configure,
|
864
|
+
and delete your Google Cloud data and see the email address for your Google
|
865
|
+
Account.
|
866
|
+
"""
|
867
|
+
return pulumi.get(self, "allowed_scopes")
|
868
|
+
|
869
|
+
@property
|
870
|
+
@pulumi.getter(name="clientId")
|
871
|
+
def client_id(self) -> pulumi.Output[str]:
|
872
|
+
"""
|
873
|
+
Output only. The system-generated OauthClient id.
|
874
|
+
"""
|
875
|
+
return pulumi.get(self, "client_id")
|
876
|
+
|
877
|
+
@property
|
878
|
+
@pulumi.getter(name="clientType")
|
879
|
+
def client_type(self) -> pulumi.Output[Optional[str]]:
|
880
|
+
"""
|
881
|
+
Immutable. The type of OauthClient. Either public or private.
|
882
|
+
For private clients, the client secret can be managed using the dedicated
|
883
|
+
OauthClientCredential resource.
|
884
|
+
Possible values:
|
885
|
+
CLIENT_TYPE_UNSPECIFIED
|
886
|
+
PUBLIC_CLIENT
|
887
|
+
CONFIDENTIAL_CLIENT
|
888
|
+
"""
|
889
|
+
return pulumi.get(self, "client_type")
|
890
|
+
|
891
|
+
@property
|
892
|
+
@pulumi.getter
|
893
|
+
def description(self) -> pulumi.Output[Optional[str]]:
|
894
|
+
"""
|
895
|
+
A user-specified description of the OauthClient.
|
896
|
+
Cannot exceed 256 characters.
|
897
|
+
"""
|
898
|
+
return pulumi.get(self, "description")
|
899
|
+
|
900
|
+
@property
|
901
|
+
@pulumi.getter
|
902
|
+
def disabled(self) -> pulumi.Output[Optional[bool]]:
|
903
|
+
"""
|
904
|
+
Whether the OauthClient is disabled. You cannot use a disabled OAuth
|
905
|
+
client.
|
906
|
+
"""
|
907
|
+
return pulumi.get(self, "disabled")
|
908
|
+
|
909
|
+
@property
|
910
|
+
@pulumi.getter(name="displayName")
|
911
|
+
def display_name(self) -> pulumi.Output[Optional[str]]:
|
912
|
+
"""
|
913
|
+
A user-specified display name of the OauthClient.
|
914
|
+
Cannot exceed 32 characters.
|
915
|
+
"""
|
916
|
+
return pulumi.get(self, "display_name")
|
917
|
+
|
918
|
+
@property
|
919
|
+
@pulumi.getter(name="expireTime")
|
920
|
+
def expire_time(self) -> pulumi.Output[str]:
|
921
|
+
"""
|
922
|
+
Time after which the OauthClient will be permanently purged and cannot
|
923
|
+
be recovered.
|
924
|
+
"""
|
925
|
+
return pulumi.get(self, "expire_time")
|
926
|
+
|
927
|
+
@property
|
928
|
+
@pulumi.getter
|
929
|
+
def location(self) -> pulumi.Output[str]:
|
930
|
+
"""
|
931
|
+
Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
|
932
|
+
"""
|
933
|
+
return pulumi.get(self, "location")
|
934
|
+
|
935
|
+
@property
|
936
|
+
@pulumi.getter
|
937
|
+
def name(self) -> pulumi.Output[str]:
|
938
|
+
"""
|
939
|
+
Immutable. Identifier. The resource name of the OauthClient.
|
940
|
+
Format:`projects/{project}/locations/{location}/oauthClients/{oauth_client}`.
|
941
|
+
"""
|
942
|
+
return pulumi.get(self, "name")
|
943
|
+
|
944
|
+
@property
|
945
|
+
@pulumi.getter(name="oauthClientId")
|
946
|
+
def oauth_client_id(self) -> pulumi.Output[str]:
|
947
|
+
"""
|
948
|
+
Required. The ID to use for the OauthClient, which becomes the final component of
|
949
|
+
the resource name. This value should be a string of 6 to 63 lowercase
|
950
|
+
letters, digits, or hyphens. It must start with a letter, and cannot have a
|
951
|
+
trailing hyphen. The prefix `gcp-` is reserved for use by Google, and may
|
952
|
+
not be specified.
|
953
|
+
|
954
|
+
|
955
|
+
- - -
|
956
|
+
"""
|
957
|
+
return pulumi.get(self, "oauth_client_id")
|
958
|
+
|
959
|
+
@property
|
960
|
+
@pulumi.getter
|
961
|
+
def project(self) -> pulumi.Output[str]:
|
962
|
+
"""
|
963
|
+
The ID of the project in which the resource belongs.
|
964
|
+
If it is not provided, the provider project is used.
|
965
|
+
"""
|
966
|
+
return pulumi.get(self, "project")
|
967
|
+
|
968
|
+
@property
|
969
|
+
@pulumi.getter
|
970
|
+
def state(self) -> pulumi.Output[str]:
|
971
|
+
"""
|
972
|
+
The state of the OauthClient.
|
973
|
+
Possible values:
|
974
|
+
STATE_UNSPECIFIED
|
975
|
+
ACTIVE
|
976
|
+
DELETED
|
977
|
+
"""
|
978
|
+
return pulumi.get(self, "state")
|
979
|
+
|