google-apis-identitytoolkit_v2 0.1.0
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.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google/apis/identitytoolkit_v2/classes.rb +2498 -0
- data/lib/google/apis/identitytoolkit_v2/gem_version.rb +28 -0
- data/lib/google/apis/identitytoolkit_v2/representations.rb +1133 -0
- data/lib/google/apis/identitytoolkit_v2/service.rb +1646 -0
- data/lib/google/apis/identitytoolkit_v2.rb +40 -0
- data/lib/google-apis-identitytoolkit_v2.rb +15 -0
- metadata +82 -0
|
@@ -0,0 +1,2498 @@
|
|
|
1
|
+
# Copyright 2020 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
require 'date'
|
|
16
|
+
require 'google/apis/core/base_service'
|
|
17
|
+
require 'google/apis/core/json_representation'
|
|
18
|
+
require 'google/apis/core/hashable'
|
|
19
|
+
require 'google/apis/errors'
|
|
20
|
+
|
|
21
|
+
module Google
|
|
22
|
+
module Apis
|
|
23
|
+
module IdentitytoolkitV2
|
|
24
|
+
|
|
25
|
+
# Configuration options related to authenticating an anonymous user.
|
|
26
|
+
class GoogleCloudIdentitytoolkitAdminV2Anonymous
|
|
27
|
+
include Google::Apis::Core::Hashable
|
|
28
|
+
|
|
29
|
+
# Whether anonymous user auth is enabled for the project or not.
|
|
30
|
+
# Corresponds to the JSON property `enabled`
|
|
31
|
+
# @return [Boolean]
|
|
32
|
+
attr_accessor :enabled
|
|
33
|
+
alias_method :enabled?, :enabled
|
|
34
|
+
|
|
35
|
+
def initialize(**args)
|
|
36
|
+
update!(**args)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# Update properties of this object
|
|
40
|
+
def update!(**args)
|
|
41
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Additional config for SignInWithApple.
|
|
46
|
+
class GoogleCloudIdentitytoolkitAdminV2AppleSignInConfig
|
|
47
|
+
include Google::Apis::Core::Hashable
|
|
48
|
+
|
|
49
|
+
# A list of Bundle ID's usable by this project
|
|
50
|
+
# Corresponds to the JSON property `bundleIds`
|
|
51
|
+
# @return [Array<String>]
|
|
52
|
+
attr_accessor :bundle_ids
|
|
53
|
+
|
|
54
|
+
# Additional config for Apple for code flow.
|
|
55
|
+
# Corresponds to the JSON property `codeFlowConfig`
|
|
56
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2CodeFlowConfig]
|
|
57
|
+
attr_accessor :code_flow_config
|
|
58
|
+
|
|
59
|
+
def initialize(**args)
|
|
60
|
+
update!(**args)
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Update properties of this object
|
|
64
|
+
def update!(**args)
|
|
65
|
+
@bundle_ids = args[:bundle_ids] if args.key?(:bundle_ids)
|
|
66
|
+
@code_flow_config = args[:code_flow_config] if args.key?(:code_flow_config)
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
# Configuration related to Blocking Functions.
|
|
71
|
+
class GoogleCloudIdentitytoolkitAdminV2BlockingFunctionsConfig
|
|
72
|
+
include Google::Apis::Core::Hashable
|
|
73
|
+
|
|
74
|
+
# Indicates which credentials to pass to the registered Blocking Functions.
|
|
75
|
+
# Corresponds to the JSON property `forwardInboundCredentials`
|
|
76
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2ForwardInboundCredentials]
|
|
77
|
+
attr_accessor :forward_inbound_credentials
|
|
78
|
+
|
|
79
|
+
# Map of Trigger to event type. Key should be one of the supported event types: "
|
|
80
|
+
# beforeCreate", "beforeSignIn"
|
|
81
|
+
# Corresponds to the JSON property `triggers`
|
|
82
|
+
# @return [Hash<String,Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Trigger>]
|
|
83
|
+
attr_accessor :triggers
|
|
84
|
+
|
|
85
|
+
def initialize(**args)
|
|
86
|
+
update!(**args)
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# Update properties of this object
|
|
90
|
+
def update!(**args)
|
|
91
|
+
@forward_inbound_credentials = args[:forward_inbound_credentials] if args.key?(:forward_inbound_credentials)
|
|
92
|
+
@triggers = args[:triggers] if args.key?(:triggers)
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# Options related to how clients making requests on behalf of a project should
|
|
97
|
+
# be configured.
|
|
98
|
+
class GoogleCloudIdentitytoolkitAdminV2ClientConfig
|
|
99
|
+
include Google::Apis::Core::Hashable
|
|
100
|
+
|
|
101
|
+
# Output only. API key that can be used when making requests for this project.
|
|
102
|
+
# Corresponds to the JSON property `apiKey`
|
|
103
|
+
# @return [String]
|
|
104
|
+
attr_accessor :api_key
|
|
105
|
+
|
|
106
|
+
# Output only. Firebase subdomain.
|
|
107
|
+
# Corresponds to the JSON property `firebaseSubdomain`
|
|
108
|
+
# @return [String]
|
|
109
|
+
attr_accessor :firebase_subdomain
|
|
110
|
+
|
|
111
|
+
# Configuration related to restricting a user's ability to affect their account.
|
|
112
|
+
# Corresponds to the JSON property `permissions`
|
|
113
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Permissions]
|
|
114
|
+
attr_accessor :permissions
|
|
115
|
+
|
|
116
|
+
def initialize(**args)
|
|
117
|
+
update!(**args)
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
# Update properties of this object
|
|
121
|
+
def update!(**args)
|
|
122
|
+
@api_key = args[:api_key] if args.key?(:api_key)
|
|
123
|
+
@firebase_subdomain = args[:firebase_subdomain] if args.key?(:firebase_subdomain)
|
|
124
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
# Options related to how clients making requests on behalf of a tenant should be
|
|
129
|
+
# configured.
|
|
130
|
+
class GoogleCloudIdentitytoolkitAdminV2ClientPermissionConfig
|
|
131
|
+
include Google::Apis::Core::Hashable
|
|
132
|
+
|
|
133
|
+
# Configuration related to restricting a user's ability to affect their account.
|
|
134
|
+
# Corresponds to the JSON property `permissions`
|
|
135
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2ClientPermissions]
|
|
136
|
+
attr_accessor :permissions
|
|
137
|
+
|
|
138
|
+
def initialize(**args)
|
|
139
|
+
update!(**args)
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# Update properties of this object
|
|
143
|
+
def update!(**args)
|
|
144
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# Configuration related to restricting a user's ability to affect their account.
|
|
149
|
+
class GoogleCloudIdentitytoolkitAdminV2ClientPermissions
|
|
150
|
+
include Google::Apis::Core::Hashable
|
|
151
|
+
|
|
152
|
+
# When true, end users cannot delete their account on the associated project
|
|
153
|
+
# through any of our API methods
|
|
154
|
+
# Corresponds to the JSON property `disabledUserDeletion`
|
|
155
|
+
# @return [Boolean]
|
|
156
|
+
attr_accessor :disabled_user_deletion
|
|
157
|
+
alias_method :disabled_user_deletion?, :disabled_user_deletion
|
|
158
|
+
|
|
159
|
+
# When true, end users cannot sign up for a new account on the associated
|
|
160
|
+
# project through any of our API methods
|
|
161
|
+
# Corresponds to the JSON property `disabledUserSignup`
|
|
162
|
+
# @return [Boolean]
|
|
163
|
+
attr_accessor :disabled_user_signup
|
|
164
|
+
alias_method :disabled_user_signup?, :disabled_user_signup
|
|
165
|
+
|
|
166
|
+
def initialize(**args)
|
|
167
|
+
update!(**args)
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
# Update properties of this object
|
|
171
|
+
def update!(**args)
|
|
172
|
+
@disabled_user_deletion = args[:disabled_user_deletion] if args.key?(:disabled_user_deletion)
|
|
173
|
+
@disabled_user_signup = args[:disabled_user_signup] if args.key?(:disabled_user_signup)
|
|
174
|
+
end
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
# Additional config for Apple for code flow.
|
|
178
|
+
class GoogleCloudIdentitytoolkitAdminV2CodeFlowConfig
|
|
179
|
+
include Google::Apis::Core::Hashable
|
|
180
|
+
|
|
181
|
+
# Key ID for the private key.
|
|
182
|
+
# Corresponds to the JSON property `keyId`
|
|
183
|
+
# @return [String]
|
|
184
|
+
attr_accessor :key_id
|
|
185
|
+
|
|
186
|
+
# Private key used for signing the client secret JWT.
|
|
187
|
+
# Corresponds to the JSON property `privateKey`
|
|
188
|
+
# @return [String]
|
|
189
|
+
attr_accessor :private_key
|
|
190
|
+
|
|
191
|
+
# Apple Developer Team ID.
|
|
192
|
+
# Corresponds to the JSON property `teamId`
|
|
193
|
+
# @return [String]
|
|
194
|
+
attr_accessor :team_id
|
|
195
|
+
|
|
196
|
+
def initialize(**args)
|
|
197
|
+
update!(**args)
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
# Update properties of this object
|
|
201
|
+
def update!(**args)
|
|
202
|
+
@key_id = args[:key_id] if args.key?(:key_id)
|
|
203
|
+
@private_key = args[:private_key] if args.key?(:private_key)
|
|
204
|
+
@team_id = args[:team_id] if args.key?(:team_id)
|
|
205
|
+
end
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
# Represents an Identity Toolkit project.
|
|
209
|
+
class GoogleCloudIdentitytoolkitAdminV2Config
|
|
210
|
+
include Google::Apis::Core::Hashable
|
|
211
|
+
|
|
212
|
+
# List of domains authorized for OAuth redirects
|
|
213
|
+
# Corresponds to the JSON property `authorizedDomains`
|
|
214
|
+
# @return [Array<String>]
|
|
215
|
+
attr_accessor :authorized_domains
|
|
216
|
+
|
|
217
|
+
# Whether anonymous users will be auto-deleted after a period of 30 days.
|
|
218
|
+
# Corresponds to the JSON property `autodeleteAnonymousUsers`
|
|
219
|
+
# @return [Boolean]
|
|
220
|
+
attr_accessor :autodelete_anonymous_users
|
|
221
|
+
alias_method :autodelete_anonymous_users?, :autodelete_anonymous_users
|
|
222
|
+
|
|
223
|
+
# Configuration related to Blocking Functions.
|
|
224
|
+
# Corresponds to the JSON property `blockingFunctions`
|
|
225
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2BlockingFunctionsConfig]
|
|
226
|
+
attr_accessor :blocking_functions
|
|
227
|
+
|
|
228
|
+
# Options related to how clients making requests on behalf of a project should
|
|
229
|
+
# be configured.
|
|
230
|
+
# Corresponds to the JSON property `client`
|
|
231
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2ClientConfig]
|
|
232
|
+
attr_accessor :client
|
|
233
|
+
|
|
234
|
+
# Options related to MultiFactor Authentication for the project.
|
|
235
|
+
# Corresponds to the JSON property `mfa`
|
|
236
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2MultiFactorAuthConfig]
|
|
237
|
+
attr_accessor :mfa
|
|
238
|
+
|
|
239
|
+
# Configuration related to monitoring project activity.
|
|
240
|
+
# Corresponds to the JSON property `monitoring`
|
|
241
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2MonitoringConfig]
|
|
242
|
+
attr_accessor :monitoring
|
|
243
|
+
|
|
244
|
+
# Configuration related to multi-tenant functionality.
|
|
245
|
+
# Corresponds to the JSON property `multiTenant`
|
|
246
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2MultiTenantConfig]
|
|
247
|
+
attr_accessor :multi_tenant
|
|
248
|
+
|
|
249
|
+
# Output only. The name of the Config resource. Example: "projects/my-awesome-
|
|
250
|
+
# project/config"
|
|
251
|
+
# Corresponds to the JSON property `name`
|
|
252
|
+
# @return [String]
|
|
253
|
+
attr_accessor :name
|
|
254
|
+
|
|
255
|
+
# Configuration related to sending notifications to users.
|
|
256
|
+
# Corresponds to the JSON property `notification`
|
|
257
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2NotificationConfig]
|
|
258
|
+
attr_accessor :notification
|
|
259
|
+
|
|
260
|
+
# Configuration related to quotas.
|
|
261
|
+
# Corresponds to the JSON property `quota`
|
|
262
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2QuotaConfig]
|
|
263
|
+
attr_accessor :quota
|
|
264
|
+
|
|
265
|
+
# Configuration related to local sign in methods.
|
|
266
|
+
# Corresponds to the JSON property `signIn`
|
|
267
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2SignInConfig]
|
|
268
|
+
attr_accessor :sign_in
|
|
269
|
+
|
|
270
|
+
# Output only. The subtype of this config.
|
|
271
|
+
# Corresponds to the JSON property `subtype`
|
|
272
|
+
# @return [String]
|
|
273
|
+
attr_accessor :subtype
|
|
274
|
+
|
|
275
|
+
def initialize(**args)
|
|
276
|
+
update!(**args)
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
# Update properties of this object
|
|
280
|
+
def update!(**args)
|
|
281
|
+
@authorized_domains = args[:authorized_domains] if args.key?(:authorized_domains)
|
|
282
|
+
@autodelete_anonymous_users = args[:autodelete_anonymous_users] if args.key?(:autodelete_anonymous_users)
|
|
283
|
+
@blocking_functions = args[:blocking_functions] if args.key?(:blocking_functions)
|
|
284
|
+
@client = args[:client] if args.key?(:client)
|
|
285
|
+
@mfa = args[:mfa] if args.key?(:mfa)
|
|
286
|
+
@monitoring = args[:monitoring] if args.key?(:monitoring)
|
|
287
|
+
@multi_tenant = args[:multi_tenant] if args.key?(:multi_tenant)
|
|
288
|
+
@name = args[:name] if args.key?(:name)
|
|
289
|
+
@notification = args[:notification] if args.key?(:notification)
|
|
290
|
+
@quota = args[:quota] if args.key?(:quota)
|
|
291
|
+
@sign_in = args[:sign_in] if args.key?(:sign_in)
|
|
292
|
+
@subtype = args[:subtype] if args.key?(:subtype)
|
|
293
|
+
end
|
|
294
|
+
end
|
|
295
|
+
|
|
296
|
+
# Standard Identity Toolkit-trusted IDPs.
|
|
297
|
+
class GoogleCloudIdentitytoolkitAdminV2DefaultSupportedIdp
|
|
298
|
+
include Google::Apis::Core::Hashable
|
|
299
|
+
|
|
300
|
+
# Description of the Idp
|
|
301
|
+
# Corresponds to the JSON property `description`
|
|
302
|
+
# @return [String]
|
|
303
|
+
attr_accessor :description
|
|
304
|
+
|
|
305
|
+
# Id the of Idp
|
|
306
|
+
# Corresponds to the JSON property `idpId`
|
|
307
|
+
# @return [String]
|
|
308
|
+
attr_accessor :idp_id
|
|
309
|
+
|
|
310
|
+
def initialize(**args)
|
|
311
|
+
update!(**args)
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
# Update properties of this object
|
|
315
|
+
def update!(**args)
|
|
316
|
+
@description = args[:description] if args.key?(:description)
|
|
317
|
+
@idp_id = args[:idp_id] if args.key?(:idp_id)
|
|
318
|
+
end
|
|
319
|
+
end
|
|
320
|
+
|
|
321
|
+
# Configurations options for authenticating with a the standard set of Identity
|
|
322
|
+
# Toolkit-trusted IDPs.
|
|
323
|
+
class GoogleCloudIdentitytoolkitAdminV2DefaultSupportedIdpConfig
|
|
324
|
+
include Google::Apis::Core::Hashable
|
|
325
|
+
|
|
326
|
+
# Additional config for SignInWithApple.
|
|
327
|
+
# Corresponds to the JSON property `appleSignInConfig`
|
|
328
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2AppleSignInConfig]
|
|
329
|
+
attr_accessor :apple_sign_in_config
|
|
330
|
+
|
|
331
|
+
# OAuth client ID.
|
|
332
|
+
# Corresponds to the JSON property `clientId`
|
|
333
|
+
# @return [String]
|
|
334
|
+
attr_accessor :client_id
|
|
335
|
+
|
|
336
|
+
# OAuth client secret.
|
|
337
|
+
# Corresponds to the JSON property `clientSecret`
|
|
338
|
+
# @return [String]
|
|
339
|
+
attr_accessor :client_secret
|
|
340
|
+
|
|
341
|
+
# True if allows the user to sign in with the provider.
|
|
342
|
+
# Corresponds to the JSON property `enabled`
|
|
343
|
+
# @return [Boolean]
|
|
344
|
+
attr_accessor :enabled
|
|
345
|
+
alias_method :enabled?, :enabled
|
|
346
|
+
|
|
347
|
+
# The name of the DefaultSupportedIdpConfig resource, for example: "projects/my-
|
|
348
|
+
# awesome-project/defaultSupportedIdpConfigs/google.com"
|
|
349
|
+
# Corresponds to the JSON property `name`
|
|
350
|
+
# @return [String]
|
|
351
|
+
attr_accessor :name
|
|
352
|
+
|
|
353
|
+
def initialize(**args)
|
|
354
|
+
update!(**args)
|
|
355
|
+
end
|
|
356
|
+
|
|
357
|
+
# Update properties of this object
|
|
358
|
+
def update!(**args)
|
|
359
|
+
@apple_sign_in_config = args[:apple_sign_in_config] if args.key?(:apple_sign_in_config)
|
|
360
|
+
@client_id = args[:client_id] if args.key?(:client_id)
|
|
361
|
+
@client_secret = args[:client_secret] if args.key?(:client_secret)
|
|
362
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
363
|
+
@name = args[:name] if args.key?(:name)
|
|
364
|
+
end
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
# Information of custom domain DNS verification. By default, default_domain will
|
|
368
|
+
# be used. A custom domain can be configured using VerifyCustomDomain.
|
|
369
|
+
class GoogleCloudIdentitytoolkitAdminV2DnsInfo
|
|
370
|
+
include Google::Apis::Core::Hashable
|
|
371
|
+
|
|
372
|
+
# Output only. The applied verified custom domain.
|
|
373
|
+
# Corresponds to the JSON property `customDomain`
|
|
374
|
+
# @return [String]
|
|
375
|
+
attr_accessor :custom_domain
|
|
376
|
+
|
|
377
|
+
# Output only. The current verification state of the custom domain. The custom
|
|
378
|
+
# domain will only be used once the domain verification is successful.
|
|
379
|
+
# Corresponds to the JSON property `customDomainState`
|
|
380
|
+
# @return [String]
|
|
381
|
+
attr_accessor :custom_domain_state
|
|
382
|
+
|
|
383
|
+
# Output only. The timestamp of initial request for the current domain
|
|
384
|
+
# verification.
|
|
385
|
+
# Corresponds to the JSON property `domainVerificationRequestTime`
|
|
386
|
+
# @return [String]
|
|
387
|
+
attr_accessor :domain_verification_request_time
|
|
388
|
+
|
|
389
|
+
# Output only. The custom domain that's to be verified.
|
|
390
|
+
# Corresponds to the JSON property `pendingCustomDomain`
|
|
391
|
+
# @return [String]
|
|
392
|
+
attr_accessor :pending_custom_domain
|
|
393
|
+
|
|
394
|
+
# Whether to use custom domain.
|
|
395
|
+
# Corresponds to the JSON property `useCustomDomain`
|
|
396
|
+
# @return [Boolean]
|
|
397
|
+
attr_accessor :use_custom_domain
|
|
398
|
+
alias_method :use_custom_domain?, :use_custom_domain
|
|
399
|
+
|
|
400
|
+
def initialize(**args)
|
|
401
|
+
update!(**args)
|
|
402
|
+
end
|
|
403
|
+
|
|
404
|
+
# Update properties of this object
|
|
405
|
+
def update!(**args)
|
|
406
|
+
@custom_domain = args[:custom_domain] if args.key?(:custom_domain)
|
|
407
|
+
@custom_domain_state = args[:custom_domain_state] if args.key?(:custom_domain_state)
|
|
408
|
+
@domain_verification_request_time = args[:domain_verification_request_time] if args.key?(:domain_verification_request_time)
|
|
409
|
+
@pending_custom_domain = args[:pending_custom_domain] if args.key?(:pending_custom_domain)
|
|
410
|
+
@use_custom_domain = args[:use_custom_domain] if args.key?(:use_custom_domain)
|
|
411
|
+
end
|
|
412
|
+
end
|
|
413
|
+
|
|
414
|
+
# Configuration options related to authenticating a user by their email address.
|
|
415
|
+
class GoogleCloudIdentitytoolkitAdminV2Email
|
|
416
|
+
include Google::Apis::Core::Hashable
|
|
417
|
+
|
|
418
|
+
# Whether email auth is enabled for the project or not.
|
|
419
|
+
# Corresponds to the JSON property `enabled`
|
|
420
|
+
# @return [Boolean]
|
|
421
|
+
attr_accessor :enabled
|
|
422
|
+
alias_method :enabled?, :enabled
|
|
423
|
+
|
|
424
|
+
# Whether a password is required for email auth or not. If true, both an email
|
|
425
|
+
# and password must be provided to sign in. If false, a user may sign in via
|
|
426
|
+
# either email/password or email link.
|
|
427
|
+
# Corresponds to the JSON property `passwordRequired`
|
|
428
|
+
# @return [Boolean]
|
|
429
|
+
attr_accessor :password_required
|
|
430
|
+
alias_method :password_required?, :password_required
|
|
431
|
+
|
|
432
|
+
def initialize(**args)
|
|
433
|
+
update!(**args)
|
|
434
|
+
end
|
|
435
|
+
|
|
436
|
+
# Update properties of this object
|
|
437
|
+
def update!(**args)
|
|
438
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
439
|
+
@password_required = args[:password_required] if args.key?(:password_required)
|
|
440
|
+
end
|
|
441
|
+
end
|
|
442
|
+
|
|
443
|
+
# Email template. The subject and body fields can contain the following
|
|
444
|
+
# placeholders which will be replaced with the appropriate values: %LINK% - The
|
|
445
|
+
# link to use to redeem the send OOB code. %EMAIL% - The email where the email
|
|
446
|
+
# is being sent. %NEW_EMAIL% - The new email being set for the account (when
|
|
447
|
+
# applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The
|
|
448
|
+
# user's display name.
|
|
449
|
+
class GoogleCloudIdentitytoolkitAdminV2EmailTemplate
|
|
450
|
+
include Google::Apis::Core::Hashable
|
|
451
|
+
|
|
452
|
+
# Email body
|
|
453
|
+
# Corresponds to the JSON property `body`
|
|
454
|
+
# @return [String]
|
|
455
|
+
attr_accessor :body
|
|
456
|
+
|
|
457
|
+
# Email body format
|
|
458
|
+
# Corresponds to the JSON property `bodyFormat`
|
|
459
|
+
# @return [String]
|
|
460
|
+
attr_accessor :body_format
|
|
461
|
+
|
|
462
|
+
# Output only. Whether the body or subject of the email is customized.
|
|
463
|
+
# Corresponds to the JSON property `customized`
|
|
464
|
+
# @return [Boolean]
|
|
465
|
+
attr_accessor :customized
|
|
466
|
+
alias_method :customized?, :customized
|
|
467
|
+
|
|
468
|
+
# Reply-to address
|
|
469
|
+
# Corresponds to the JSON property `replyTo`
|
|
470
|
+
# @return [String]
|
|
471
|
+
attr_accessor :reply_to
|
|
472
|
+
|
|
473
|
+
# Sender display name
|
|
474
|
+
# Corresponds to the JSON property `senderDisplayName`
|
|
475
|
+
# @return [String]
|
|
476
|
+
attr_accessor :sender_display_name
|
|
477
|
+
|
|
478
|
+
# Local part of From address
|
|
479
|
+
# Corresponds to the JSON property `senderLocalPart`
|
|
480
|
+
# @return [String]
|
|
481
|
+
attr_accessor :sender_local_part
|
|
482
|
+
|
|
483
|
+
# Subject of the email
|
|
484
|
+
# Corresponds to the JSON property `subject`
|
|
485
|
+
# @return [String]
|
|
486
|
+
attr_accessor :subject
|
|
487
|
+
|
|
488
|
+
def initialize(**args)
|
|
489
|
+
update!(**args)
|
|
490
|
+
end
|
|
491
|
+
|
|
492
|
+
# Update properties of this object
|
|
493
|
+
def update!(**args)
|
|
494
|
+
@body = args[:body] if args.key?(:body)
|
|
495
|
+
@body_format = args[:body_format] if args.key?(:body_format)
|
|
496
|
+
@customized = args[:customized] if args.key?(:customized)
|
|
497
|
+
@reply_to = args[:reply_to] if args.key?(:reply_to)
|
|
498
|
+
@sender_display_name = args[:sender_display_name] if args.key?(:sender_display_name)
|
|
499
|
+
@sender_local_part = args[:sender_local_part] if args.key?(:sender_local_part)
|
|
500
|
+
@subject = args[:subject] if args.key?(:subject)
|
|
501
|
+
end
|
|
502
|
+
end
|
|
503
|
+
|
|
504
|
+
# Indicates which credentials to pass to the registered Blocking Functions.
|
|
505
|
+
class GoogleCloudIdentitytoolkitAdminV2ForwardInboundCredentials
|
|
506
|
+
include Google::Apis::Core::Hashable
|
|
507
|
+
|
|
508
|
+
# Whether to pass the user's OAuth identity provider's access token.
|
|
509
|
+
# Corresponds to the JSON property `accessToken`
|
|
510
|
+
# @return [Boolean]
|
|
511
|
+
attr_accessor :access_token
|
|
512
|
+
alias_method :access_token?, :access_token
|
|
513
|
+
|
|
514
|
+
# Whether to pass the user's OIDC identity provider's ID token.
|
|
515
|
+
# Corresponds to the JSON property `idToken`
|
|
516
|
+
# @return [Boolean]
|
|
517
|
+
attr_accessor :id_token
|
|
518
|
+
alias_method :id_token?, :id_token
|
|
519
|
+
|
|
520
|
+
# Whether to pass the user's OAuth identity provider's refresh token.
|
|
521
|
+
# Corresponds to the JSON property `refreshToken`
|
|
522
|
+
# @return [Boolean]
|
|
523
|
+
attr_accessor :refresh_token
|
|
524
|
+
alias_method :refresh_token?, :refresh_token
|
|
525
|
+
|
|
526
|
+
def initialize(**args)
|
|
527
|
+
update!(**args)
|
|
528
|
+
end
|
|
529
|
+
|
|
530
|
+
# Update properties of this object
|
|
531
|
+
def update!(**args)
|
|
532
|
+
@access_token = args[:access_token] if args.key?(:access_token)
|
|
533
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
534
|
+
@refresh_token = args[:refresh_token] if args.key?(:refresh_token)
|
|
535
|
+
end
|
|
536
|
+
end
|
|
537
|
+
|
|
538
|
+
# History information of the hash algorithm and key. Different accounts'
|
|
539
|
+
# passwords may be generated by different version.
|
|
540
|
+
class GoogleCloudIdentitytoolkitAdminV2HashConfig
|
|
541
|
+
include Google::Apis::Core::Hashable
|
|
542
|
+
|
|
543
|
+
# Output only. Different password hash algorithms used in Identity Toolkit.
|
|
544
|
+
# Corresponds to the JSON property `algorithm`
|
|
545
|
+
# @return [String]
|
|
546
|
+
attr_accessor :algorithm
|
|
547
|
+
|
|
548
|
+
# Output only. Memory cost for hash calculation. Used by scrypt and other
|
|
549
|
+
# similar password derivation algorithms. See https://tools.ietf.org/html/
|
|
550
|
+
# rfc7914 for explanation of field.
|
|
551
|
+
# Corresponds to the JSON property `memoryCost`
|
|
552
|
+
# @return [Fixnum]
|
|
553
|
+
attr_accessor :memory_cost
|
|
554
|
+
|
|
555
|
+
# Output only. How many rounds for hash calculation. Used by scrypt and other
|
|
556
|
+
# similar password derivation algorithms.
|
|
557
|
+
# Corresponds to the JSON property `rounds`
|
|
558
|
+
# @return [Fixnum]
|
|
559
|
+
attr_accessor :rounds
|
|
560
|
+
|
|
561
|
+
# Output only. Non-printable character to be inserted between the salt and plain
|
|
562
|
+
# text password in base64.
|
|
563
|
+
# Corresponds to the JSON property `saltSeparator`
|
|
564
|
+
# @return [String]
|
|
565
|
+
attr_accessor :salt_separator
|
|
566
|
+
|
|
567
|
+
# Output only. Signer key in base64.
|
|
568
|
+
# Corresponds to the JSON property `signerKey`
|
|
569
|
+
# @return [String]
|
|
570
|
+
attr_accessor :signer_key
|
|
571
|
+
|
|
572
|
+
def initialize(**args)
|
|
573
|
+
update!(**args)
|
|
574
|
+
end
|
|
575
|
+
|
|
576
|
+
# Update properties of this object
|
|
577
|
+
def update!(**args)
|
|
578
|
+
@algorithm = args[:algorithm] if args.key?(:algorithm)
|
|
579
|
+
@memory_cost = args[:memory_cost] if args.key?(:memory_cost)
|
|
580
|
+
@rounds = args[:rounds] if args.key?(:rounds)
|
|
581
|
+
@salt_separator = args[:salt_separator] if args.key?(:salt_separator)
|
|
582
|
+
@signer_key = args[:signer_key] if args.key?(:signer_key)
|
|
583
|
+
end
|
|
584
|
+
end
|
|
585
|
+
|
|
586
|
+
# The IDP's certificate data to verify the signature in the SAMLResponse issued
|
|
587
|
+
# by the IDP.
|
|
588
|
+
class GoogleCloudIdentitytoolkitAdminV2IdpCertificate
|
|
589
|
+
include Google::Apis::Core::Hashable
|
|
590
|
+
|
|
591
|
+
# The x509 certificate
|
|
592
|
+
# Corresponds to the JSON property `x509Certificate`
|
|
593
|
+
# @return [String]
|
|
594
|
+
attr_accessor :x509_certificate
|
|
595
|
+
|
|
596
|
+
def initialize(**args)
|
|
597
|
+
update!(**args)
|
|
598
|
+
end
|
|
599
|
+
|
|
600
|
+
# Update properties of this object
|
|
601
|
+
def update!(**args)
|
|
602
|
+
@x509_certificate = args[:x509_certificate] if args.key?(:x509_certificate)
|
|
603
|
+
end
|
|
604
|
+
end
|
|
605
|
+
|
|
606
|
+
# The SAML IdP (Identity Provider) configuration when the project acts as the
|
|
607
|
+
# relying party.
|
|
608
|
+
class GoogleCloudIdentitytoolkitAdminV2IdpConfig
|
|
609
|
+
include Google::Apis::Core::Hashable
|
|
610
|
+
|
|
611
|
+
# IDP's public keys for verifying signature in the assertions.
|
|
612
|
+
# Corresponds to the JSON property `idpCertificates`
|
|
613
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2IdpCertificate>]
|
|
614
|
+
attr_accessor :idp_certificates
|
|
615
|
+
|
|
616
|
+
# Unique identifier for all SAML entities.
|
|
617
|
+
# Corresponds to the JSON property `idpEntityId`
|
|
618
|
+
# @return [String]
|
|
619
|
+
attr_accessor :idp_entity_id
|
|
620
|
+
|
|
621
|
+
# Indicates if outbounding SAMLRequest should be signed.
|
|
622
|
+
# Corresponds to the JSON property `signRequest`
|
|
623
|
+
# @return [Boolean]
|
|
624
|
+
attr_accessor :sign_request
|
|
625
|
+
alias_method :sign_request?, :sign_request
|
|
626
|
+
|
|
627
|
+
# URL to send Authentication request to.
|
|
628
|
+
# Corresponds to the JSON property `ssoUrl`
|
|
629
|
+
# @return [String]
|
|
630
|
+
attr_accessor :sso_url
|
|
631
|
+
|
|
632
|
+
def initialize(**args)
|
|
633
|
+
update!(**args)
|
|
634
|
+
end
|
|
635
|
+
|
|
636
|
+
# Update properties of this object
|
|
637
|
+
def update!(**args)
|
|
638
|
+
@idp_certificates = args[:idp_certificates] if args.key?(:idp_certificates)
|
|
639
|
+
@idp_entity_id = args[:idp_entity_id] if args.key?(:idp_entity_id)
|
|
640
|
+
@sign_request = args[:sign_request] if args.key?(:sign_request)
|
|
641
|
+
@sso_url = args[:sso_url] if args.key?(:sso_url)
|
|
642
|
+
end
|
|
643
|
+
end
|
|
644
|
+
|
|
645
|
+
# A pair of SAML RP-IDP configurations when the project acts as the relying
|
|
646
|
+
# party.
|
|
647
|
+
class GoogleCloudIdentitytoolkitAdminV2InboundSamlConfig
|
|
648
|
+
include Google::Apis::Core::Hashable
|
|
649
|
+
|
|
650
|
+
# The config's display name set by developers.
|
|
651
|
+
# Corresponds to the JSON property `displayName`
|
|
652
|
+
# @return [String]
|
|
653
|
+
attr_accessor :display_name
|
|
654
|
+
|
|
655
|
+
# True if allows the user to sign in with the provider.
|
|
656
|
+
# Corresponds to the JSON property `enabled`
|
|
657
|
+
# @return [Boolean]
|
|
658
|
+
attr_accessor :enabled
|
|
659
|
+
alias_method :enabled?, :enabled
|
|
660
|
+
|
|
661
|
+
# The SAML IdP (Identity Provider) configuration when the project acts as the
|
|
662
|
+
# relying party.
|
|
663
|
+
# Corresponds to the JSON property `idpConfig`
|
|
664
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2IdpConfig]
|
|
665
|
+
attr_accessor :idp_config
|
|
666
|
+
|
|
667
|
+
# The name of the InboundSamlConfig resource, for example: 'projects/my-awesome-
|
|
668
|
+
# project/inboundSamlConfigs/my-config-id'. Ignored during create requests.
|
|
669
|
+
# Corresponds to the JSON property `name`
|
|
670
|
+
# @return [String]
|
|
671
|
+
attr_accessor :name
|
|
672
|
+
|
|
673
|
+
# The SAML SP (Service Provider) configuration when the project acts as the
|
|
674
|
+
# relying party to receive and accept an authentication assertion issued by a
|
|
675
|
+
# SAML identity provider.
|
|
676
|
+
# Corresponds to the JSON property `spConfig`
|
|
677
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2SpConfig]
|
|
678
|
+
attr_accessor :sp_config
|
|
679
|
+
|
|
680
|
+
def initialize(**args)
|
|
681
|
+
update!(**args)
|
|
682
|
+
end
|
|
683
|
+
|
|
684
|
+
# Update properties of this object
|
|
685
|
+
def update!(**args)
|
|
686
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
|
687
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
688
|
+
@idp_config = args[:idp_config] if args.key?(:idp_config)
|
|
689
|
+
@name = args[:name] if args.key?(:name)
|
|
690
|
+
@sp_config = args[:sp_config] if args.key?(:sp_config)
|
|
691
|
+
end
|
|
692
|
+
end
|
|
693
|
+
|
|
694
|
+
# Settings that the tenants will inherit from project level.
|
|
695
|
+
class GoogleCloudIdentitytoolkitAdminV2Inheritance
|
|
696
|
+
include Google::Apis::Core::Hashable
|
|
697
|
+
|
|
698
|
+
# Whether to allow the tenant to inherit custom domains, email templates, and
|
|
699
|
+
# custom SMTP settings. If true, email sent from tenant will follow the project
|
|
700
|
+
# level email sending configurations. If false (by default), emails will go with
|
|
701
|
+
# the default settings with no customizations.
|
|
702
|
+
# Corresponds to the JSON property `emailSendingConfig`
|
|
703
|
+
# @return [Boolean]
|
|
704
|
+
attr_accessor :email_sending_config
|
|
705
|
+
alias_method :email_sending_config?, :email_sending_config
|
|
706
|
+
|
|
707
|
+
def initialize(**args)
|
|
708
|
+
update!(**args)
|
|
709
|
+
end
|
|
710
|
+
|
|
711
|
+
# Update properties of this object
|
|
712
|
+
def update!(**args)
|
|
713
|
+
@email_sending_config = args[:email_sending_config] if args.key?(:email_sending_config)
|
|
714
|
+
end
|
|
715
|
+
end
|
|
716
|
+
|
|
717
|
+
# Response for DefaultSupportedIdpConfigs
|
|
718
|
+
class GoogleCloudIdentitytoolkitAdminV2ListDefaultSupportedIdpConfigsResponse
|
|
719
|
+
include Google::Apis::Core::Hashable
|
|
720
|
+
|
|
721
|
+
# The set of configs.
|
|
722
|
+
# Corresponds to the JSON property `defaultSupportedIdpConfigs`
|
|
723
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2DefaultSupportedIdpConfig>]
|
|
724
|
+
attr_accessor :default_supported_idp_configs
|
|
725
|
+
|
|
726
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
|
727
|
+
# results in the list.
|
|
728
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
729
|
+
# @return [String]
|
|
730
|
+
attr_accessor :next_page_token
|
|
731
|
+
|
|
732
|
+
def initialize(**args)
|
|
733
|
+
update!(**args)
|
|
734
|
+
end
|
|
735
|
+
|
|
736
|
+
# Update properties of this object
|
|
737
|
+
def update!(**args)
|
|
738
|
+
@default_supported_idp_configs = args[:default_supported_idp_configs] if args.key?(:default_supported_idp_configs)
|
|
739
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
740
|
+
end
|
|
741
|
+
end
|
|
742
|
+
|
|
743
|
+
# Response for ListDefaultSupportedIdps
|
|
744
|
+
class GoogleCloudIdentitytoolkitAdminV2ListDefaultSupportedIdpsResponse
|
|
745
|
+
include Google::Apis::Core::Hashable
|
|
746
|
+
|
|
747
|
+
# The set of configs.
|
|
748
|
+
# Corresponds to the JSON property `defaultSupportedIdps`
|
|
749
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2DefaultSupportedIdp>]
|
|
750
|
+
attr_accessor :default_supported_idps
|
|
751
|
+
|
|
752
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
|
753
|
+
# results in the list.
|
|
754
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
755
|
+
# @return [String]
|
|
756
|
+
attr_accessor :next_page_token
|
|
757
|
+
|
|
758
|
+
def initialize(**args)
|
|
759
|
+
update!(**args)
|
|
760
|
+
end
|
|
761
|
+
|
|
762
|
+
# Update properties of this object
|
|
763
|
+
def update!(**args)
|
|
764
|
+
@default_supported_idps = args[:default_supported_idps] if args.key?(:default_supported_idps)
|
|
765
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
766
|
+
end
|
|
767
|
+
end
|
|
768
|
+
|
|
769
|
+
# Response for ListInboundSamlConfigs
|
|
770
|
+
class GoogleCloudIdentitytoolkitAdminV2ListInboundSamlConfigsResponse
|
|
771
|
+
include Google::Apis::Core::Hashable
|
|
772
|
+
|
|
773
|
+
# The set of configs.
|
|
774
|
+
# Corresponds to the JSON property `inboundSamlConfigs`
|
|
775
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2InboundSamlConfig>]
|
|
776
|
+
attr_accessor :inbound_saml_configs
|
|
777
|
+
|
|
778
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
|
779
|
+
# results in the list.
|
|
780
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
781
|
+
# @return [String]
|
|
782
|
+
attr_accessor :next_page_token
|
|
783
|
+
|
|
784
|
+
def initialize(**args)
|
|
785
|
+
update!(**args)
|
|
786
|
+
end
|
|
787
|
+
|
|
788
|
+
# Update properties of this object
|
|
789
|
+
def update!(**args)
|
|
790
|
+
@inbound_saml_configs = args[:inbound_saml_configs] if args.key?(:inbound_saml_configs)
|
|
791
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
792
|
+
end
|
|
793
|
+
end
|
|
794
|
+
|
|
795
|
+
# Response for ListOAuthIdpConfigs
|
|
796
|
+
class GoogleCloudIdentitytoolkitAdminV2ListOAuthIdpConfigsResponse
|
|
797
|
+
include Google::Apis::Core::Hashable
|
|
798
|
+
|
|
799
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
|
800
|
+
# results in the list.
|
|
801
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
802
|
+
# @return [String]
|
|
803
|
+
attr_accessor :next_page_token
|
|
804
|
+
|
|
805
|
+
# The set of configs.
|
|
806
|
+
# Corresponds to the JSON property `oauthIdpConfigs`
|
|
807
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2OAuthIdpConfig>]
|
|
808
|
+
attr_accessor :oauth_idp_configs
|
|
809
|
+
|
|
810
|
+
def initialize(**args)
|
|
811
|
+
update!(**args)
|
|
812
|
+
end
|
|
813
|
+
|
|
814
|
+
# Update properties of this object
|
|
815
|
+
def update!(**args)
|
|
816
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
817
|
+
@oauth_idp_configs = args[:oauth_idp_configs] if args.key?(:oauth_idp_configs)
|
|
818
|
+
end
|
|
819
|
+
end
|
|
820
|
+
|
|
821
|
+
# Response message for ListTenants.
|
|
822
|
+
class GoogleCloudIdentitytoolkitAdminV2ListTenantsResponse
|
|
823
|
+
include Google::Apis::Core::Hashable
|
|
824
|
+
|
|
825
|
+
# The token to get the next page of results.
|
|
826
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
827
|
+
# @return [String]
|
|
828
|
+
attr_accessor :next_page_token
|
|
829
|
+
|
|
830
|
+
# A list of tenants under the given agent project.
|
|
831
|
+
# Corresponds to the JSON property `tenants`
|
|
832
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Tenant>]
|
|
833
|
+
attr_accessor :tenants
|
|
834
|
+
|
|
835
|
+
def initialize(**args)
|
|
836
|
+
update!(**args)
|
|
837
|
+
end
|
|
838
|
+
|
|
839
|
+
# Update properties of this object
|
|
840
|
+
def update!(**args)
|
|
841
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
842
|
+
@tenants = args[:tenants] if args.key?(:tenants)
|
|
843
|
+
end
|
|
844
|
+
end
|
|
845
|
+
|
|
846
|
+
# Configuration related to monitoring project activity.
|
|
847
|
+
class GoogleCloudIdentitytoolkitAdminV2MonitoringConfig
|
|
848
|
+
include Google::Apis::Core::Hashable
|
|
849
|
+
|
|
850
|
+
# Configuration for logging requests made to this project to Stackdriver Logging
|
|
851
|
+
# Corresponds to the JSON property `requestLogging`
|
|
852
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2RequestLogging]
|
|
853
|
+
attr_accessor :request_logging
|
|
854
|
+
|
|
855
|
+
def initialize(**args)
|
|
856
|
+
update!(**args)
|
|
857
|
+
end
|
|
858
|
+
|
|
859
|
+
# Update properties of this object
|
|
860
|
+
def update!(**args)
|
|
861
|
+
@request_logging = args[:request_logging] if args.key?(:request_logging)
|
|
862
|
+
end
|
|
863
|
+
end
|
|
864
|
+
|
|
865
|
+
# Options related to MultiFactor Authentication for the project.
|
|
866
|
+
class GoogleCloudIdentitytoolkitAdminV2MultiFactorAuthConfig
|
|
867
|
+
include Google::Apis::Core::Hashable
|
|
868
|
+
|
|
869
|
+
# A list of usable second factors for this project.
|
|
870
|
+
# Corresponds to the JSON property `enabledProviders`
|
|
871
|
+
# @return [Array<String>]
|
|
872
|
+
attr_accessor :enabled_providers
|
|
873
|
+
|
|
874
|
+
# Whether MultiFactor Authentication has been enabled for this project.
|
|
875
|
+
# Corresponds to the JSON property `state`
|
|
876
|
+
# @return [String]
|
|
877
|
+
attr_accessor :state
|
|
878
|
+
|
|
879
|
+
def initialize(**args)
|
|
880
|
+
update!(**args)
|
|
881
|
+
end
|
|
882
|
+
|
|
883
|
+
# Update properties of this object
|
|
884
|
+
def update!(**args)
|
|
885
|
+
@enabled_providers = args[:enabled_providers] if args.key?(:enabled_providers)
|
|
886
|
+
@state = args[:state] if args.key?(:state)
|
|
887
|
+
end
|
|
888
|
+
end
|
|
889
|
+
|
|
890
|
+
# Configuration related to multi-tenant functionality.
|
|
891
|
+
class GoogleCloudIdentitytoolkitAdminV2MultiTenantConfig
|
|
892
|
+
include Google::Apis::Core::Hashable
|
|
893
|
+
|
|
894
|
+
# Whether this project can have tenants or not.
|
|
895
|
+
# Corresponds to the JSON property `allowTenants`
|
|
896
|
+
# @return [Boolean]
|
|
897
|
+
attr_accessor :allow_tenants
|
|
898
|
+
alias_method :allow_tenants?, :allow_tenants
|
|
899
|
+
|
|
900
|
+
# The default cloud parent org or folder that the tenant project should be
|
|
901
|
+
# created under. The parent resource name should be in the format of "/", such
|
|
902
|
+
# as "folders/123" or "organizations/456". If the value is not set, the tenant
|
|
903
|
+
# will be created under the same organization or folder as the agent project.
|
|
904
|
+
# Corresponds to the JSON property `defaultTenantLocation`
|
|
905
|
+
# @return [String]
|
|
906
|
+
attr_accessor :default_tenant_location
|
|
907
|
+
|
|
908
|
+
def initialize(**args)
|
|
909
|
+
update!(**args)
|
|
910
|
+
end
|
|
911
|
+
|
|
912
|
+
# Update properties of this object
|
|
913
|
+
def update!(**args)
|
|
914
|
+
@allow_tenants = args[:allow_tenants] if args.key?(:allow_tenants)
|
|
915
|
+
@default_tenant_location = args[:default_tenant_location] if args.key?(:default_tenant_location)
|
|
916
|
+
end
|
|
917
|
+
end
|
|
918
|
+
|
|
919
|
+
# Configuration related to sending notifications to users.
|
|
920
|
+
class GoogleCloudIdentitytoolkitAdminV2NotificationConfig
|
|
921
|
+
include Google::Apis::Core::Hashable
|
|
922
|
+
|
|
923
|
+
# Default locale used for email and SMS in IETF BCP 47 format.
|
|
924
|
+
# Corresponds to the JSON property `defaultLocale`
|
|
925
|
+
# @return [String]
|
|
926
|
+
attr_accessor :default_locale
|
|
927
|
+
|
|
928
|
+
# Options for email sending.
|
|
929
|
+
# Corresponds to the JSON property `sendEmail`
|
|
930
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2SendEmail]
|
|
931
|
+
attr_accessor :send_email
|
|
932
|
+
|
|
933
|
+
# Options for SMS sending.
|
|
934
|
+
# Corresponds to the JSON property `sendSms`
|
|
935
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2SendSms]
|
|
936
|
+
attr_accessor :send_sms
|
|
937
|
+
|
|
938
|
+
def initialize(**args)
|
|
939
|
+
update!(**args)
|
|
940
|
+
end
|
|
941
|
+
|
|
942
|
+
# Update properties of this object
|
|
943
|
+
def update!(**args)
|
|
944
|
+
@default_locale = args[:default_locale] if args.key?(:default_locale)
|
|
945
|
+
@send_email = args[:send_email] if args.key?(:send_email)
|
|
946
|
+
@send_sms = args[:send_sms] if args.key?(:send_sms)
|
|
947
|
+
end
|
|
948
|
+
end
|
|
949
|
+
|
|
950
|
+
# Configuration options for authenticating with an OAuth IDP.
|
|
951
|
+
class GoogleCloudIdentitytoolkitAdminV2OAuthIdpConfig
|
|
952
|
+
include Google::Apis::Core::Hashable
|
|
953
|
+
|
|
954
|
+
# The client id of an OAuth client.
|
|
955
|
+
# Corresponds to the JSON property `clientId`
|
|
956
|
+
# @return [String]
|
|
957
|
+
attr_accessor :client_id
|
|
958
|
+
|
|
959
|
+
# The client secret of the OAuth client, to enable OIDC code flow.
|
|
960
|
+
# Corresponds to the JSON property `clientSecret`
|
|
961
|
+
# @return [String]
|
|
962
|
+
attr_accessor :client_secret
|
|
963
|
+
|
|
964
|
+
# The config's display name set by developers.
|
|
965
|
+
# Corresponds to the JSON property `displayName`
|
|
966
|
+
# @return [String]
|
|
967
|
+
attr_accessor :display_name
|
|
968
|
+
|
|
969
|
+
# True if allows the user to sign in with the provider.
|
|
970
|
+
# Corresponds to the JSON property `enabled`
|
|
971
|
+
# @return [Boolean]
|
|
972
|
+
attr_accessor :enabled
|
|
973
|
+
alias_method :enabled?, :enabled
|
|
974
|
+
|
|
975
|
+
# For OIDC Idps, the issuer identifier.
|
|
976
|
+
# Corresponds to the JSON property `issuer`
|
|
977
|
+
# @return [String]
|
|
978
|
+
attr_accessor :issuer
|
|
979
|
+
|
|
980
|
+
# The name of the OAuthIdpConfig resource, for example: 'projects/my-awesome-
|
|
981
|
+
# project/oauthIdpConfigs/oauth-config-id'. Ignored during create requests.
|
|
982
|
+
# Corresponds to the JSON property `name`
|
|
983
|
+
# @return [String]
|
|
984
|
+
attr_accessor :name
|
|
985
|
+
|
|
986
|
+
# The response type to request for in the OAuth authorization flow. You can set
|
|
987
|
+
# either `id_token` or `code` to true, but not both. Setting both types to be
|
|
988
|
+
# simultaneously true (``code: true, id_token: true``) is not yet supported. See
|
|
989
|
+
# https://openid.net/specs/openid-connect-core-1_0.html#Authentication for a
|
|
990
|
+
# mapping of response type to OAuth 2.0 flow.
|
|
991
|
+
# Corresponds to the JSON property `responseType`
|
|
992
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2OAuthResponseType]
|
|
993
|
+
attr_accessor :response_type
|
|
994
|
+
|
|
995
|
+
def initialize(**args)
|
|
996
|
+
update!(**args)
|
|
997
|
+
end
|
|
998
|
+
|
|
999
|
+
# Update properties of this object
|
|
1000
|
+
def update!(**args)
|
|
1001
|
+
@client_id = args[:client_id] if args.key?(:client_id)
|
|
1002
|
+
@client_secret = args[:client_secret] if args.key?(:client_secret)
|
|
1003
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
|
1004
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
1005
|
+
@issuer = args[:issuer] if args.key?(:issuer)
|
|
1006
|
+
@name = args[:name] if args.key?(:name)
|
|
1007
|
+
@response_type = args[:response_type] if args.key?(:response_type)
|
|
1008
|
+
end
|
|
1009
|
+
end
|
|
1010
|
+
|
|
1011
|
+
# The response type to request for in the OAuth authorization flow. You can set
|
|
1012
|
+
# either `id_token` or `code` to true, but not both. Setting both types to be
|
|
1013
|
+
# simultaneously true (``code: true, id_token: true``) is not yet supported. See
|
|
1014
|
+
# https://openid.net/specs/openid-connect-core-1_0.html#Authentication for a
|
|
1015
|
+
# mapping of response type to OAuth 2.0 flow.
|
|
1016
|
+
class GoogleCloudIdentitytoolkitAdminV2OAuthResponseType
|
|
1017
|
+
include Google::Apis::Core::Hashable
|
|
1018
|
+
|
|
1019
|
+
# If true, authorization code is returned from IdP's authorization endpoint.
|
|
1020
|
+
# Corresponds to the JSON property `code`
|
|
1021
|
+
# @return [Boolean]
|
|
1022
|
+
attr_accessor :code
|
|
1023
|
+
alias_method :code?, :code
|
|
1024
|
+
|
|
1025
|
+
# If true, ID token is returned from IdP's authorization endpoint.
|
|
1026
|
+
# Corresponds to the JSON property `idToken`
|
|
1027
|
+
# @return [Boolean]
|
|
1028
|
+
attr_accessor :id_token
|
|
1029
|
+
alias_method :id_token?, :id_token
|
|
1030
|
+
|
|
1031
|
+
# Do not use. The `token` response type is not supported at the moment.
|
|
1032
|
+
# Corresponds to the JSON property `token`
|
|
1033
|
+
# @return [Boolean]
|
|
1034
|
+
attr_accessor :token
|
|
1035
|
+
alias_method :token?, :token
|
|
1036
|
+
|
|
1037
|
+
def initialize(**args)
|
|
1038
|
+
update!(**args)
|
|
1039
|
+
end
|
|
1040
|
+
|
|
1041
|
+
# Update properties of this object
|
|
1042
|
+
def update!(**args)
|
|
1043
|
+
@code = args[:code] if args.key?(:code)
|
|
1044
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
1045
|
+
@token = args[:token] if args.key?(:token)
|
|
1046
|
+
end
|
|
1047
|
+
end
|
|
1048
|
+
|
|
1049
|
+
# Configuration related to restricting a user's ability to affect their account.
|
|
1050
|
+
class GoogleCloudIdentitytoolkitAdminV2Permissions
|
|
1051
|
+
include Google::Apis::Core::Hashable
|
|
1052
|
+
|
|
1053
|
+
# When true, end users cannot delete their account on the associated project
|
|
1054
|
+
# through any of our API methods
|
|
1055
|
+
# Corresponds to the JSON property `disabledUserDeletion`
|
|
1056
|
+
# @return [Boolean]
|
|
1057
|
+
attr_accessor :disabled_user_deletion
|
|
1058
|
+
alias_method :disabled_user_deletion?, :disabled_user_deletion
|
|
1059
|
+
|
|
1060
|
+
# When true, end users cannot sign up for a new account on the associated
|
|
1061
|
+
# project through any of our API methods
|
|
1062
|
+
# Corresponds to the JSON property `disabledUserSignup`
|
|
1063
|
+
# @return [Boolean]
|
|
1064
|
+
attr_accessor :disabled_user_signup
|
|
1065
|
+
alias_method :disabled_user_signup?, :disabled_user_signup
|
|
1066
|
+
|
|
1067
|
+
def initialize(**args)
|
|
1068
|
+
update!(**args)
|
|
1069
|
+
end
|
|
1070
|
+
|
|
1071
|
+
# Update properties of this object
|
|
1072
|
+
def update!(**args)
|
|
1073
|
+
@disabled_user_deletion = args[:disabled_user_deletion] if args.key?(:disabled_user_deletion)
|
|
1074
|
+
@disabled_user_signup = args[:disabled_user_signup] if args.key?(:disabled_user_signup)
|
|
1075
|
+
end
|
|
1076
|
+
end
|
|
1077
|
+
|
|
1078
|
+
# Configuration options related to authenticated a user by their phone number.
|
|
1079
|
+
class GoogleCloudIdentitytoolkitAdminV2PhoneNumber
|
|
1080
|
+
include Google::Apis::Core::Hashable
|
|
1081
|
+
|
|
1082
|
+
# Whether phone number auth is enabled for the project or not.
|
|
1083
|
+
# Corresponds to the JSON property `enabled`
|
|
1084
|
+
# @return [Boolean]
|
|
1085
|
+
attr_accessor :enabled
|
|
1086
|
+
alias_method :enabled?, :enabled
|
|
1087
|
+
|
|
1088
|
+
# A map of that can be used for phone auth testing.
|
|
1089
|
+
# Corresponds to the JSON property `testPhoneNumbers`
|
|
1090
|
+
# @return [Hash<String,String>]
|
|
1091
|
+
attr_accessor :test_phone_numbers
|
|
1092
|
+
|
|
1093
|
+
def initialize(**args)
|
|
1094
|
+
update!(**args)
|
|
1095
|
+
end
|
|
1096
|
+
|
|
1097
|
+
# Update properties of this object
|
|
1098
|
+
def update!(**args)
|
|
1099
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
1100
|
+
@test_phone_numbers = args[:test_phone_numbers] if args.key?(:test_phone_numbers)
|
|
1101
|
+
end
|
|
1102
|
+
end
|
|
1103
|
+
|
|
1104
|
+
# Configuration related to quotas.
|
|
1105
|
+
class GoogleCloudIdentitytoolkitAdminV2QuotaConfig
|
|
1106
|
+
include Google::Apis::Core::Hashable
|
|
1107
|
+
|
|
1108
|
+
# Temporary quota increase / decrease
|
|
1109
|
+
# Corresponds to the JSON property `signUpQuotaConfig`
|
|
1110
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2TemporaryQuota]
|
|
1111
|
+
attr_accessor :sign_up_quota_config
|
|
1112
|
+
|
|
1113
|
+
def initialize(**args)
|
|
1114
|
+
update!(**args)
|
|
1115
|
+
end
|
|
1116
|
+
|
|
1117
|
+
# Update properties of this object
|
|
1118
|
+
def update!(**args)
|
|
1119
|
+
@sign_up_quota_config = args[:sign_up_quota_config] if args.key?(:sign_up_quota_config)
|
|
1120
|
+
end
|
|
1121
|
+
end
|
|
1122
|
+
|
|
1123
|
+
# Configuration for logging requests made to this project to Stackdriver Logging
|
|
1124
|
+
class GoogleCloudIdentitytoolkitAdminV2RequestLogging
|
|
1125
|
+
include Google::Apis::Core::Hashable
|
|
1126
|
+
|
|
1127
|
+
# Whether logging is enabled for this project or not.
|
|
1128
|
+
# Corresponds to the JSON property `enabled`
|
|
1129
|
+
# @return [Boolean]
|
|
1130
|
+
attr_accessor :enabled
|
|
1131
|
+
alias_method :enabled?, :enabled
|
|
1132
|
+
|
|
1133
|
+
def initialize(**args)
|
|
1134
|
+
update!(**args)
|
|
1135
|
+
end
|
|
1136
|
+
|
|
1137
|
+
# Update properties of this object
|
|
1138
|
+
def update!(**args)
|
|
1139
|
+
@enabled = args[:enabled] if args.key?(:enabled)
|
|
1140
|
+
end
|
|
1141
|
+
end
|
|
1142
|
+
|
|
1143
|
+
# Options for email sending.
|
|
1144
|
+
class GoogleCloudIdentitytoolkitAdminV2SendEmail
|
|
1145
|
+
include Google::Apis::Core::Hashable
|
|
1146
|
+
|
|
1147
|
+
# action url in email template.
|
|
1148
|
+
# Corresponds to the JSON property `callbackUri`
|
|
1149
|
+
# @return [String]
|
|
1150
|
+
attr_accessor :callback_uri
|
|
1151
|
+
|
|
1152
|
+
# Email template. The subject and body fields can contain the following
|
|
1153
|
+
# placeholders which will be replaced with the appropriate values: %LINK% - The
|
|
1154
|
+
# link to use to redeem the send OOB code. %EMAIL% - The email where the email
|
|
1155
|
+
# is being sent. %NEW_EMAIL% - The new email being set for the account (when
|
|
1156
|
+
# applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The
|
|
1157
|
+
# user's display name.
|
|
1158
|
+
# Corresponds to the JSON property `changeEmailTemplate`
|
|
1159
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2EmailTemplate]
|
|
1160
|
+
attr_accessor :change_email_template
|
|
1161
|
+
|
|
1162
|
+
# Information of custom domain DNS verification. By default, default_domain will
|
|
1163
|
+
# be used. A custom domain can be configured using VerifyCustomDomain.
|
|
1164
|
+
# Corresponds to the JSON property `dnsInfo`
|
|
1165
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2DnsInfo]
|
|
1166
|
+
attr_accessor :dns_info
|
|
1167
|
+
|
|
1168
|
+
# Email template. The subject and body fields can contain the following
|
|
1169
|
+
# placeholders which will be replaced with the appropriate values: %LINK% - The
|
|
1170
|
+
# link to use to redeem the send OOB code. %EMAIL% - The email where the email
|
|
1171
|
+
# is being sent. %NEW_EMAIL% - The new email being set for the account (when
|
|
1172
|
+
# applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The
|
|
1173
|
+
# user's display name.
|
|
1174
|
+
# Corresponds to the JSON property `legacyResetPasswordTemplate`
|
|
1175
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2EmailTemplate]
|
|
1176
|
+
attr_accessor :legacy_reset_password_template
|
|
1177
|
+
|
|
1178
|
+
# The method used for sending an email.
|
|
1179
|
+
# Corresponds to the JSON property `method`
|
|
1180
|
+
# @return [String]
|
|
1181
|
+
attr_accessor :method_prop
|
|
1182
|
+
|
|
1183
|
+
# Email template. The subject and body fields can contain the following
|
|
1184
|
+
# placeholders which will be replaced with the appropriate values: %LINK% - The
|
|
1185
|
+
# link to use to redeem the send OOB code. %EMAIL% - The email where the email
|
|
1186
|
+
# is being sent. %NEW_EMAIL% - The new email being set for the account (when
|
|
1187
|
+
# applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The
|
|
1188
|
+
# user's display name.
|
|
1189
|
+
# Corresponds to the JSON property `resetPasswordTemplate`
|
|
1190
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2EmailTemplate]
|
|
1191
|
+
attr_accessor :reset_password_template
|
|
1192
|
+
|
|
1193
|
+
# Email template. The subject and body fields can contain the following
|
|
1194
|
+
# placeholders which will be replaced with the appropriate values: %LINK% - The
|
|
1195
|
+
# link to use to redeem the send OOB code. %EMAIL% - The email where the email
|
|
1196
|
+
# is being sent. %NEW_EMAIL% - The new email being set for the account (when
|
|
1197
|
+
# applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The
|
|
1198
|
+
# user's display name.
|
|
1199
|
+
# Corresponds to the JSON property `revertSecondFactorAdditionTemplate`
|
|
1200
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2EmailTemplate]
|
|
1201
|
+
attr_accessor :revert_second_factor_addition_template
|
|
1202
|
+
|
|
1203
|
+
# Configuration for SMTP relay
|
|
1204
|
+
# Corresponds to the JSON property `smtp`
|
|
1205
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Smtp]
|
|
1206
|
+
attr_accessor :smtp
|
|
1207
|
+
|
|
1208
|
+
# Email template. The subject and body fields can contain the following
|
|
1209
|
+
# placeholders which will be replaced with the appropriate values: %LINK% - The
|
|
1210
|
+
# link to use to redeem the send OOB code. %EMAIL% - The email where the email
|
|
1211
|
+
# is being sent. %NEW_EMAIL% - The new email being set for the account (when
|
|
1212
|
+
# applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The
|
|
1213
|
+
# user's display name.
|
|
1214
|
+
# Corresponds to the JSON property `verifyEmailTemplate`
|
|
1215
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2EmailTemplate]
|
|
1216
|
+
attr_accessor :verify_email_template
|
|
1217
|
+
|
|
1218
|
+
def initialize(**args)
|
|
1219
|
+
update!(**args)
|
|
1220
|
+
end
|
|
1221
|
+
|
|
1222
|
+
# Update properties of this object
|
|
1223
|
+
def update!(**args)
|
|
1224
|
+
@callback_uri = args[:callback_uri] if args.key?(:callback_uri)
|
|
1225
|
+
@change_email_template = args[:change_email_template] if args.key?(:change_email_template)
|
|
1226
|
+
@dns_info = args[:dns_info] if args.key?(:dns_info)
|
|
1227
|
+
@legacy_reset_password_template = args[:legacy_reset_password_template] if args.key?(:legacy_reset_password_template)
|
|
1228
|
+
@method_prop = args[:method_prop] if args.key?(:method_prop)
|
|
1229
|
+
@reset_password_template = args[:reset_password_template] if args.key?(:reset_password_template)
|
|
1230
|
+
@revert_second_factor_addition_template = args[:revert_second_factor_addition_template] if args.key?(:revert_second_factor_addition_template)
|
|
1231
|
+
@smtp = args[:smtp] if args.key?(:smtp)
|
|
1232
|
+
@verify_email_template = args[:verify_email_template] if args.key?(:verify_email_template)
|
|
1233
|
+
end
|
|
1234
|
+
end
|
|
1235
|
+
|
|
1236
|
+
# Options for SMS sending.
|
|
1237
|
+
class GoogleCloudIdentitytoolkitAdminV2SendSms
|
|
1238
|
+
include Google::Apis::Core::Hashable
|
|
1239
|
+
|
|
1240
|
+
# The template to use when sending an SMS.
|
|
1241
|
+
# Corresponds to the JSON property `smsTemplate`
|
|
1242
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2SmsTemplate]
|
|
1243
|
+
attr_accessor :sms_template
|
|
1244
|
+
|
|
1245
|
+
# Whether to use the accept_language header for SMS.
|
|
1246
|
+
# Corresponds to the JSON property `useDeviceLocale`
|
|
1247
|
+
# @return [Boolean]
|
|
1248
|
+
attr_accessor :use_device_locale
|
|
1249
|
+
alias_method :use_device_locale?, :use_device_locale
|
|
1250
|
+
|
|
1251
|
+
def initialize(**args)
|
|
1252
|
+
update!(**args)
|
|
1253
|
+
end
|
|
1254
|
+
|
|
1255
|
+
# Update properties of this object
|
|
1256
|
+
def update!(**args)
|
|
1257
|
+
@sms_template = args[:sms_template] if args.key?(:sms_template)
|
|
1258
|
+
@use_device_locale = args[:use_device_locale] if args.key?(:use_device_locale)
|
|
1259
|
+
end
|
|
1260
|
+
end
|
|
1261
|
+
|
|
1262
|
+
# Configuration related to local sign in methods.
|
|
1263
|
+
class GoogleCloudIdentitytoolkitAdminV2SignInConfig
|
|
1264
|
+
include Google::Apis::Core::Hashable
|
|
1265
|
+
|
|
1266
|
+
# Whether to allow more than one account to have the same email.
|
|
1267
|
+
# Corresponds to the JSON property `allowDuplicateEmails`
|
|
1268
|
+
# @return [Boolean]
|
|
1269
|
+
attr_accessor :allow_duplicate_emails
|
|
1270
|
+
alias_method :allow_duplicate_emails?, :allow_duplicate_emails
|
|
1271
|
+
|
|
1272
|
+
# Configuration options related to authenticating an anonymous user.
|
|
1273
|
+
# Corresponds to the JSON property `anonymous`
|
|
1274
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Anonymous]
|
|
1275
|
+
attr_accessor :anonymous
|
|
1276
|
+
|
|
1277
|
+
# Configuration options related to authenticating a user by their email address.
|
|
1278
|
+
# Corresponds to the JSON property `email`
|
|
1279
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Email]
|
|
1280
|
+
attr_accessor :email
|
|
1281
|
+
|
|
1282
|
+
# History information of the hash algorithm and key. Different accounts'
|
|
1283
|
+
# passwords may be generated by different version.
|
|
1284
|
+
# Corresponds to the JSON property `hashConfig`
|
|
1285
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2HashConfig]
|
|
1286
|
+
attr_accessor :hash_config
|
|
1287
|
+
|
|
1288
|
+
# Configuration options related to authenticated a user by their phone number.
|
|
1289
|
+
# Corresponds to the JSON property `phoneNumber`
|
|
1290
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2PhoneNumber]
|
|
1291
|
+
attr_accessor :phone_number
|
|
1292
|
+
|
|
1293
|
+
def initialize(**args)
|
|
1294
|
+
update!(**args)
|
|
1295
|
+
end
|
|
1296
|
+
|
|
1297
|
+
# Update properties of this object
|
|
1298
|
+
def update!(**args)
|
|
1299
|
+
@allow_duplicate_emails = args[:allow_duplicate_emails] if args.key?(:allow_duplicate_emails)
|
|
1300
|
+
@anonymous = args[:anonymous] if args.key?(:anonymous)
|
|
1301
|
+
@email = args[:email] if args.key?(:email)
|
|
1302
|
+
@hash_config = args[:hash_config] if args.key?(:hash_config)
|
|
1303
|
+
@phone_number = args[:phone_number] if args.key?(:phone_number)
|
|
1304
|
+
end
|
|
1305
|
+
end
|
|
1306
|
+
|
|
1307
|
+
# The template to use when sending an SMS.
|
|
1308
|
+
class GoogleCloudIdentitytoolkitAdminV2SmsTemplate
|
|
1309
|
+
include Google::Apis::Core::Hashable
|
|
1310
|
+
|
|
1311
|
+
# Output only. The SMS's content. Can contain the following placeholders which
|
|
1312
|
+
# will be replaced with the appropriate values: %APP_NAME% - For Android or iOS
|
|
1313
|
+
# apps, the app's display name. For web apps, the domain hosting the application.
|
|
1314
|
+
# %LOGIN_CODE% - The OOB code being sent in the SMS.
|
|
1315
|
+
# Corresponds to the JSON property `content`
|
|
1316
|
+
# @return [String]
|
|
1317
|
+
attr_accessor :content
|
|
1318
|
+
|
|
1319
|
+
def initialize(**args)
|
|
1320
|
+
update!(**args)
|
|
1321
|
+
end
|
|
1322
|
+
|
|
1323
|
+
# Update properties of this object
|
|
1324
|
+
def update!(**args)
|
|
1325
|
+
@content = args[:content] if args.key?(:content)
|
|
1326
|
+
end
|
|
1327
|
+
end
|
|
1328
|
+
|
|
1329
|
+
# Configuration for SMTP relay
|
|
1330
|
+
class GoogleCloudIdentitytoolkitAdminV2Smtp
|
|
1331
|
+
include Google::Apis::Core::Hashable
|
|
1332
|
+
|
|
1333
|
+
# SMTP relay host
|
|
1334
|
+
# Corresponds to the JSON property `host`
|
|
1335
|
+
# @return [String]
|
|
1336
|
+
attr_accessor :host
|
|
1337
|
+
|
|
1338
|
+
# SMTP relay password
|
|
1339
|
+
# Corresponds to the JSON property `password`
|
|
1340
|
+
# @return [String]
|
|
1341
|
+
attr_accessor :password
|
|
1342
|
+
|
|
1343
|
+
# SMTP relay port
|
|
1344
|
+
# Corresponds to the JSON property `port`
|
|
1345
|
+
# @return [Fixnum]
|
|
1346
|
+
attr_accessor :port
|
|
1347
|
+
|
|
1348
|
+
# SMTP security mode.
|
|
1349
|
+
# Corresponds to the JSON property `securityMode`
|
|
1350
|
+
# @return [String]
|
|
1351
|
+
attr_accessor :security_mode
|
|
1352
|
+
|
|
1353
|
+
# Sender email for the SMTP relay
|
|
1354
|
+
# Corresponds to the JSON property `senderEmail`
|
|
1355
|
+
# @return [String]
|
|
1356
|
+
attr_accessor :sender_email
|
|
1357
|
+
|
|
1358
|
+
# SMTP relay username
|
|
1359
|
+
# Corresponds to the JSON property `username`
|
|
1360
|
+
# @return [String]
|
|
1361
|
+
attr_accessor :username
|
|
1362
|
+
|
|
1363
|
+
def initialize(**args)
|
|
1364
|
+
update!(**args)
|
|
1365
|
+
end
|
|
1366
|
+
|
|
1367
|
+
# Update properties of this object
|
|
1368
|
+
def update!(**args)
|
|
1369
|
+
@host = args[:host] if args.key?(:host)
|
|
1370
|
+
@password = args[:password] if args.key?(:password)
|
|
1371
|
+
@port = args[:port] if args.key?(:port)
|
|
1372
|
+
@security_mode = args[:security_mode] if args.key?(:security_mode)
|
|
1373
|
+
@sender_email = args[:sender_email] if args.key?(:sender_email)
|
|
1374
|
+
@username = args[:username] if args.key?(:username)
|
|
1375
|
+
end
|
|
1376
|
+
end
|
|
1377
|
+
|
|
1378
|
+
# The SP's certificate data for IDP to verify the SAMLRequest generated by the
|
|
1379
|
+
# SP.
|
|
1380
|
+
class GoogleCloudIdentitytoolkitAdminV2SpCertificate
|
|
1381
|
+
include Google::Apis::Core::Hashable
|
|
1382
|
+
|
|
1383
|
+
# Timestamp of the cert expiration instance.
|
|
1384
|
+
# Corresponds to the JSON property `expiresAt`
|
|
1385
|
+
# @return [String]
|
|
1386
|
+
attr_accessor :expires_at
|
|
1387
|
+
|
|
1388
|
+
# Self-signed public certificate.
|
|
1389
|
+
# Corresponds to the JSON property `x509Certificate`
|
|
1390
|
+
# @return [String]
|
|
1391
|
+
attr_accessor :x509_certificate
|
|
1392
|
+
|
|
1393
|
+
def initialize(**args)
|
|
1394
|
+
update!(**args)
|
|
1395
|
+
end
|
|
1396
|
+
|
|
1397
|
+
# Update properties of this object
|
|
1398
|
+
def update!(**args)
|
|
1399
|
+
@expires_at = args[:expires_at] if args.key?(:expires_at)
|
|
1400
|
+
@x509_certificate = args[:x509_certificate] if args.key?(:x509_certificate)
|
|
1401
|
+
end
|
|
1402
|
+
end
|
|
1403
|
+
|
|
1404
|
+
# The SAML SP (Service Provider) configuration when the project acts as the
|
|
1405
|
+
# relying party to receive and accept an authentication assertion issued by a
|
|
1406
|
+
# SAML identity provider.
|
|
1407
|
+
class GoogleCloudIdentitytoolkitAdminV2SpConfig
|
|
1408
|
+
include Google::Apis::Core::Hashable
|
|
1409
|
+
|
|
1410
|
+
# Callback URI where responses from IDP are handled.
|
|
1411
|
+
# Corresponds to the JSON property `callbackUri`
|
|
1412
|
+
# @return [String]
|
|
1413
|
+
attr_accessor :callback_uri
|
|
1414
|
+
|
|
1415
|
+
# Output only. Public certificates generated by the server to verify the
|
|
1416
|
+
# signature in SAMLRequest in the SP-initiated flow.
|
|
1417
|
+
# Corresponds to the JSON property `spCertificates`
|
|
1418
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2SpCertificate>]
|
|
1419
|
+
attr_accessor :sp_certificates
|
|
1420
|
+
|
|
1421
|
+
# Unique identifier for all SAML entities.
|
|
1422
|
+
# Corresponds to the JSON property `spEntityId`
|
|
1423
|
+
# @return [String]
|
|
1424
|
+
attr_accessor :sp_entity_id
|
|
1425
|
+
|
|
1426
|
+
def initialize(**args)
|
|
1427
|
+
update!(**args)
|
|
1428
|
+
end
|
|
1429
|
+
|
|
1430
|
+
# Update properties of this object
|
|
1431
|
+
def update!(**args)
|
|
1432
|
+
@callback_uri = args[:callback_uri] if args.key?(:callback_uri)
|
|
1433
|
+
@sp_certificates = args[:sp_certificates] if args.key?(:sp_certificates)
|
|
1434
|
+
@sp_entity_id = args[:sp_entity_id] if args.key?(:sp_entity_id)
|
|
1435
|
+
end
|
|
1436
|
+
end
|
|
1437
|
+
|
|
1438
|
+
# Temporary quota increase / decrease
|
|
1439
|
+
class GoogleCloudIdentitytoolkitAdminV2TemporaryQuota
|
|
1440
|
+
include Google::Apis::Core::Hashable
|
|
1441
|
+
|
|
1442
|
+
# Corresponds to the 'refill_token_count' field in QuotaServer config
|
|
1443
|
+
# Corresponds to the JSON property `quota`
|
|
1444
|
+
# @return [Fixnum]
|
|
1445
|
+
attr_accessor :quota
|
|
1446
|
+
|
|
1447
|
+
# How long this quota will be active for
|
|
1448
|
+
# Corresponds to the JSON property `quotaDuration`
|
|
1449
|
+
# @return [String]
|
|
1450
|
+
attr_accessor :quota_duration
|
|
1451
|
+
|
|
1452
|
+
# When this quota will take affect
|
|
1453
|
+
# Corresponds to the JSON property `startTime`
|
|
1454
|
+
# @return [String]
|
|
1455
|
+
attr_accessor :start_time
|
|
1456
|
+
|
|
1457
|
+
def initialize(**args)
|
|
1458
|
+
update!(**args)
|
|
1459
|
+
end
|
|
1460
|
+
|
|
1461
|
+
# Update properties of this object
|
|
1462
|
+
def update!(**args)
|
|
1463
|
+
@quota = args[:quota] if args.key?(:quota)
|
|
1464
|
+
@quota_duration = args[:quota_duration] if args.key?(:quota_duration)
|
|
1465
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
|
1466
|
+
end
|
|
1467
|
+
end
|
|
1468
|
+
|
|
1469
|
+
# A Tenant contains configuration for the tenant in a multi-tenant project.
|
|
1470
|
+
class GoogleCloudIdentitytoolkitAdminV2Tenant
|
|
1471
|
+
include Google::Apis::Core::Hashable
|
|
1472
|
+
|
|
1473
|
+
# Whether to allow email/password user authentication.
|
|
1474
|
+
# Corresponds to the JSON property `allowPasswordSignup`
|
|
1475
|
+
# @return [Boolean]
|
|
1476
|
+
attr_accessor :allow_password_signup
|
|
1477
|
+
alias_method :allow_password_signup?, :allow_password_signup
|
|
1478
|
+
|
|
1479
|
+
# Whether anonymous users will be auto-deleted after a period of 30 days.
|
|
1480
|
+
# Corresponds to the JSON property `autodeleteAnonymousUsers`
|
|
1481
|
+
# @return [Boolean]
|
|
1482
|
+
attr_accessor :autodelete_anonymous_users
|
|
1483
|
+
alias_method :autodelete_anonymous_users?, :autodelete_anonymous_users
|
|
1484
|
+
|
|
1485
|
+
# Options related to how clients making requests on behalf of a tenant should be
|
|
1486
|
+
# configured.
|
|
1487
|
+
# Corresponds to the JSON property `client`
|
|
1488
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2ClientPermissionConfig]
|
|
1489
|
+
attr_accessor :client
|
|
1490
|
+
|
|
1491
|
+
# Whether authentication is disabled for the tenant. If true, the users under
|
|
1492
|
+
# the disabled tenant are not allowed to sign-in. Admins of the disabled tenant
|
|
1493
|
+
# are not able to manage its users.
|
|
1494
|
+
# Corresponds to the JSON property `disableAuth`
|
|
1495
|
+
# @return [Boolean]
|
|
1496
|
+
attr_accessor :disable_auth
|
|
1497
|
+
alias_method :disable_auth?, :disable_auth
|
|
1498
|
+
|
|
1499
|
+
# Display name of the tenant.
|
|
1500
|
+
# Corresponds to the JSON property `displayName`
|
|
1501
|
+
# @return [String]
|
|
1502
|
+
attr_accessor :display_name
|
|
1503
|
+
|
|
1504
|
+
# Whether to enable anonymous user authentication.
|
|
1505
|
+
# Corresponds to the JSON property `enableAnonymousUser`
|
|
1506
|
+
# @return [Boolean]
|
|
1507
|
+
attr_accessor :enable_anonymous_user
|
|
1508
|
+
alias_method :enable_anonymous_user?, :enable_anonymous_user
|
|
1509
|
+
|
|
1510
|
+
# Whether to enable email link user authentication.
|
|
1511
|
+
# Corresponds to the JSON property `enableEmailLinkSignin`
|
|
1512
|
+
# @return [Boolean]
|
|
1513
|
+
attr_accessor :enable_email_link_signin
|
|
1514
|
+
alias_method :enable_email_link_signin?, :enable_email_link_signin
|
|
1515
|
+
|
|
1516
|
+
# History information of the hash algorithm and key. Different accounts'
|
|
1517
|
+
# passwords may be generated by different version.
|
|
1518
|
+
# Corresponds to the JSON property `hashConfig`
|
|
1519
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2HashConfig]
|
|
1520
|
+
attr_accessor :hash_config
|
|
1521
|
+
|
|
1522
|
+
# Settings that the tenants will inherit from project level.
|
|
1523
|
+
# Corresponds to the JSON property `inheritance`
|
|
1524
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2Inheritance]
|
|
1525
|
+
attr_accessor :inheritance
|
|
1526
|
+
|
|
1527
|
+
# Options related to MultiFactor Authentication for the project.
|
|
1528
|
+
# Corresponds to the JSON property `mfaConfig`
|
|
1529
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitAdminV2MultiFactorAuthConfig]
|
|
1530
|
+
attr_accessor :mfa_config
|
|
1531
|
+
|
|
1532
|
+
# Output only. Resource name of a tenant. For example: "projects/`project-id`/
|
|
1533
|
+
# tenants/`tenant-id`"
|
|
1534
|
+
# Corresponds to the JSON property `name`
|
|
1535
|
+
# @return [String]
|
|
1536
|
+
attr_accessor :name
|
|
1537
|
+
|
|
1538
|
+
# A map of pairs that can be used for MFA. The phone number should be in E.164
|
|
1539
|
+
# format (https://www.itu.int/rec/T-REC-E.164/) and a maximum of 10 pairs can be
|
|
1540
|
+
# added (error will be thrown once exceeded).
|
|
1541
|
+
# Corresponds to the JSON property `testPhoneNumbers`
|
|
1542
|
+
# @return [Hash<String,String>]
|
|
1543
|
+
attr_accessor :test_phone_numbers
|
|
1544
|
+
|
|
1545
|
+
def initialize(**args)
|
|
1546
|
+
update!(**args)
|
|
1547
|
+
end
|
|
1548
|
+
|
|
1549
|
+
# Update properties of this object
|
|
1550
|
+
def update!(**args)
|
|
1551
|
+
@allow_password_signup = args[:allow_password_signup] if args.key?(:allow_password_signup)
|
|
1552
|
+
@autodelete_anonymous_users = args[:autodelete_anonymous_users] if args.key?(:autodelete_anonymous_users)
|
|
1553
|
+
@client = args[:client] if args.key?(:client)
|
|
1554
|
+
@disable_auth = args[:disable_auth] if args.key?(:disable_auth)
|
|
1555
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
|
1556
|
+
@enable_anonymous_user = args[:enable_anonymous_user] if args.key?(:enable_anonymous_user)
|
|
1557
|
+
@enable_email_link_signin = args[:enable_email_link_signin] if args.key?(:enable_email_link_signin)
|
|
1558
|
+
@hash_config = args[:hash_config] if args.key?(:hash_config)
|
|
1559
|
+
@inheritance = args[:inheritance] if args.key?(:inheritance)
|
|
1560
|
+
@mfa_config = args[:mfa_config] if args.key?(:mfa_config)
|
|
1561
|
+
@name = args[:name] if args.key?(:name)
|
|
1562
|
+
@test_phone_numbers = args[:test_phone_numbers] if args.key?(:test_phone_numbers)
|
|
1563
|
+
end
|
|
1564
|
+
end
|
|
1565
|
+
|
|
1566
|
+
# Synchronous Cloud Function with HTTP Trigger
|
|
1567
|
+
class GoogleCloudIdentitytoolkitAdminV2Trigger
|
|
1568
|
+
include Google::Apis::Core::Hashable
|
|
1569
|
+
|
|
1570
|
+
# HTTP URI trigger for the Cloud Function.
|
|
1571
|
+
# Corresponds to the JSON property `functionUri`
|
|
1572
|
+
# @return [String]
|
|
1573
|
+
attr_accessor :function_uri
|
|
1574
|
+
|
|
1575
|
+
# When the trigger was changed.
|
|
1576
|
+
# Corresponds to the JSON property `updateTime`
|
|
1577
|
+
# @return [String]
|
|
1578
|
+
attr_accessor :update_time
|
|
1579
|
+
|
|
1580
|
+
def initialize(**args)
|
|
1581
|
+
update!(**args)
|
|
1582
|
+
end
|
|
1583
|
+
|
|
1584
|
+
# Update properties of this object
|
|
1585
|
+
def update!(**args)
|
|
1586
|
+
@function_uri = args[:function_uri] if args.key?(:function_uri)
|
|
1587
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
|
1588
|
+
end
|
|
1589
|
+
end
|
|
1590
|
+
|
|
1591
|
+
# The information required to auto-retrieve an SMS.
|
|
1592
|
+
class GoogleCloudIdentitytoolkitV2AutoRetrievalInfo
|
|
1593
|
+
include Google::Apis::Core::Hashable
|
|
1594
|
+
|
|
1595
|
+
# The Android app's signature hash for Google Play Service's SMS Retriever API.
|
|
1596
|
+
# Corresponds to the JSON property `appSignatureHash`
|
|
1597
|
+
# @return [String]
|
|
1598
|
+
attr_accessor :app_signature_hash
|
|
1599
|
+
|
|
1600
|
+
def initialize(**args)
|
|
1601
|
+
update!(**args)
|
|
1602
|
+
end
|
|
1603
|
+
|
|
1604
|
+
# Update properties of this object
|
|
1605
|
+
def update!(**args)
|
|
1606
|
+
@app_signature_hash = args[:app_signature_hash] if args.key?(:app_signature_hash)
|
|
1607
|
+
end
|
|
1608
|
+
end
|
|
1609
|
+
|
|
1610
|
+
# Finishes enrolling a second factor for the user.
|
|
1611
|
+
class GoogleCloudIdentitytoolkitV2FinalizeMfaEnrollmentRequest
|
|
1612
|
+
include Google::Apis::Core::Hashable
|
|
1613
|
+
|
|
1614
|
+
# Display name which is entered by users to distinguish between different second
|
|
1615
|
+
# factors with same type or different type.
|
|
1616
|
+
# Corresponds to the JSON property `displayName`
|
|
1617
|
+
# @return [String]
|
|
1618
|
+
attr_accessor :display_name
|
|
1619
|
+
|
|
1620
|
+
# Required. ID token.
|
|
1621
|
+
# Corresponds to the JSON property `idToken`
|
|
1622
|
+
# @return [String]
|
|
1623
|
+
attr_accessor :id_token
|
|
1624
|
+
|
|
1625
|
+
# Phone Verification info for a FinalizeMfa request.
|
|
1626
|
+
# Corresponds to the JSON property `phoneVerificationInfo`
|
|
1627
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2FinalizeMfaPhoneRequestInfo]
|
|
1628
|
+
attr_accessor :phone_verification_info
|
|
1629
|
+
|
|
1630
|
+
# The ID of the Identity Platform tenant that the user enrolling MFA belongs to.
|
|
1631
|
+
# If not set, the user belongs to the default Identity Platform project.
|
|
1632
|
+
# Corresponds to the JSON property `tenantId`
|
|
1633
|
+
# @return [String]
|
|
1634
|
+
attr_accessor :tenant_id
|
|
1635
|
+
|
|
1636
|
+
def initialize(**args)
|
|
1637
|
+
update!(**args)
|
|
1638
|
+
end
|
|
1639
|
+
|
|
1640
|
+
# Update properties of this object
|
|
1641
|
+
def update!(**args)
|
|
1642
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
|
1643
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
1644
|
+
@phone_verification_info = args[:phone_verification_info] if args.key?(:phone_verification_info)
|
|
1645
|
+
@tenant_id = args[:tenant_id] if args.key?(:tenant_id)
|
|
1646
|
+
end
|
|
1647
|
+
end
|
|
1648
|
+
|
|
1649
|
+
# FinalizeMfaEnrollment response.
|
|
1650
|
+
class GoogleCloudIdentitytoolkitV2FinalizeMfaEnrollmentResponse
|
|
1651
|
+
include Google::Apis::Core::Hashable
|
|
1652
|
+
|
|
1653
|
+
# ID token updated to reflect MFA enrollment.
|
|
1654
|
+
# Corresponds to the JSON property `idToken`
|
|
1655
|
+
# @return [String]
|
|
1656
|
+
attr_accessor :id_token
|
|
1657
|
+
|
|
1658
|
+
# Phone Verification info for a FinalizeMfa response.
|
|
1659
|
+
# Corresponds to the JSON property `phoneAuthInfo`
|
|
1660
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2FinalizeMfaPhoneResponseInfo]
|
|
1661
|
+
attr_accessor :phone_auth_info
|
|
1662
|
+
|
|
1663
|
+
# Refresh token updated to reflect MFA enrollment.
|
|
1664
|
+
# Corresponds to the JSON property `refreshToken`
|
|
1665
|
+
# @return [String]
|
|
1666
|
+
attr_accessor :refresh_token
|
|
1667
|
+
|
|
1668
|
+
def initialize(**args)
|
|
1669
|
+
update!(**args)
|
|
1670
|
+
end
|
|
1671
|
+
|
|
1672
|
+
# Update properties of this object
|
|
1673
|
+
def update!(**args)
|
|
1674
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
1675
|
+
@phone_auth_info = args[:phone_auth_info] if args.key?(:phone_auth_info)
|
|
1676
|
+
@refresh_token = args[:refresh_token] if args.key?(:refresh_token)
|
|
1677
|
+
end
|
|
1678
|
+
end
|
|
1679
|
+
|
|
1680
|
+
# Phone Verification info for a FinalizeMfa request.
|
|
1681
|
+
class GoogleCloudIdentitytoolkitV2FinalizeMfaPhoneRequestInfo
|
|
1682
|
+
include Google::Apis::Core::Hashable
|
|
1683
|
+
|
|
1684
|
+
# Android only. Uses for "instant" phone number verification though GmsCore.
|
|
1685
|
+
# Corresponds to the JSON property `androidVerificationProof`
|
|
1686
|
+
# @return [String]
|
|
1687
|
+
attr_accessor :android_verification_proof
|
|
1688
|
+
|
|
1689
|
+
# User-entered verification code.
|
|
1690
|
+
# Corresponds to the JSON property `code`
|
|
1691
|
+
# @return [String]
|
|
1692
|
+
attr_accessor :code
|
|
1693
|
+
|
|
1694
|
+
# Required if Android verification proof is presented.
|
|
1695
|
+
# Corresponds to the JSON property `phoneNumber`
|
|
1696
|
+
# @return [String]
|
|
1697
|
+
attr_accessor :phone_number
|
|
1698
|
+
|
|
1699
|
+
# An opaque string that represents the enrollment session.
|
|
1700
|
+
# Corresponds to the JSON property `sessionInfo`
|
|
1701
|
+
# @return [String]
|
|
1702
|
+
attr_accessor :session_info
|
|
1703
|
+
|
|
1704
|
+
def initialize(**args)
|
|
1705
|
+
update!(**args)
|
|
1706
|
+
end
|
|
1707
|
+
|
|
1708
|
+
# Update properties of this object
|
|
1709
|
+
def update!(**args)
|
|
1710
|
+
@android_verification_proof = args[:android_verification_proof] if args.key?(:android_verification_proof)
|
|
1711
|
+
@code = args[:code] if args.key?(:code)
|
|
1712
|
+
@phone_number = args[:phone_number] if args.key?(:phone_number)
|
|
1713
|
+
@session_info = args[:session_info] if args.key?(:session_info)
|
|
1714
|
+
end
|
|
1715
|
+
end
|
|
1716
|
+
|
|
1717
|
+
# Phone Verification info for a FinalizeMfa response.
|
|
1718
|
+
class GoogleCloudIdentitytoolkitV2FinalizeMfaPhoneResponseInfo
|
|
1719
|
+
include Google::Apis::Core::Hashable
|
|
1720
|
+
|
|
1721
|
+
# Android only. Long-lived replacement for valid code tied to android device.
|
|
1722
|
+
# Corresponds to the JSON property `androidVerificationProof`
|
|
1723
|
+
# @return [String]
|
|
1724
|
+
attr_accessor :android_verification_proof
|
|
1725
|
+
|
|
1726
|
+
# Android only. Expiration time of verification proof in seconds.
|
|
1727
|
+
# Corresponds to the JSON property `androidVerificationProofExpireTime`
|
|
1728
|
+
# @return [String]
|
|
1729
|
+
attr_accessor :android_verification_proof_expire_time
|
|
1730
|
+
|
|
1731
|
+
# For Android verification proof.
|
|
1732
|
+
# Corresponds to the JSON property `phoneNumber`
|
|
1733
|
+
# @return [String]
|
|
1734
|
+
attr_accessor :phone_number
|
|
1735
|
+
|
|
1736
|
+
def initialize(**args)
|
|
1737
|
+
update!(**args)
|
|
1738
|
+
end
|
|
1739
|
+
|
|
1740
|
+
# Update properties of this object
|
|
1741
|
+
def update!(**args)
|
|
1742
|
+
@android_verification_proof = args[:android_verification_proof] if args.key?(:android_verification_proof)
|
|
1743
|
+
@android_verification_proof_expire_time = args[:android_verification_proof_expire_time] if args.key?(:android_verification_proof_expire_time)
|
|
1744
|
+
@phone_number = args[:phone_number] if args.key?(:phone_number)
|
|
1745
|
+
end
|
|
1746
|
+
end
|
|
1747
|
+
|
|
1748
|
+
# Finalizes sign-in by verifying MFA challenge.
|
|
1749
|
+
class GoogleCloudIdentitytoolkitV2FinalizeMfaSignInRequest
|
|
1750
|
+
include Google::Apis::Core::Hashable
|
|
1751
|
+
|
|
1752
|
+
# Required. Pending credential from first factor sign-in.
|
|
1753
|
+
# Corresponds to the JSON property `mfaPendingCredential`
|
|
1754
|
+
# @return [String]
|
|
1755
|
+
attr_accessor :mfa_pending_credential
|
|
1756
|
+
|
|
1757
|
+
# Phone Verification info for a FinalizeMfa request.
|
|
1758
|
+
# Corresponds to the JSON property `phoneVerificationInfo`
|
|
1759
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2FinalizeMfaPhoneRequestInfo]
|
|
1760
|
+
attr_accessor :phone_verification_info
|
|
1761
|
+
|
|
1762
|
+
# The ID of the Identity Platform tenant the user is signing in to. If not set,
|
|
1763
|
+
# the user will sign in to the default Identity Platform project.
|
|
1764
|
+
# Corresponds to the JSON property `tenantId`
|
|
1765
|
+
# @return [String]
|
|
1766
|
+
attr_accessor :tenant_id
|
|
1767
|
+
|
|
1768
|
+
def initialize(**args)
|
|
1769
|
+
update!(**args)
|
|
1770
|
+
end
|
|
1771
|
+
|
|
1772
|
+
# Update properties of this object
|
|
1773
|
+
def update!(**args)
|
|
1774
|
+
@mfa_pending_credential = args[:mfa_pending_credential] if args.key?(:mfa_pending_credential)
|
|
1775
|
+
@phone_verification_info = args[:phone_verification_info] if args.key?(:phone_verification_info)
|
|
1776
|
+
@tenant_id = args[:tenant_id] if args.key?(:tenant_id)
|
|
1777
|
+
end
|
|
1778
|
+
end
|
|
1779
|
+
|
|
1780
|
+
# FinalizeMfaSignIn response.
|
|
1781
|
+
class GoogleCloudIdentitytoolkitV2FinalizeMfaSignInResponse
|
|
1782
|
+
include Google::Apis::Core::Hashable
|
|
1783
|
+
|
|
1784
|
+
# ID token for the authenticated user.
|
|
1785
|
+
# Corresponds to the JSON property `idToken`
|
|
1786
|
+
# @return [String]
|
|
1787
|
+
attr_accessor :id_token
|
|
1788
|
+
|
|
1789
|
+
# Phone Verification info for a FinalizeMfa response.
|
|
1790
|
+
# Corresponds to the JSON property `phoneAuthInfo`
|
|
1791
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2FinalizeMfaPhoneResponseInfo]
|
|
1792
|
+
attr_accessor :phone_auth_info
|
|
1793
|
+
|
|
1794
|
+
# Refresh token for the authenticated user.
|
|
1795
|
+
# Corresponds to the JSON property `refreshToken`
|
|
1796
|
+
# @return [String]
|
|
1797
|
+
attr_accessor :refresh_token
|
|
1798
|
+
|
|
1799
|
+
def initialize(**args)
|
|
1800
|
+
update!(**args)
|
|
1801
|
+
end
|
|
1802
|
+
|
|
1803
|
+
# Update properties of this object
|
|
1804
|
+
def update!(**args)
|
|
1805
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
1806
|
+
@phone_auth_info = args[:phone_auth_info] if args.key?(:phone_auth_info)
|
|
1807
|
+
@refresh_token = args[:refresh_token] if args.key?(:refresh_token)
|
|
1808
|
+
end
|
|
1809
|
+
end
|
|
1810
|
+
|
|
1811
|
+
# Sends MFA enrollment verification SMS for a user.
|
|
1812
|
+
class GoogleCloudIdentitytoolkitV2StartMfaEnrollmentRequest
|
|
1813
|
+
include Google::Apis::Core::Hashable
|
|
1814
|
+
|
|
1815
|
+
# Required. User's ID token.
|
|
1816
|
+
# Corresponds to the JSON property `idToken`
|
|
1817
|
+
# @return [String]
|
|
1818
|
+
attr_accessor :id_token
|
|
1819
|
+
|
|
1820
|
+
# App Verification info for a StartMfa request.
|
|
1821
|
+
# Corresponds to the JSON property `phoneEnrollmentInfo`
|
|
1822
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2StartMfaPhoneRequestInfo]
|
|
1823
|
+
attr_accessor :phone_enrollment_info
|
|
1824
|
+
|
|
1825
|
+
# The ID of the Identity Platform tenant that the user enrolling MFA belongs to.
|
|
1826
|
+
# If not set, the user belongs to the default Identity Platform project.
|
|
1827
|
+
# Corresponds to the JSON property `tenantId`
|
|
1828
|
+
# @return [String]
|
|
1829
|
+
attr_accessor :tenant_id
|
|
1830
|
+
|
|
1831
|
+
def initialize(**args)
|
|
1832
|
+
update!(**args)
|
|
1833
|
+
end
|
|
1834
|
+
|
|
1835
|
+
# Update properties of this object
|
|
1836
|
+
def update!(**args)
|
|
1837
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
1838
|
+
@phone_enrollment_info = args[:phone_enrollment_info] if args.key?(:phone_enrollment_info)
|
|
1839
|
+
@tenant_id = args[:tenant_id] if args.key?(:tenant_id)
|
|
1840
|
+
end
|
|
1841
|
+
end
|
|
1842
|
+
|
|
1843
|
+
# StartMfaEnrollment response.
|
|
1844
|
+
class GoogleCloudIdentitytoolkitV2StartMfaEnrollmentResponse
|
|
1845
|
+
include Google::Apis::Core::Hashable
|
|
1846
|
+
|
|
1847
|
+
# Phone Verification info for a StartMfa response.
|
|
1848
|
+
# Corresponds to the JSON property `phoneSessionInfo`
|
|
1849
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2StartMfaPhoneResponseInfo]
|
|
1850
|
+
attr_accessor :phone_session_info
|
|
1851
|
+
|
|
1852
|
+
def initialize(**args)
|
|
1853
|
+
update!(**args)
|
|
1854
|
+
end
|
|
1855
|
+
|
|
1856
|
+
# Update properties of this object
|
|
1857
|
+
def update!(**args)
|
|
1858
|
+
@phone_session_info = args[:phone_session_info] if args.key?(:phone_session_info)
|
|
1859
|
+
end
|
|
1860
|
+
end
|
|
1861
|
+
|
|
1862
|
+
# App Verification info for a StartMfa request.
|
|
1863
|
+
class GoogleCloudIdentitytoolkitV2StartMfaPhoneRequestInfo
|
|
1864
|
+
include Google::Apis::Core::Hashable
|
|
1865
|
+
|
|
1866
|
+
# The information required to auto-retrieve an SMS.
|
|
1867
|
+
# Corresponds to the JSON property `autoRetrievalInfo`
|
|
1868
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2AutoRetrievalInfo]
|
|
1869
|
+
attr_accessor :auto_retrieval_info
|
|
1870
|
+
|
|
1871
|
+
# iOS only. Receipt of successful app token validation with APNS.
|
|
1872
|
+
# Corresponds to the JSON property `iosReceipt`
|
|
1873
|
+
# @return [String]
|
|
1874
|
+
attr_accessor :ios_receipt
|
|
1875
|
+
|
|
1876
|
+
# iOS only. Secret delivered to iOS app via APNS.
|
|
1877
|
+
# Corresponds to the JSON property `iosSecret`
|
|
1878
|
+
# @return [String]
|
|
1879
|
+
attr_accessor :ios_secret
|
|
1880
|
+
|
|
1881
|
+
# Required for enrollment. Phone number to be enrolled as MFA.
|
|
1882
|
+
# Corresponds to the JSON property `phoneNumber`
|
|
1883
|
+
# @return [String]
|
|
1884
|
+
attr_accessor :phone_number
|
|
1885
|
+
|
|
1886
|
+
# Web only. Recaptcha solution.
|
|
1887
|
+
# Corresponds to the JSON property `recaptchaToken`
|
|
1888
|
+
# @return [String]
|
|
1889
|
+
attr_accessor :recaptcha_token
|
|
1890
|
+
|
|
1891
|
+
# Android only. Used to assert application identity in place of a recaptcha
|
|
1892
|
+
# token. A SafetyNet Token can be generated via the [SafetyNet Android
|
|
1893
|
+
# Attestation API](https://developer.android.com/training/safetynet/attestation.
|
|
1894
|
+
# html), with the Base64 encoding of the `phone_number` field as the nonce.
|
|
1895
|
+
# Corresponds to the JSON property `safetyNetToken`
|
|
1896
|
+
# @return [String]
|
|
1897
|
+
attr_accessor :safety_net_token
|
|
1898
|
+
|
|
1899
|
+
def initialize(**args)
|
|
1900
|
+
update!(**args)
|
|
1901
|
+
end
|
|
1902
|
+
|
|
1903
|
+
# Update properties of this object
|
|
1904
|
+
def update!(**args)
|
|
1905
|
+
@auto_retrieval_info = args[:auto_retrieval_info] if args.key?(:auto_retrieval_info)
|
|
1906
|
+
@ios_receipt = args[:ios_receipt] if args.key?(:ios_receipt)
|
|
1907
|
+
@ios_secret = args[:ios_secret] if args.key?(:ios_secret)
|
|
1908
|
+
@phone_number = args[:phone_number] if args.key?(:phone_number)
|
|
1909
|
+
@recaptcha_token = args[:recaptcha_token] if args.key?(:recaptcha_token)
|
|
1910
|
+
@safety_net_token = args[:safety_net_token] if args.key?(:safety_net_token)
|
|
1911
|
+
end
|
|
1912
|
+
end
|
|
1913
|
+
|
|
1914
|
+
# Phone Verification info for a StartMfa response.
|
|
1915
|
+
class GoogleCloudIdentitytoolkitV2StartMfaPhoneResponseInfo
|
|
1916
|
+
include Google::Apis::Core::Hashable
|
|
1917
|
+
|
|
1918
|
+
# An opaque string that represents the enrollment session.
|
|
1919
|
+
# Corresponds to the JSON property `sessionInfo`
|
|
1920
|
+
# @return [String]
|
|
1921
|
+
attr_accessor :session_info
|
|
1922
|
+
|
|
1923
|
+
def initialize(**args)
|
|
1924
|
+
update!(**args)
|
|
1925
|
+
end
|
|
1926
|
+
|
|
1927
|
+
# Update properties of this object
|
|
1928
|
+
def update!(**args)
|
|
1929
|
+
@session_info = args[:session_info] if args.key?(:session_info)
|
|
1930
|
+
end
|
|
1931
|
+
end
|
|
1932
|
+
|
|
1933
|
+
# Starts multi-factor sign-in by sending the multi-factor auth challenge.
|
|
1934
|
+
class GoogleCloudIdentitytoolkitV2StartMfaSignInRequest
|
|
1935
|
+
include Google::Apis::Core::Hashable
|
|
1936
|
+
|
|
1937
|
+
# Required. MFA enrollment id from the user's list of current MFA enrollments.
|
|
1938
|
+
# Corresponds to the JSON property `mfaEnrollmentId`
|
|
1939
|
+
# @return [String]
|
|
1940
|
+
attr_accessor :mfa_enrollment_id
|
|
1941
|
+
|
|
1942
|
+
# Required. Pending credential from first factor sign-in.
|
|
1943
|
+
# Corresponds to the JSON property `mfaPendingCredential`
|
|
1944
|
+
# @return [String]
|
|
1945
|
+
attr_accessor :mfa_pending_credential
|
|
1946
|
+
|
|
1947
|
+
# App Verification info for a StartMfa request.
|
|
1948
|
+
# Corresponds to the JSON property `phoneSignInInfo`
|
|
1949
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2StartMfaPhoneRequestInfo]
|
|
1950
|
+
attr_accessor :phone_sign_in_info
|
|
1951
|
+
|
|
1952
|
+
# The ID of the Identity Platform tenant the user is signing in to. If not set,
|
|
1953
|
+
# the user will sign in to the default Identity Platform project.
|
|
1954
|
+
# Corresponds to the JSON property `tenantId`
|
|
1955
|
+
# @return [String]
|
|
1956
|
+
attr_accessor :tenant_id
|
|
1957
|
+
|
|
1958
|
+
def initialize(**args)
|
|
1959
|
+
update!(**args)
|
|
1960
|
+
end
|
|
1961
|
+
|
|
1962
|
+
# Update properties of this object
|
|
1963
|
+
def update!(**args)
|
|
1964
|
+
@mfa_enrollment_id = args[:mfa_enrollment_id] if args.key?(:mfa_enrollment_id)
|
|
1965
|
+
@mfa_pending_credential = args[:mfa_pending_credential] if args.key?(:mfa_pending_credential)
|
|
1966
|
+
@phone_sign_in_info = args[:phone_sign_in_info] if args.key?(:phone_sign_in_info)
|
|
1967
|
+
@tenant_id = args[:tenant_id] if args.key?(:tenant_id)
|
|
1968
|
+
end
|
|
1969
|
+
end
|
|
1970
|
+
|
|
1971
|
+
# StartMfaSignIn response.
|
|
1972
|
+
class GoogleCloudIdentitytoolkitV2StartMfaSignInResponse
|
|
1973
|
+
include Google::Apis::Core::Hashable
|
|
1974
|
+
|
|
1975
|
+
# Phone Verification info for a StartMfa response.
|
|
1976
|
+
# Corresponds to the JSON property `phoneResponseInfo`
|
|
1977
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleCloudIdentitytoolkitV2StartMfaPhoneResponseInfo]
|
|
1978
|
+
attr_accessor :phone_response_info
|
|
1979
|
+
|
|
1980
|
+
def initialize(**args)
|
|
1981
|
+
update!(**args)
|
|
1982
|
+
end
|
|
1983
|
+
|
|
1984
|
+
# Update properties of this object
|
|
1985
|
+
def update!(**args)
|
|
1986
|
+
@phone_response_info = args[:phone_response_info] if args.key?(:phone_response_info)
|
|
1987
|
+
end
|
|
1988
|
+
end
|
|
1989
|
+
|
|
1990
|
+
# Withdraws MFA.
|
|
1991
|
+
class GoogleCloudIdentitytoolkitV2WithdrawMfaRequest
|
|
1992
|
+
include Google::Apis::Core::Hashable
|
|
1993
|
+
|
|
1994
|
+
# Required. User's ID token.
|
|
1995
|
+
# Corresponds to the JSON property `idToken`
|
|
1996
|
+
# @return [String]
|
|
1997
|
+
attr_accessor :id_token
|
|
1998
|
+
|
|
1999
|
+
# Required. MFA enrollment id from a current MFA enrollment.
|
|
2000
|
+
# Corresponds to the JSON property `mfaEnrollmentId`
|
|
2001
|
+
# @return [String]
|
|
2002
|
+
attr_accessor :mfa_enrollment_id
|
|
2003
|
+
|
|
2004
|
+
# The ID of the Identity Platform tenant that the user unenrolling MFA belongs
|
|
2005
|
+
# to. If not set, the user belongs to the default Identity Platform project.
|
|
2006
|
+
# Corresponds to the JSON property `tenantId`
|
|
2007
|
+
# @return [String]
|
|
2008
|
+
attr_accessor :tenant_id
|
|
2009
|
+
|
|
2010
|
+
def initialize(**args)
|
|
2011
|
+
update!(**args)
|
|
2012
|
+
end
|
|
2013
|
+
|
|
2014
|
+
# Update properties of this object
|
|
2015
|
+
def update!(**args)
|
|
2016
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
2017
|
+
@mfa_enrollment_id = args[:mfa_enrollment_id] if args.key?(:mfa_enrollment_id)
|
|
2018
|
+
@tenant_id = args[:tenant_id] if args.key?(:tenant_id)
|
|
2019
|
+
end
|
|
2020
|
+
end
|
|
2021
|
+
|
|
2022
|
+
# Withdraws MultiFactorAuth response.
|
|
2023
|
+
class GoogleCloudIdentitytoolkitV2WithdrawMfaResponse
|
|
2024
|
+
include Google::Apis::Core::Hashable
|
|
2025
|
+
|
|
2026
|
+
# ID token updated to reflect removal of the second factor.
|
|
2027
|
+
# Corresponds to the JSON property `idToken`
|
|
2028
|
+
# @return [String]
|
|
2029
|
+
attr_accessor :id_token
|
|
2030
|
+
|
|
2031
|
+
# Refresh token updated to reflect removal of the second factor.
|
|
2032
|
+
# Corresponds to the JSON property `refreshToken`
|
|
2033
|
+
# @return [String]
|
|
2034
|
+
attr_accessor :refresh_token
|
|
2035
|
+
|
|
2036
|
+
def initialize(**args)
|
|
2037
|
+
update!(**args)
|
|
2038
|
+
end
|
|
2039
|
+
|
|
2040
|
+
# Update properties of this object
|
|
2041
|
+
def update!(**args)
|
|
2042
|
+
@id_token = args[:id_token] if args.key?(:id_token)
|
|
2043
|
+
@refresh_token = args[:refresh_token] if args.key?(:refresh_token)
|
|
2044
|
+
end
|
|
2045
|
+
end
|
|
2046
|
+
|
|
2047
|
+
# Specifies the audit configuration for a service. The configuration determines
|
|
2048
|
+
# which permission types are logged, and what identities, if any, are exempted
|
|
2049
|
+
# from logging. An AuditConfig must have one or more AuditLogConfigs. If there
|
|
2050
|
+
# are AuditConfigs for both `allServices` and a specific service, the union of
|
|
2051
|
+
# the two AuditConfigs is used for that service: the log_types specified in each
|
|
2052
|
+
# AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
|
|
2053
|
+
# exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
|
|
2054
|
+
# service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
|
|
2055
|
+
# exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
|
|
2056
|
+
# ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
|
|
2057
|
+
# "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
|
|
2058
|
+
# , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
|
|
2059
|
+
# this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
|
|
2060
|
+
# exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com`
|
|
2061
|
+
# from DATA_WRITE logging.
|
|
2062
|
+
class GoogleIamV1AuditConfig
|
|
2063
|
+
include Google::Apis::Core::Hashable
|
|
2064
|
+
|
|
2065
|
+
# The configuration for logging of each type of permission.
|
|
2066
|
+
# Corresponds to the JSON property `auditLogConfigs`
|
|
2067
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleIamV1AuditLogConfig>]
|
|
2068
|
+
attr_accessor :audit_log_configs
|
|
2069
|
+
|
|
2070
|
+
# Specifies a service that will be enabled for audit logging. For example, `
|
|
2071
|
+
# storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
|
|
2072
|
+
# value that covers all services.
|
|
2073
|
+
# Corresponds to the JSON property `service`
|
|
2074
|
+
# @return [String]
|
|
2075
|
+
attr_accessor :service
|
|
2076
|
+
|
|
2077
|
+
def initialize(**args)
|
|
2078
|
+
update!(**args)
|
|
2079
|
+
end
|
|
2080
|
+
|
|
2081
|
+
# Update properties of this object
|
|
2082
|
+
def update!(**args)
|
|
2083
|
+
@audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
|
|
2084
|
+
@service = args[:service] if args.key?(:service)
|
|
2085
|
+
end
|
|
2086
|
+
end
|
|
2087
|
+
|
|
2088
|
+
# Provides the configuration for logging a type of permissions. Example: ` "
|
|
2089
|
+
# audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
|
|
2090
|
+
# jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
|
|
2091
|
+
# DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
|
|
2092
|
+
# DATA_READ logging.
|
|
2093
|
+
class GoogleIamV1AuditLogConfig
|
|
2094
|
+
include Google::Apis::Core::Hashable
|
|
2095
|
+
|
|
2096
|
+
# Specifies the identities that do not cause logging for this type of permission.
|
|
2097
|
+
# Follows the same format of Binding.members.
|
|
2098
|
+
# Corresponds to the JSON property `exemptedMembers`
|
|
2099
|
+
# @return [Array<String>]
|
|
2100
|
+
attr_accessor :exempted_members
|
|
2101
|
+
|
|
2102
|
+
# The log type that this config enables.
|
|
2103
|
+
# Corresponds to the JSON property `logType`
|
|
2104
|
+
# @return [String]
|
|
2105
|
+
attr_accessor :log_type
|
|
2106
|
+
|
|
2107
|
+
def initialize(**args)
|
|
2108
|
+
update!(**args)
|
|
2109
|
+
end
|
|
2110
|
+
|
|
2111
|
+
# Update properties of this object
|
|
2112
|
+
def update!(**args)
|
|
2113
|
+
@exempted_members = args[:exempted_members] if args.key?(:exempted_members)
|
|
2114
|
+
@log_type = args[:log_type] if args.key?(:log_type)
|
|
2115
|
+
end
|
|
2116
|
+
end
|
|
2117
|
+
|
|
2118
|
+
# Associates `members`, or principals, with a `role`.
|
|
2119
|
+
class GoogleIamV1Binding
|
|
2120
|
+
include Google::Apis::Core::Hashable
|
|
2121
|
+
|
|
2122
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
|
2123
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
|
2124
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
|
2125
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
|
2126
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
|
2127
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
|
2128
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
|
2129
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
|
2130
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
|
2131
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
|
2132
|
+
# string" description: "Create a notification string with a timestamp."
|
|
2133
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
|
2134
|
+
# exact variables and functions that may be referenced within an expression are
|
|
2135
|
+
# determined by the service that evaluates it. See the service documentation for
|
|
2136
|
+
# additional information.
|
|
2137
|
+
# Corresponds to the JSON property `condition`
|
|
2138
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleTypeExpr]
|
|
2139
|
+
attr_accessor :condition
|
|
2140
|
+
|
|
2141
|
+
# Specifies the principals requesting access for a Google Cloud resource. `
|
|
2142
|
+
# members` can have the following values: * `allUsers`: A special identifier
|
|
2143
|
+
# that represents anyone who is on the internet; with or without a Google
|
|
2144
|
+
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
|
2145
|
+
# anyone who is authenticated with a Google account or a service account. * `
|
|
2146
|
+
# user:`emailid``: An email address that represents a specific Google account.
|
|
2147
|
+
# For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
|
|
2148
|
+
# address that represents a Google service account. For example, `my-other-app@
|
|
2149
|
+
# appspot.gserviceaccount.com`. * `serviceAccount:`projectid`.svc.id.goog[`
|
|
2150
|
+
# namespace`/`kubernetes-sa`]`: An identifier for a [Kubernetes service account](
|
|
2151
|
+
# https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-
|
|
2152
|
+
# accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`
|
|
2153
|
+
# . * `group:`emailid``: An email address that represents a Google group. For
|
|
2154
|
+
# example, `admins@example.com`. * `deleted:user:`emailid`?uid=`uniqueid``: An
|
|
2155
|
+
# email address (plus unique identifier) representing a user that has been
|
|
2156
|
+
# recently deleted. For example, `alice@example.com?uid=123456789012345678901`.
|
|
2157
|
+
# If the user is recovered, this value reverts to `user:`emailid`` and the
|
|
2158
|
+
# recovered user retains the role in the binding. * `deleted:serviceAccount:`
|
|
2159
|
+
# emailid`?uid=`uniqueid``: An email address (plus unique identifier)
|
|
2160
|
+
# representing a service account that has been recently deleted. For example, `
|
|
2161
|
+
# my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
|
|
2162
|
+
# service account is undeleted, this value reverts to `serviceAccount:`emailid``
|
|
2163
|
+
# and the undeleted service account retains the role in the binding. * `deleted:
|
|
2164
|
+
# group:`emailid`?uid=`uniqueid``: An email address (plus unique identifier)
|
|
2165
|
+
# representing a Google group that has been recently deleted. For example, `
|
|
2166
|
+
# admins@example.com?uid=123456789012345678901`. If the group is recovered, this
|
|
2167
|
+
# value reverts to `group:`emailid`` and the recovered group retains the role in
|
|
2168
|
+
# the binding. * `domain:`domain``: The G Suite domain (primary) that represents
|
|
2169
|
+
# all the users of that domain. For example, `google.com` or `example.com`.
|
|
2170
|
+
# Corresponds to the JSON property `members`
|
|
2171
|
+
# @return [Array<String>]
|
|
2172
|
+
attr_accessor :members
|
|
2173
|
+
|
|
2174
|
+
# Role that is assigned to the list of `members`, or principals. For example, `
|
|
2175
|
+
# roles/viewer`, `roles/editor`, or `roles/owner`.
|
|
2176
|
+
# Corresponds to the JSON property `role`
|
|
2177
|
+
# @return [String]
|
|
2178
|
+
attr_accessor :role
|
|
2179
|
+
|
|
2180
|
+
def initialize(**args)
|
|
2181
|
+
update!(**args)
|
|
2182
|
+
end
|
|
2183
|
+
|
|
2184
|
+
# Update properties of this object
|
|
2185
|
+
def update!(**args)
|
|
2186
|
+
@condition = args[:condition] if args.key?(:condition)
|
|
2187
|
+
@members = args[:members] if args.key?(:members)
|
|
2188
|
+
@role = args[:role] if args.key?(:role)
|
|
2189
|
+
end
|
|
2190
|
+
end
|
|
2191
|
+
|
|
2192
|
+
# Request message for `GetIamPolicy` method.
|
|
2193
|
+
class GoogleIamV1GetIamPolicyRequest
|
|
2194
|
+
include Google::Apis::Core::Hashable
|
|
2195
|
+
|
|
2196
|
+
# Encapsulates settings provided to GetIamPolicy.
|
|
2197
|
+
# Corresponds to the JSON property `options`
|
|
2198
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleIamV1GetPolicyOptions]
|
|
2199
|
+
attr_accessor :options
|
|
2200
|
+
|
|
2201
|
+
def initialize(**args)
|
|
2202
|
+
update!(**args)
|
|
2203
|
+
end
|
|
2204
|
+
|
|
2205
|
+
# Update properties of this object
|
|
2206
|
+
def update!(**args)
|
|
2207
|
+
@options = args[:options] if args.key?(:options)
|
|
2208
|
+
end
|
|
2209
|
+
end
|
|
2210
|
+
|
|
2211
|
+
# Encapsulates settings provided to GetIamPolicy.
|
|
2212
|
+
class GoogleIamV1GetPolicyOptions
|
|
2213
|
+
include Google::Apis::Core::Hashable
|
|
2214
|
+
|
|
2215
|
+
# Optional. The maximum policy version that will be used to format the policy.
|
|
2216
|
+
# Valid values are 0, 1, and 3. Requests specifying an invalid value will be
|
|
2217
|
+
# rejected. Requests for policies with any conditional role bindings must
|
|
2218
|
+
# specify version 3. Policies with no conditional role bindings may specify any
|
|
2219
|
+
# valid value or leave the field unset. The policy in the response might use the
|
|
2220
|
+
# policy version that you specified, or it might use a lower policy version. For
|
|
2221
|
+
# example, if you specify version 3, but the policy has no conditional role
|
|
2222
|
+
# bindings, the response uses version 1. To learn which resources support
|
|
2223
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
|
2224
|
+
# google.com/iam/help/conditions/resource-policies).
|
|
2225
|
+
# Corresponds to the JSON property `requestedPolicyVersion`
|
|
2226
|
+
# @return [Fixnum]
|
|
2227
|
+
attr_accessor :requested_policy_version
|
|
2228
|
+
|
|
2229
|
+
def initialize(**args)
|
|
2230
|
+
update!(**args)
|
|
2231
|
+
end
|
|
2232
|
+
|
|
2233
|
+
# Update properties of this object
|
|
2234
|
+
def update!(**args)
|
|
2235
|
+
@requested_policy_version = args[:requested_policy_version] if args.key?(:requested_policy_version)
|
|
2236
|
+
end
|
|
2237
|
+
end
|
|
2238
|
+
|
|
2239
|
+
# An Identity and Access Management (IAM) policy, which specifies access
|
|
2240
|
+
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
|
2241
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
|
2242
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
|
2243
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
|
2244
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
|
2245
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
|
2246
|
+
# logical expression that allows access to a resource only if the expression
|
|
2247
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
|
2248
|
+
# the request, the resource, or both. To learn which resources support
|
|
2249
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
|
2250
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
|
2251
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
|
2252
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
|
2253
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
|
2254
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
|
2255
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
|
2256
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
|
2257
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
|
2258
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
|
2259
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
|
2260
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
|
2261
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
|
2262
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
|
2263
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
|
2264
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
|
2265
|
+
# cloud.google.com/iam/docs/).
|
|
2266
|
+
class GoogleIamV1Policy
|
|
2267
|
+
include Google::Apis::Core::Hashable
|
|
2268
|
+
|
|
2269
|
+
# Specifies cloud audit logging configuration for this policy.
|
|
2270
|
+
# Corresponds to the JSON property `auditConfigs`
|
|
2271
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleIamV1AuditConfig>]
|
|
2272
|
+
attr_accessor :audit_configs
|
|
2273
|
+
|
|
2274
|
+
# Associates a list of `members`, or principals, with a `role`. Optionally, may
|
|
2275
|
+
# specify a `condition` that determines how and when the `bindings` are applied.
|
|
2276
|
+
# Each of the `bindings` must contain at least one principal. The `bindings` in
|
|
2277
|
+
# a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
|
|
2278
|
+
# can be Google groups. Each occurrence of a principal counts towards these
|
|
2279
|
+
# limits. For example, if the `bindings` grant 50 different roles to `user:alice@
|
|
2280
|
+
# example.com`, and not to any other principal, then you can add another 1,450
|
|
2281
|
+
# principals to the `bindings` in the `Policy`.
|
|
2282
|
+
# Corresponds to the JSON property `bindings`
|
|
2283
|
+
# @return [Array<Google::Apis::IdentitytoolkitV2::GoogleIamV1Binding>]
|
|
2284
|
+
attr_accessor :bindings
|
|
2285
|
+
|
|
2286
|
+
# `etag` is used for optimistic concurrency control as a way to help prevent
|
|
2287
|
+
# simultaneous updates of a policy from overwriting each other. It is strongly
|
|
2288
|
+
# suggested that systems make use of the `etag` in the read-modify-write cycle
|
|
2289
|
+
# to perform policy updates in order to avoid race conditions: An `etag` is
|
|
2290
|
+
# returned in the response to `getIamPolicy`, and systems are expected to put
|
|
2291
|
+
# that etag in the request to `setIamPolicy` to ensure that their change will be
|
|
2292
|
+
# applied to the same version of the policy. **Important:** If you use IAM
|
|
2293
|
+
# Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
|
|
2294
|
+
# If you omit this field, then IAM allows you to overwrite a version `3` policy
|
|
2295
|
+
# with a version `1` policy, and all of the conditions in the version `3` policy
|
|
2296
|
+
# are lost.
|
|
2297
|
+
# Corresponds to the JSON property `etag`
|
|
2298
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
2299
|
+
# @return [String]
|
|
2300
|
+
attr_accessor :etag
|
|
2301
|
+
|
|
2302
|
+
# Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
|
|
2303
|
+
# Requests that specify an invalid value are rejected. Any operation that
|
|
2304
|
+
# affects conditional role bindings must specify version `3`. This requirement
|
|
2305
|
+
# applies to the following operations: * Getting a policy that includes a
|
|
2306
|
+
# conditional role binding * Adding a conditional role binding to a policy *
|
|
2307
|
+
# Changing a conditional role binding in a policy * Removing any role binding,
|
|
2308
|
+
# with or without a condition, from a policy that includes conditions **
|
|
2309
|
+
# Important:** If you use IAM Conditions, you must include the `etag` field
|
|
2310
|
+
# whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
|
|
2311
|
+
# to overwrite a version `3` policy with a version `1` policy, and all of the
|
|
2312
|
+
# conditions in the version `3` policy are lost. If a policy does not include
|
|
2313
|
+
# any conditions, operations on that policy may specify any valid version or
|
|
2314
|
+
# leave the field unset. To learn which resources support conditions in their
|
|
2315
|
+
# IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
|
|
2316
|
+
# conditions/resource-policies).
|
|
2317
|
+
# Corresponds to the JSON property `version`
|
|
2318
|
+
# @return [Fixnum]
|
|
2319
|
+
attr_accessor :version
|
|
2320
|
+
|
|
2321
|
+
def initialize(**args)
|
|
2322
|
+
update!(**args)
|
|
2323
|
+
end
|
|
2324
|
+
|
|
2325
|
+
# Update properties of this object
|
|
2326
|
+
def update!(**args)
|
|
2327
|
+
@audit_configs = args[:audit_configs] if args.key?(:audit_configs)
|
|
2328
|
+
@bindings = args[:bindings] if args.key?(:bindings)
|
|
2329
|
+
@etag = args[:etag] if args.key?(:etag)
|
|
2330
|
+
@version = args[:version] if args.key?(:version)
|
|
2331
|
+
end
|
|
2332
|
+
end
|
|
2333
|
+
|
|
2334
|
+
# Request message for `SetIamPolicy` method.
|
|
2335
|
+
class GoogleIamV1SetIamPolicyRequest
|
|
2336
|
+
include Google::Apis::Core::Hashable
|
|
2337
|
+
|
|
2338
|
+
# An Identity and Access Management (IAM) policy, which specifies access
|
|
2339
|
+
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
|
2340
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
|
2341
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
|
2342
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
|
2343
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
|
2344
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
|
2345
|
+
# logical expression that allows access to a resource only if the expression
|
|
2346
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
|
2347
|
+
# the request, the resource, or both. To learn which resources support
|
|
2348
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
|
2349
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
|
2350
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
|
2351
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
|
2352
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
|
2353
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
|
2354
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
|
2355
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
|
2356
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
|
2357
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
|
2358
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
|
2359
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
|
2360
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
|
2361
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
|
2362
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
|
2363
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
|
2364
|
+
# cloud.google.com/iam/docs/).
|
|
2365
|
+
# Corresponds to the JSON property `policy`
|
|
2366
|
+
# @return [Google::Apis::IdentitytoolkitV2::GoogleIamV1Policy]
|
|
2367
|
+
attr_accessor :policy
|
|
2368
|
+
|
|
2369
|
+
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
|
|
2370
|
+
# the fields in the mask will be modified. If no mask is provided, the following
|
|
2371
|
+
# default mask is used: `paths: "bindings, etag"`
|
|
2372
|
+
# Corresponds to the JSON property `updateMask`
|
|
2373
|
+
# @return [String]
|
|
2374
|
+
attr_accessor :update_mask
|
|
2375
|
+
|
|
2376
|
+
def initialize(**args)
|
|
2377
|
+
update!(**args)
|
|
2378
|
+
end
|
|
2379
|
+
|
|
2380
|
+
# Update properties of this object
|
|
2381
|
+
def update!(**args)
|
|
2382
|
+
@policy = args[:policy] if args.key?(:policy)
|
|
2383
|
+
@update_mask = args[:update_mask] if args.key?(:update_mask)
|
|
2384
|
+
end
|
|
2385
|
+
end
|
|
2386
|
+
|
|
2387
|
+
# Request message for `TestIamPermissions` method.
|
|
2388
|
+
class GoogleIamV1TestIamPermissionsRequest
|
|
2389
|
+
include Google::Apis::Core::Hashable
|
|
2390
|
+
|
|
2391
|
+
# The set of permissions to check for the `resource`. Permissions with wildcards
|
|
2392
|
+
# (such as `*` or `storage.*`) are not allowed. For more information see [IAM
|
|
2393
|
+
# Overview](https://cloud.google.com/iam/docs/overview#permissions).
|
|
2394
|
+
# Corresponds to the JSON property `permissions`
|
|
2395
|
+
# @return [Array<String>]
|
|
2396
|
+
attr_accessor :permissions
|
|
2397
|
+
|
|
2398
|
+
def initialize(**args)
|
|
2399
|
+
update!(**args)
|
|
2400
|
+
end
|
|
2401
|
+
|
|
2402
|
+
# Update properties of this object
|
|
2403
|
+
def update!(**args)
|
|
2404
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
2405
|
+
end
|
|
2406
|
+
end
|
|
2407
|
+
|
|
2408
|
+
# Response message for `TestIamPermissions` method.
|
|
2409
|
+
class GoogleIamV1TestIamPermissionsResponse
|
|
2410
|
+
include Google::Apis::Core::Hashable
|
|
2411
|
+
|
|
2412
|
+
# A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
|
|
2413
|
+
# Corresponds to the JSON property `permissions`
|
|
2414
|
+
# @return [Array<String>]
|
|
2415
|
+
attr_accessor :permissions
|
|
2416
|
+
|
|
2417
|
+
def initialize(**args)
|
|
2418
|
+
update!(**args)
|
|
2419
|
+
end
|
|
2420
|
+
|
|
2421
|
+
# Update properties of this object
|
|
2422
|
+
def update!(**args)
|
|
2423
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
|
2424
|
+
end
|
|
2425
|
+
end
|
|
2426
|
+
|
|
2427
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
|
2428
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
|
2429
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
|
2430
|
+
# protobuf.Empty) returns (google.protobuf.Empty); `
|
|
2431
|
+
class GoogleProtobufEmpty
|
|
2432
|
+
include Google::Apis::Core::Hashable
|
|
2433
|
+
|
|
2434
|
+
def initialize(**args)
|
|
2435
|
+
update!(**args)
|
|
2436
|
+
end
|
|
2437
|
+
|
|
2438
|
+
# Update properties of this object
|
|
2439
|
+
def update!(**args)
|
|
2440
|
+
end
|
|
2441
|
+
end
|
|
2442
|
+
|
|
2443
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
|
2444
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
|
2445
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
|
2446
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
|
2447
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
|
2448
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
|
2449
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
|
2450
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
|
2451
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
|
2452
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
|
2453
|
+
# string" description: "Create a notification string with a timestamp."
|
|
2454
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
|
2455
|
+
# exact variables and functions that may be referenced within an expression are
|
|
2456
|
+
# determined by the service that evaluates it. See the service documentation for
|
|
2457
|
+
# additional information.
|
|
2458
|
+
class GoogleTypeExpr
|
|
2459
|
+
include Google::Apis::Core::Hashable
|
|
2460
|
+
|
|
2461
|
+
# Optional. Description of the expression. This is a longer text which describes
|
|
2462
|
+
# the expression, e.g. when hovered over it in a UI.
|
|
2463
|
+
# Corresponds to the JSON property `description`
|
|
2464
|
+
# @return [String]
|
|
2465
|
+
attr_accessor :description
|
|
2466
|
+
|
|
2467
|
+
# Textual representation of an expression in Common Expression Language syntax.
|
|
2468
|
+
# Corresponds to the JSON property `expression`
|
|
2469
|
+
# @return [String]
|
|
2470
|
+
attr_accessor :expression
|
|
2471
|
+
|
|
2472
|
+
# Optional. String indicating the location of the expression for error reporting,
|
|
2473
|
+
# e.g. a file name and a position in the file.
|
|
2474
|
+
# Corresponds to the JSON property `location`
|
|
2475
|
+
# @return [String]
|
|
2476
|
+
attr_accessor :location
|
|
2477
|
+
|
|
2478
|
+
# Optional. Title for the expression, i.e. a short string describing its purpose.
|
|
2479
|
+
# This can be used e.g. in UIs which allow to enter the expression.
|
|
2480
|
+
# Corresponds to the JSON property `title`
|
|
2481
|
+
# @return [String]
|
|
2482
|
+
attr_accessor :title
|
|
2483
|
+
|
|
2484
|
+
def initialize(**args)
|
|
2485
|
+
update!(**args)
|
|
2486
|
+
end
|
|
2487
|
+
|
|
2488
|
+
# Update properties of this object
|
|
2489
|
+
def update!(**args)
|
|
2490
|
+
@description = args[:description] if args.key?(:description)
|
|
2491
|
+
@expression = args[:expression] if args.key?(:expression)
|
|
2492
|
+
@location = args[:location] if args.key?(:location)
|
|
2493
|
+
@title = args[:title] if args.key?(:title)
|
|
2494
|
+
end
|
|
2495
|
+
end
|
|
2496
|
+
end
|
|
2497
|
+
end
|
|
2498
|
+
end
|