google-cloud-iap-v1 0.1.1 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +1 -1
- data/AUTHENTICATION.md +7 -25
- data/README.md +1 -1
- data/lib/google/cloud/iap/v1/identity_aware_proxy_admin_service/client.rb +108 -17
- data/lib/google/cloud/iap/v1/identity_aware_proxy_o_auth_service/client.rb +166 -24
- data/lib/google/cloud/iap/v1/service_pb.rb +2 -2
- data/lib/google/cloud/iap/v1/service_services_pb.rb +2 -2
- data/lib/google/cloud/iap/v1/version.rb +1 -1
- data/lib/google/cloud/iap/v1.rb +2 -0
- data/proto_docs/google/api/resource.rb +10 -71
- data/proto_docs/google/iam/v1/iam_policy.rb +8 -1
- data/proto_docs/google/iam/v1/options.rb +14 -4
- data/proto_docs/google/iam/v1/policy.rb +208 -38
- metadata +7 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f50fdb004bb7ea5e1b2806c53a60957c408ac75fafcf5e1ed97ea8b12bff5a6e
|
4
|
+
data.tar.gz: 4f56167db7bc16ffbee189b05e6ca928290a2ed8578f656a8c82320a1b9059b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8f2f9bd3a4a0cb71377139a88c17ddcb9d5ae09b543ac1051109f3734868611e65163bfa52990c4f937cd160840fdc2720c13c3515b37f3936158796e7aa3b58
|
7
|
+
data.tar.gz: 9ebb229221d9c8e4b26381003b06517fd16cfdad6fdbb8b0641223f2c4a23cc7dae8b1367f6db35493ffeef1849edc33f52b365b326545f90996dee77b14f68f
|
data/.yardopts
CHANGED
data/AUTHENTICATION.md
CHANGED
@@ -120,15 +120,6 @@ To configure your system for this, simply:
|
|
120
120
|
**NOTE:** This is _not_ recommended for running in production. The Cloud SDK
|
121
121
|
*should* only be used during development.
|
122
122
|
|
123
|
-
[gce-how-to]: https://cloud.google.com/compute/docs/authentication#using
|
124
|
-
[dev-console]: https://console.cloud.google.com/project
|
125
|
-
|
126
|
-
[enable-apis]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/enable-apis.png
|
127
|
-
|
128
|
-
[create-new-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account.png
|
129
|
-
[create-new-service-account-existing-keys]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account-existing-keys.png
|
130
|
-
[reuse-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/reuse-service-account.png
|
131
|
-
|
132
123
|
## Creating a Service Account
|
133
124
|
|
134
125
|
Google Cloud requires **Service Account Credentials** to
|
@@ -139,31 +130,22 @@ If you are not running this client within
|
|
139
130
|
[Google Cloud Platform environments](#google-cloud-platform-environments), you
|
140
131
|
need a Google Developers service account.
|
141
132
|
|
142
|
-
1. Visit the [Google
|
133
|
+
1. Visit the [Google Cloud Console](https://console.cloud.google.com/project).
|
143
134
|
2. Create a new project or click on an existing project.
|
144
|
-
3. Activate the
|
135
|
+
3. Activate the menu in the upper left and select **APIs & Services**. From
|
145
136
|
here, you will enable the APIs that your application requires.
|
146
137
|
|
147
|
-
![Enable the APIs that your application requires][enable-apis]
|
148
|
-
|
149
138
|
*Note: You may need to enable billing in order to use these services.*
|
150
139
|
|
151
140
|
4. Select **Credentials** from the side navigation.
|
152
141
|
|
153
|
-
|
154
|
-
|
155
|
-
![Create a new service account][create-new-service-account]
|
156
|
-
|
157
|
-
![Create a new service account With Existing Keys][create-new-service-account-existing-keys]
|
158
|
-
|
159
|
-
Find the "Add credentials" drop down and select "Service account" to be
|
160
|
-
guided through downloading a new JSON key file.
|
142
|
+
Find the "Create credentials" drop down near the top of the page, and select
|
143
|
+
"Service account" to be guided through downloading a new JSON key file.
|
161
144
|
|
162
145
|
If you want to re-use an existing service account, you can easily generate a
|
163
|
-
new key file. Just select the account you wish to re-use,
|
164
|
-
|
165
|
-
|
166
|
-
![Re-use an existing service account][reuse-service-account]
|
146
|
+
new key file. Just select the account you wish to re-use, click the pencil
|
147
|
+
tool on the right side to edit the service account, select the **Keys** tab,
|
148
|
+
and then select **Add Key**.
|
167
149
|
|
168
150
|
The key file you download will be used by this library to authenticate API
|
169
151
|
requests and should be stored in a secure location.
|
data/README.md
CHANGED
@@ -37,7 +37,7 @@ request = ::Google::Iam::V1::SetIamPolicyRequest.new # (request fields as keywor
|
|
37
37
|
response = client.set_iam_policy request
|
38
38
|
```
|
39
39
|
|
40
|
-
View the [Client Library Documentation](https://
|
40
|
+
View the [Client Library Documentation](https://cloud.google.com/ruby/docs/reference/google-cloud-iap-v1/latest)
|
41
41
|
for class and method documentation.
|
42
42
|
|
43
43
|
See also the [Product Documentation](https://cloud.google.com/iap/)
|
@@ -160,7 +160,7 @@ module Google
|
|
160
160
|
# @param options [::Gapic::CallOptions, ::Hash]
|
161
161
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
162
162
|
#
|
163
|
-
# @overload set_iam_policy(resource: nil, policy: nil)
|
163
|
+
# @overload set_iam_policy(resource: nil, policy: nil, update_mask: nil)
|
164
164
|
# Pass arguments to `set_iam_policy` via keyword arguments. Note that at
|
165
165
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
166
166
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
@@ -173,6 +173,12 @@ module Google
|
|
173
173
|
# the policy is limited to a few 10s of KB. An empty policy is a
|
174
174
|
# valid policy but certain Cloud Platform services (such as Projects)
|
175
175
|
# might reject them.
|
176
|
+
# @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
|
177
|
+
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
|
178
|
+
# the fields in the mask will be modified. If no mask is provided, the
|
179
|
+
# following default mask is used:
|
180
|
+
#
|
181
|
+
# `paths: "bindings, etag"`
|
176
182
|
#
|
177
183
|
# @yield [response, operation] Access the result along with the RPC operation
|
178
184
|
# @yieldparam response [::Google::Iam::V1::Policy]
|
@@ -182,6 +188,21 @@ module Google
|
|
182
188
|
#
|
183
189
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
184
190
|
#
|
191
|
+
# @example Basic example
|
192
|
+
# require "google/cloud/iap/v1"
|
193
|
+
#
|
194
|
+
# # Create a client object. The client can be reused for multiple calls.
|
195
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Client.new
|
196
|
+
#
|
197
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
198
|
+
# request = Google::Iam::V1::SetIamPolicyRequest.new
|
199
|
+
#
|
200
|
+
# # Call the set_iam_policy method.
|
201
|
+
# result = client.set_iam_policy request
|
202
|
+
#
|
203
|
+
# # The returned object is of type Google::Iam::V1::Policy.
|
204
|
+
# p result
|
205
|
+
#
|
185
206
|
def set_iam_policy request, options = nil
|
186
207
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
187
208
|
|
@@ -199,9 +220,11 @@ module Google
|
|
199
220
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
200
221
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
201
222
|
|
202
|
-
header_params = {
|
203
|
-
|
204
|
-
|
223
|
+
header_params = {}
|
224
|
+
if request.resource
|
225
|
+
header_params["resource"] = request.resource
|
226
|
+
end
|
227
|
+
|
205
228
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
206
229
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
207
230
|
|
@@ -247,7 +270,7 @@ module Google
|
|
247
270
|
# See the operation documentation for the appropriate value for this field.
|
248
271
|
# @param options [::Google::Iam::V1::GetPolicyOptions, ::Hash]
|
249
272
|
# OPTIONAL: A `GetPolicyOptions` object for specifying options to
|
250
|
-
# `GetIamPolicy`.
|
273
|
+
# `GetIamPolicy`.
|
251
274
|
#
|
252
275
|
# @yield [response, operation] Access the result along with the RPC operation
|
253
276
|
# @yieldparam response [::Google::Iam::V1::Policy]
|
@@ -257,6 +280,21 @@ module Google
|
|
257
280
|
#
|
258
281
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
259
282
|
#
|
283
|
+
# @example Basic example
|
284
|
+
# require "google/cloud/iap/v1"
|
285
|
+
#
|
286
|
+
# # Create a client object. The client can be reused for multiple calls.
|
287
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Client.new
|
288
|
+
#
|
289
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
290
|
+
# request = Google::Iam::V1::GetIamPolicyRequest.new
|
291
|
+
#
|
292
|
+
# # Call the get_iam_policy method.
|
293
|
+
# result = client.get_iam_policy request
|
294
|
+
#
|
295
|
+
# # The returned object is of type Google::Iam::V1::Policy.
|
296
|
+
# p result
|
297
|
+
#
|
260
298
|
def get_iam_policy request, options = nil
|
261
299
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
262
300
|
|
@@ -274,9 +312,11 @@ module Google
|
|
274
312
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
275
313
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
276
314
|
|
277
|
-
header_params = {
|
278
|
-
|
279
|
-
|
315
|
+
header_params = {}
|
316
|
+
if request.resource
|
317
|
+
header_params["resource"] = request.resource
|
318
|
+
end
|
319
|
+
|
280
320
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
281
321
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
282
322
|
|
@@ -334,6 +374,21 @@ module Google
|
|
334
374
|
#
|
335
375
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
336
376
|
#
|
377
|
+
# @example Basic example
|
378
|
+
# require "google/cloud/iap/v1"
|
379
|
+
#
|
380
|
+
# # Create a client object. The client can be reused for multiple calls.
|
381
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Client.new
|
382
|
+
#
|
383
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
384
|
+
# request = Google::Iam::V1::TestIamPermissionsRequest.new
|
385
|
+
#
|
386
|
+
# # Call the test_iam_permissions method.
|
387
|
+
# result = client.test_iam_permissions request
|
388
|
+
#
|
389
|
+
# # The returned object is of type Google::Iam::V1::TestIamPermissionsResponse.
|
390
|
+
# p result
|
391
|
+
#
|
337
392
|
def test_iam_permissions request, options = nil
|
338
393
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
339
394
|
|
@@ -351,9 +406,11 @@ module Google
|
|
351
406
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
352
407
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
353
408
|
|
354
|
-
header_params = {
|
355
|
-
|
356
|
-
|
409
|
+
header_params = {}
|
410
|
+
if request.resource
|
411
|
+
header_params["resource"] = request.resource
|
412
|
+
end
|
413
|
+
|
357
414
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
358
415
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
359
416
|
|
@@ -404,6 +461,21 @@ module Google
|
|
404
461
|
#
|
405
462
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
406
463
|
#
|
464
|
+
# @example Basic example
|
465
|
+
# require "google/cloud/iap/v1"
|
466
|
+
#
|
467
|
+
# # Create a client object. The client can be reused for multiple calls.
|
468
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Client.new
|
469
|
+
#
|
470
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
471
|
+
# request = Google::Cloud::Iap::V1::GetIapSettingsRequest.new
|
472
|
+
#
|
473
|
+
# # Call the get_iap_settings method.
|
474
|
+
# result = client.get_iap_settings request
|
475
|
+
#
|
476
|
+
# # The returned object is of type Google::Cloud::Iap::V1::IapSettings.
|
477
|
+
# p result
|
478
|
+
#
|
407
479
|
def get_iap_settings request, options = nil
|
408
480
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
409
481
|
|
@@ -421,9 +493,11 @@ module Google
|
|
421
493
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
422
494
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
423
495
|
|
424
|
-
header_params = {
|
425
|
-
|
426
|
-
|
496
|
+
header_params = {}
|
497
|
+
if request.name
|
498
|
+
header_params["name"] = request.name
|
499
|
+
end
|
500
|
+
|
427
501
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
428
502
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
429
503
|
|
@@ -479,6 +553,21 @@ module Google
|
|
479
553
|
#
|
480
554
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
481
555
|
#
|
556
|
+
# @example Basic example
|
557
|
+
# require "google/cloud/iap/v1"
|
558
|
+
#
|
559
|
+
# # Create a client object. The client can be reused for multiple calls.
|
560
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Client.new
|
561
|
+
#
|
562
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
563
|
+
# request = Google::Cloud::Iap::V1::UpdateIapSettingsRequest.new
|
564
|
+
#
|
565
|
+
# # Call the update_iap_settings method.
|
566
|
+
# result = client.update_iap_settings request
|
567
|
+
#
|
568
|
+
# # The returned object is of type Google::Cloud::Iap::V1::IapSettings.
|
569
|
+
# p result
|
570
|
+
#
|
482
571
|
def update_iap_settings request, options = nil
|
483
572
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
484
573
|
|
@@ -496,9 +585,11 @@ module Google
|
|
496
585
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
497
586
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
498
587
|
|
499
|
-
header_params = {
|
500
|
-
|
501
|
-
|
588
|
+
header_params = {}
|
589
|
+
if request.iap_settings&.name
|
590
|
+
header_params["iap_settings.name"] = request.iap_settings.name
|
591
|
+
end
|
592
|
+
|
502
593
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
503
594
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
504
595
|
|
@@ -176,6 +176,21 @@ module Google
|
|
176
176
|
#
|
177
177
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
178
178
|
#
|
179
|
+
# @example Basic example
|
180
|
+
# require "google/cloud/iap/v1"
|
181
|
+
#
|
182
|
+
# # Create a client object. The client can be reused for multiple calls.
|
183
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
184
|
+
#
|
185
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
186
|
+
# request = Google::Cloud::Iap::V1::ListBrandsRequest.new
|
187
|
+
#
|
188
|
+
# # Call the list_brands method.
|
189
|
+
# result = client.list_brands request
|
190
|
+
#
|
191
|
+
# # The returned object is of type Google::Cloud::Iap::V1::ListBrandsResponse.
|
192
|
+
# p result
|
193
|
+
#
|
179
194
|
def list_brands request, options = nil
|
180
195
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
181
196
|
|
@@ -193,9 +208,11 @@ module Google
|
|
193
208
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
194
209
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
195
210
|
|
196
|
-
header_params = {
|
197
|
-
|
198
|
-
|
211
|
+
header_params = {}
|
212
|
+
if request.parent
|
213
|
+
header_params["parent"] = request.parent
|
214
|
+
end
|
215
|
+
|
199
216
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
200
217
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
201
218
|
|
@@ -253,6 +270,21 @@ module Google
|
|
253
270
|
#
|
254
271
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
255
272
|
#
|
273
|
+
# @example Basic example
|
274
|
+
# require "google/cloud/iap/v1"
|
275
|
+
#
|
276
|
+
# # Create a client object. The client can be reused for multiple calls.
|
277
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
278
|
+
#
|
279
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
280
|
+
# request = Google::Cloud::Iap::V1::CreateBrandRequest.new
|
281
|
+
#
|
282
|
+
# # Call the create_brand method.
|
283
|
+
# result = client.create_brand request
|
284
|
+
#
|
285
|
+
# # The returned object is of type Google::Cloud::Iap::V1::Brand.
|
286
|
+
# p result
|
287
|
+
#
|
256
288
|
def create_brand request, options = nil
|
257
289
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
258
290
|
|
@@ -270,9 +302,11 @@ module Google
|
|
270
302
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
271
303
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
272
304
|
|
273
|
-
header_params = {
|
274
|
-
|
275
|
-
|
305
|
+
header_params = {}
|
306
|
+
if request.parent
|
307
|
+
header_params["parent"] = request.parent
|
308
|
+
end
|
309
|
+
|
276
310
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
277
311
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
278
312
|
|
@@ -322,6 +356,21 @@ module Google
|
|
322
356
|
#
|
323
357
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
324
358
|
#
|
359
|
+
# @example Basic example
|
360
|
+
# require "google/cloud/iap/v1"
|
361
|
+
#
|
362
|
+
# # Create a client object. The client can be reused for multiple calls.
|
363
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
364
|
+
#
|
365
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
366
|
+
# request = Google::Cloud::Iap::V1::GetBrandRequest.new
|
367
|
+
#
|
368
|
+
# # Call the get_brand method.
|
369
|
+
# result = client.get_brand request
|
370
|
+
#
|
371
|
+
# # The returned object is of type Google::Cloud::Iap::V1::Brand.
|
372
|
+
# p result
|
373
|
+
#
|
325
374
|
def get_brand request, options = nil
|
326
375
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
327
376
|
|
@@ -339,9 +388,11 @@ module Google
|
|
339
388
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
340
389
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
341
390
|
|
342
|
-
header_params = {
|
343
|
-
|
344
|
-
|
391
|
+
header_params = {}
|
392
|
+
if request.name
|
393
|
+
header_params["name"] = request.name
|
394
|
+
end
|
395
|
+
|
345
396
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
346
397
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
347
398
|
|
@@ -397,6 +448,21 @@ module Google
|
|
397
448
|
#
|
398
449
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
399
450
|
#
|
451
|
+
# @example Basic example
|
452
|
+
# require "google/cloud/iap/v1"
|
453
|
+
#
|
454
|
+
# # Create a client object. The client can be reused for multiple calls.
|
455
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
456
|
+
#
|
457
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
458
|
+
# request = Google::Cloud::Iap::V1::CreateIdentityAwareProxyClientRequest.new
|
459
|
+
#
|
460
|
+
# # Call the create_identity_aware_proxy_client method.
|
461
|
+
# result = client.create_identity_aware_proxy_client request
|
462
|
+
#
|
463
|
+
# # The returned object is of type Google::Cloud::Iap::V1::IdentityAwareProxyClient.
|
464
|
+
# p result
|
465
|
+
#
|
400
466
|
def create_identity_aware_proxy_client request, options = nil
|
401
467
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
402
468
|
|
@@ -414,9 +480,11 @@ module Google
|
|
414
480
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
415
481
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
416
482
|
|
417
|
-
header_params = {
|
418
|
-
|
419
|
-
|
483
|
+
header_params = {}
|
484
|
+
if request.parent
|
485
|
+
header_params["parent"] = request.parent
|
486
|
+
end
|
487
|
+
|
420
488
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
421
489
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
422
490
|
|
@@ -478,6 +546,27 @@ module Google
|
|
478
546
|
#
|
479
547
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
480
548
|
#
|
549
|
+
# @example Basic example
|
550
|
+
# require "google/cloud/iap/v1"
|
551
|
+
#
|
552
|
+
# # Create a client object. The client can be reused for multiple calls.
|
553
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
554
|
+
#
|
555
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
556
|
+
# request = Google::Cloud::Iap::V1::ListIdentityAwareProxyClientsRequest.new
|
557
|
+
#
|
558
|
+
# # Call the list_identity_aware_proxy_clients method.
|
559
|
+
# result = client.list_identity_aware_proxy_clients request
|
560
|
+
#
|
561
|
+
# # The returned object is of type Gapic::PagedEnumerable. You can
|
562
|
+
# # iterate over all elements by calling #each, and the enumerable
|
563
|
+
# # will lazily make API calls to fetch subsequent pages. Other
|
564
|
+
# # methods are also available for managing paging directly.
|
565
|
+
# result.each do |response|
|
566
|
+
# # Each element is of type ::Google::Cloud::Iap::V1::IdentityAwareProxyClient.
|
567
|
+
# p response
|
568
|
+
# end
|
569
|
+
#
|
481
570
|
def list_identity_aware_proxy_clients request, options = nil
|
482
571
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
483
572
|
|
@@ -495,9 +584,11 @@ module Google
|
|
495
584
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
496
585
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
497
586
|
|
498
|
-
header_params = {
|
499
|
-
|
500
|
-
|
587
|
+
header_params = {}
|
588
|
+
if request.parent
|
589
|
+
header_params["parent"] = request.parent
|
590
|
+
end
|
591
|
+
|
501
592
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
502
593
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
503
594
|
|
@@ -550,6 +641,21 @@ module Google
|
|
550
641
|
#
|
551
642
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
552
643
|
#
|
644
|
+
# @example Basic example
|
645
|
+
# require "google/cloud/iap/v1"
|
646
|
+
#
|
647
|
+
# # Create a client object. The client can be reused for multiple calls.
|
648
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
649
|
+
#
|
650
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
651
|
+
# request = Google::Cloud::Iap::V1::GetIdentityAwareProxyClientRequest.new
|
652
|
+
#
|
653
|
+
# # Call the get_identity_aware_proxy_client method.
|
654
|
+
# result = client.get_identity_aware_proxy_client request
|
655
|
+
#
|
656
|
+
# # The returned object is of type Google::Cloud::Iap::V1::IdentityAwareProxyClient.
|
657
|
+
# p result
|
658
|
+
#
|
553
659
|
def get_identity_aware_proxy_client request, options = nil
|
554
660
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
555
661
|
|
@@ -567,9 +673,11 @@ module Google
|
|
567
673
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
568
674
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
569
675
|
|
570
|
-
header_params = {
|
571
|
-
|
572
|
-
|
676
|
+
header_params = {}
|
677
|
+
if request.name
|
678
|
+
header_params["name"] = request.name
|
679
|
+
end
|
680
|
+
|
573
681
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
574
682
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
575
683
|
|
@@ -621,6 +729,21 @@ module Google
|
|
621
729
|
#
|
622
730
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
623
731
|
#
|
732
|
+
# @example Basic example
|
733
|
+
# require "google/cloud/iap/v1"
|
734
|
+
#
|
735
|
+
# # Create a client object. The client can be reused for multiple calls.
|
736
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
737
|
+
#
|
738
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
739
|
+
# request = Google::Cloud::Iap::V1::ResetIdentityAwareProxyClientSecretRequest.new
|
740
|
+
#
|
741
|
+
# # Call the reset_identity_aware_proxy_client_secret method.
|
742
|
+
# result = client.reset_identity_aware_proxy_client_secret request
|
743
|
+
#
|
744
|
+
# # The returned object is of type Google::Cloud::Iap::V1::IdentityAwareProxyClient.
|
745
|
+
# p result
|
746
|
+
#
|
624
747
|
def reset_identity_aware_proxy_client_secret request, options = nil
|
625
748
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
626
749
|
|
@@ -638,9 +761,11 @@ module Google
|
|
638
761
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
639
762
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
640
763
|
|
641
|
-
header_params = {
|
642
|
-
|
643
|
-
|
764
|
+
header_params = {}
|
765
|
+
if request.name
|
766
|
+
header_params["name"] = request.name
|
767
|
+
end
|
768
|
+
|
644
769
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
645
770
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
646
771
|
|
@@ -693,6 +818,21 @@ module Google
|
|
693
818
|
#
|
694
819
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
695
820
|
#
|
821
|
+
# @example Basic example
|
822
|
+
# require "google/cloud/iap/v1"
|
823
|
+
#
|
824
|
+
# # Create a client object. The client can be reused for multiple calls.
|
825
|
+
# client = Google::Cloud::Iap::V1::IdentityAwareProxyOAuthService::Client.new
|
826
|
+
#
|
827
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
828
|
+
# request = Google::Cloud::Iap::V1::DeleteIdentityAwareProxyClientRequest.new
|
829
|
+
#
|
830
|
+
# # Call the delete_identity_aware_proxy_client method.
|
831
|
+
# result = client.delete_identity_aware_proxy_client request
|
832
|
+
#
|
833
|
+
# # The returned object is of type Google::Protobuf::Empty.
|
834
|
+
# p result
|
835
|
+
#
|
696
836
|
def delete_identity_aware_proxy_client request, options = nil
|
697
837
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
698
838
|
|
@@ -710,9 +850,11 @@ module Google
|
|
710
850
|
gapic_version: ::Google::Cloud::Iap::V1::VERSION
|
711
851
|
metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
|
712
852
|
|
713
|
-
header_params = {
|
714
|
-
|
715
|
-
|
853
|
+
header_params = {}
|
854
|
+
if request.name
|
855
|
+
header_params["name"] = request.name
|
856
|
+
end
|
857
|
+
|
716
858
|
request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
|
717
859
|
metadata[:"x-goog-request-params"] ||= request_params_header
|
718
860
|
|
@@ -1,8 +1,6 @@
|
|
1
1
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
2
|
# source: google/cloud/iap/v1/service.proto
|
3
3
|
|
4
|
-
require 'google/protobuf'
|
5
|
-
|
6
4
|
require 'google/api/annotations_pb'
|
7
5
|
require 'google/api/field_behavior_pb'
|
8
6
|
require 'google/iam/v1/iam_policy_pb'
|
@@ -11,6 +9,8 @@ require 'google/protobuf/empty_pb'
|
|
11
9
|
require 'google/protobuf/field_mask_pb'
|
12
10
|
require 'google/protobuf/wrappers_pb'
|
13
11
|
require 'google/api/client_pb'
|
12
|
+
require 'google/protobuf'
|
13
|
+
|
14
14
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
15
15
|
add_file("google/cloud/iap/v1/service.proto", :syntax => :proto3) do
|
16
16
|
add_message "google.cloud.iap.v1.GetIapSettingsRequest" do
|
@@ -27,7 +27,7 @@ module Google
|
|
27
27
|
# APIs for Identity-Aware Proxy Admin configurations.
|
28
28
|
class Service
|
29
29
|
|
30
|
-
include GRPC::GenericService
|
30
|
+
include ::GRPC::GenericService
|
31
31
|
|
32
32
|
self.marshal_class_method = :encode
|
33
33
|
self.unmarshal_class_method = :decode
|
@@ -63,7 +63,7 @@ module Google
|
|
63
63
|
# clients.
|
64
64
|
class Service
|
65
65
|
|
66
|
-
include GRPC::GenericService
|
66
|
+
include ::GRPC::GenericService
|
67
67
|
|
68
68
|
self.marshal_class_method = :encode
|
69
69
|
self.unmarshal_class_method = :decode
|
data/lib/google/cloud/iap/v1.rb
CHANGED
@@ -33,11 +33,7 @@ module Google
|
|
33
33
|
# // For Kubernetes resources, the format is {api group}/{kind}.
|
34
34
|
# option (google.api.resource) = {
|
35
35
|
# type: "pubsub.googleapis.com/Topic"
|
36
|
-
#
|
37
|
-
# pattern: "projects/{project}/topics/{topic}"
|
38
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
39
|
-
# parent_name_extractor: "projects/{project}"
|
40
|
-
# }
|
36
|
+
# pattern: "projects/{project}/topics/{topic}"
|
41
37
|
# };
|
42
38
|
# }
|
43
39
|
#
|
@@ -45,10 +41,7 @@ module Google
|
|
45
41
|
#
|
46
42
|
# resources:
|
47
43
|
# - type: "pubsub.googleapis.com/Topic"
|
48
|
-
#
|
49
|
-
# - pattern: "projects/{project}/topics/{topic}"
|
50
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
51
|
-
# parent_name_extractor: "projects/{project}"
|
44
|
+
# pattern: "projects/{project}/topics/{topic}"
|
52
45
|
#
|
53
46
|
# Sometimes, resources have multiple patterns, typically because they can
|
54
47
|
# live under multiple parents.
|
@@ -58,26 +51,10 @@ module Google
|
|
58
51
|
# message LogEntry {
|
59
52
|
# option (google.api.resource) = {
|
60
53
|
# type: "logging.googleapis.com/LogEntry"
|
61
|
-
#
|
62
|
-
#
|
63
|
-
#
|
64
|
-
#
|
65
|
-
# }
|
66
|
-
# name_descriptor: {
|
67
|
-
# pattern: "folders/{folder}/logs/{log}"
|
68
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
69
|
-
# parent_name_extractor: "folders/{folder}"
|
70
|
-
# }
|
71
|
-
# name_descriptor: {
|
72
|
-
# pattern: "organizations/{organization}/logs/{log}"
|
73
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Organization"
|
74
|
-
# parent_name_extractor: "organizations/{organization}"
|
75
|
-
# }
|
76
|
-
# name_descriptor: {
|
77
|
-
# pattern: "billingAccounts/{billing_account}/logs/{log}"
|
78
|
-
# parent_type: "billing.googleapis.com/BillingAccount"
|
79
|
-
# parent_name_extractor: "billingAccounts/{billing_account}"
|
80
|
-
# }
|
54
|
+
# pattern: "projects/{project}/logs/{log}"
|
55
|
+
# pattern: "folders/{folder}/logs/{log}"
|
56
|
+
# pattern: "organizations/{organization}/logs/{log}"
|
57
|
+
# pattern: "billingAccounts/{billing_account}/logs/{log}"
|
81
58
|
# };
|
82
59
|
# }
|
83
60
|
#
|
@@ -85,48 +62,10 @@ module Google
|
|
85
62
|
#
|
86
63
|
# resources:
|
87
64
|
# - type: 'logging.googleapis.com/LogEntry'
|
88
|
-
#
|
89
|
-
#
|
90
|
-
#
|
91
|
-
#
|
92
|
-
# - pattern: "folders/{folder}/logs/{log}"
|
93
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
94
|
-
# parent_name_extractor: "folders/{folder}"
|
95
|
-
# - pattern: "organizations/{organization}/logs/{log}"
|
96
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Organization"
|
97
|
-
# parent_name_extractor: "organizations/{organization}"
|
98
|
-
# - pattern: "billingAccounts/{billing_account}/logs/{log}"
|
99
|
-
# parent_type: "billing.googleapis.com/BillingAccount"
|
100
|
-
# parent_name_extractor: "billingAccounts/{billing_account}"
|
101
|
-
#
|
102
|
-
# For flexible resources, the resource name doesn't contain parent names, but
|
103
|
-
# the resource itself has parents for policy evaluation.
|
104
|
-
#
|
105
|
-
# Example:
|
106
|
-
#
|
107
|
-
# message Shelf {
|
108
|
-
# option (google.api.resource) = {
|
109
|
-
# type: "library.googleapis.com/Shelf"
|
110
|
-
# name_descriptor: {
|
111
|
-
# pattern: "shelves/{shelf}"
|
112
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
113
|
-
# }
|
114
|
-
# name_descriptor: {
|
115
|
-
# pattern: "shelves/{shelf}"
|
116
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
117
|
-
# }
|
118
|
-
# };
|
119
|
-
# }
|
120
|
-
#
|
121
|
-
# The ResourceDescriptor Yaml config will look like:
|
122
|
-
#
|
123
|
-
# resources:
|
124
|
-
# - type: 'library.googleapis.com/Shelf'
|
125
|
-
# name_descriptor:
|
126
|
-
# - pattern: "shelves/{shelf}"
|
127
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
128
|
-
# - pattern: "shelves/{shelf}"
|
129
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
65
|
+
# pattern: "projects/{project}/logs/{log}"
|
66
|
+
# pattern: "folders/{folder}/logs/{log}"
|
67
|
+
# pattern: "organizations/{organization}/logs/{log}"
|
68
|
+
# pattern: "billingAccounts/{billing_account}/logs/{log}"
|
130
69
|
# @!attribute [rw] type
|
131
70
|
# @return [::String]
|
132
71
|
# The resource type. It must be in the format of
|
@@ -31,6 +31,13 @@ module Google
|
|
31
31
|
# the policy is limited to a few 10s of KB. An empty policy is a
|
32
32
|
# valid policy but certain Cloud Platform services (such as Projects)
|
33
33
|
# might reject them.
|
34
|
+
# @!attribute [rw] update_mask
|
35
|
+
# @return [::Google::Protobuf::FieldMask]
|
36
|
+
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
|
37
|
+
# the fields in the mask will be modified. If no mask is provided, the
|
38
|
+
# following default mask is used:
|
39
|
+
#
|
40
|
+
# `paths: "bindings, etag"`
|
34
41
|
class SetIamPolicyRequest
|
35
42
|
include ::Google::Protobuf::MessageExts
|
36
43
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -44,7 +51,7 @@ module Google
|
|
44
51
|
# @!attribute [rw] options
|
45
52
|
# @return [::Google::Iam::V1::GetPolicyOptions]
|
46
53
|
# OPTIONAL: A `GetPolicyOptions` object for specifying options to
|
47
|
-
# `GetIamPolicy`.
|
54
|
+
# `GetIamPolicy`.
|
48
55
|
class GetIamPolicyRequest
|
49
56
|
include ::Google::Protobuf::MessageExts
|
50
57
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -23,14 +23,24 @@ module Google
|
|
23
23
|
# Encapsulates settings provided to GetIamPolicy.
|
24
24
|
# @!attribute [rw] requested_policy_version
|
25
25
|
# @return [::Integer]
|
26
|
-
# Optional. The policy
|
26
|
+
# Optional. The maximum policy version that will be used to format the
|
27
|
+
# policy.
|
27
28
|
#
|
28
29
|
# Valid values are 0, 1, and 3. Requests specifying an invalid value will be
|
29
30
|
# rejected.
|
30
31
|
#
|
31
|
-
# Requests for policies with any conditional bindings must specify
|
32
|
-
# Policies
|
33
|
-
# leave the field unset.
|
32
|
+
# Requests for policies with any conditional role bindings must specify
|
33
|
+
# version 3. Policies with no conditional role bindings may specify any valid
|
34
|
+
# value or leave the field unset.
|
35
|
+
#
|
36
|
+
# The policy in the response might use the policy version that you specified,
|
37
|
+
# or it might use a lower policy version. For example, if you specify version
|
38
|
+
# 3, but the policy has no conditional role bindings, the response uses
|
39
|
+
# version 1.
|
40
|
+
#
|
41
|
+
# To learn which resources support conditions in their IAM policies, see the
|
42
|
+
# [IAM
|
43
|
+
# documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
|
34
44
|
class GetPolicyOptions
|
35
45
|
include ::Google::Protobuf::MessageExts
|
36
46
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -20,19 +20,24 @@
|
|
20
20
|
module Google
|
21
21
|
module Iam
|
22
22
|
module V1
|
23
|
-
#
|
24
|
-
#
|
23
|
+
# An Identity and Access Management (IAM) policy, which specifies access
|
24
|
+
# controls for Google Cloud resources.
|
25
25
|
#
|
26
26
|
#
|
27
27
|
# A `Policy` is a collection of `bindings`. A `binding` binds one or more
|
28
|
-
# `members
|
29
|
-
# Google groups, and domains (such as G Suite). A
|
30
|
-
#
|
31
|
-
#
|
32
|
-
# constrains the role binding based on attributes about the request and/or
|
33
|
-
# target resource.
|
28
|
+
# `members`, or principals, to a single `role`. Principals can be user
|
29
|
+
# accounts, service accounts, Google groups, and domains (such as G Suite). A
|
30
|
+
# `role` is a named list of permissions; each `role` can be an IAM predefined
|
31
|
+
# role or a user-created custom role.
|
34
32
|
#
|
35
|
-
#
|
33
|
+
# For some types of Google Cloud resources, a `binding` can also specify a
|
34
|
+
# `condition`, which is a logical expression that allows access to a resource
|
35
|
+
# only if the expression evaluates to `true`. A condition can add constraints
|
36
|
+
# based on attributes of the request, the resource, or both. To learn which
|
37
|
+
# resources support conditions in their IAM policies, see the
|
38
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
|
39
|
+
#
|
40
|
+
# **JSON example:**
|
36
41
|
#
|
37
42
|
# {
|
38
43
|
# "bindings": [
|
@@ -47,18 +52,21 @@ module Google
|
|
47
52
|
# },
|
48
53
|
# {
|
49
54
|
# "role": "roles/resourcemanager.organizationViewer",
|
50
|
-
# "members": [
|
55
|
+
# "members": [
|
56
|
+
# "user:eve@example.com"
|
57
|
+
# ],
|
51
58
|
# "condition": {
|
52
59
|
# "title": "expirable access",
|
53
60
|
# "description": "Does not grant access after Sep 2020",
|
54
|
-
# "expression": "request.time <
|
55
|
-
# timestamp('2020-10-01T00:00:00.000Z')",
|
61
|
+
# "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
|
56
62
|
# }
|
57
63
|
# }
|
58
|
-
# ]
|
64
|
+
# ],
|
65
|
+
# "etag": "BwWWja0YfJA=",
|
66
|
+
# "version": 3
|
59
67
|
# }
|
60
68
|
#
|
61
|
-
# **YAML
|
69
|
+
# **YAML example:**
|
62
70
|
#
|
63
71
|
# bindings:
|
64
72
|
# - members:
|
@@ -74,30 +82,52 @@ module Google
|
|
74
82
|
# title: expirable access
|
75
83
|
# description: Does not grant access after Sep 2020
|
76
84
|
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
|
85
|
+
# etag: BwWWja0YfJA=
|
86
|
+
# version: 3
|
77
87
|
#
|
78
88
|
# For a description of IAM and its features, see the
|
79
|
-
# [IAM
|
89
|
+
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
80
90
|
# @!attribute [rw] version
|
81
91
|
# @return [::Integer]
|
82
92
|
# Specifies the format of the policy.
|
83
93
|
#
|
84
|
-
# Valid values are 0
|
85
|
-
# rejected.
|
94
|
+
# Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
|
95
|
+
# are rejected.
|
96
|
+
#
|
97
|
+
# Any operation that affects conditional role bindings must specify version
|
98
|
+
# `3`. This requirement applies to the following operations:
|
86
99
|
#
|
87
|
-
#
|
88
|
-
#
|
89
|
-
#
|
90
|
-
#
|
91
|
-
#
|
92
|
-
# leave the field unset.
|
100
|
+
# * Getting a policy that includes a conditional role binding
|
101
|
+
# * Adding a conditional role binding to a policy
|
102
|
+
# * Changing a conditional role binding in a policy
|
103
|
+
# * Removing any role binding, with or without a condition, from a policy
|
104
|
+
# that includes conditions
|
93
105
|
#
|
94
|
-
# If
|
95
|
-
#
|
106
|
+
# **Important:** If you use IAM Conditions, you must include the `etag` field
|
107
|
+
# whenever you call `setIamPolicy`. If you omit this field, then IAM allows
|
108
|
+
# you to overwrite a version `3` policy with a version `1` policy, and all of
|
109
|
+
# the conditions in the version `3` policy are lost.
|
110
|
+
#
|
111
|
+
# If a policy does not include any conditions, operations on that policy may
|
112
|
+
# specify any valid version or leave the field unset.
|
113
|
+
#
|
114
|
+
# To learn which resources support conditions in their IAM policies, see the
|
115
|
+
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
|
96
116
|
# @!attribute [rw] bindings
|
97
117
|
# @return [::Array<::Google::Iam::V1::Binding>]
|
98
|
-
# Associates a list of `members
|
99
|
-
# `condition` that determines when
|
100
|
-
# `bindings`
|
118
|
+
# Associates a list of `members`, or principals, with a `role`. Optionally,
|
119
|
+
# may specify a `condition` that determines how and when the `bindings` are
|
120
|
+
# applied. Each of the `bindings` must contain at least one principal.
|
121
|
+
#
|
122
|
+
# The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250
|
123
|
+
# of these principals can be Google groups. Each occurrence of a principal
|
124
|
+
# counts towards these limits. For example, if the `bindings` grant 50
|
125
|
+
# different roles to `user:alice@example.com`, and not to any other
|
126
|
+
# principal, then you can add another 1,450 principals to the `bindings` in
|
127
|
+
# the `Policy`.
|
128
|
+
# @!attribute [rw] audit_configs
|
129
|
+
# @return [::Array<::Google::Iam::V1::AuditConfig>]
|
130
|
+
# Specifies cloud audit logging configuration for this policy.
|
101
131
|
# @!attribute [rw] etag
|
102
132
|
# @return [::String]
|
103
133
|
# `etag` is used for optimistic concurrency control as a way to help
|
@@ -108,23 +138,23 @@ module Google
|
|
108
138
|
# systems are expected to put that etag in the request to `setIamPolicy` to
|
109
139
|
# ensure that their change will be applied to the same version of the policy.
|
110
140
|
#
|
111
|
-
# If
|
112
|
-
#
|
113
|
-
#
|
114
|
-
#
|
141
|
+
# **Important:** If you use IAM Conditions, you must include the `etag` field
|
142
|
+
# whenever you call `setIamPolicy`. If you omit this field, then IAM allows
|
143
|
+
# you to overwrite a version `3` policy with a version `1` policy, and all of
|
144
|
+
# the conditions in the version `3` policy are lost.
|
115
145
|
class Policy
|
116
146
|
include ::Google::Protobuf::MessageExts
|
117
147
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
118
148
|
end
|
119
149
|
|
120
|
-
# Associates `members
|
150
|
+
# Associates `members`, or principals, with a `role`.
|
121
151
|
# @!attribute [rw] role
|
122
152
|
# @return [::String]
|
123
|
-
# Role that is assigned to `members
|
153
|
+
# Role that is assigned to the list of `members`, or principals.
|
124
154
|
# For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
|
125
155
|
# @!attribute [rw] members
|
126
156
|
# @return [::Array<::String>]
|
127
|
-
# Specifies the
|
157
|
+
# Specifies the principals requesting access for a Cloud Platform resource.
|
128
158
|
# `members` can have the following values:
|
129
159
|
#
|
130
160
|
# * `allUsers`: A special identifier that represents anyone who is
|
@@ -143,20 +173,160 @@ module Google
|
|
143
173
|
# * `group:{emailid}`: An email address that represents a Google group.
|
144
174
|
# For example, `admins@example.com`.
|
145
175
|
#
|
176
|
+
# * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
|
177
|
+
# identifier) representing a user that has been recently deleted. For
|
178
|
+
# example, `alice@example.com?uid=123456789012345678901`. If the user is
|
179
|
+
# recovered, this value reverts to `user:{emailid}` and the recovered user
|
180
|
+
# retains the role in the binding.
|
181
|
+
#
|
182
|
+
# * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
|
183
|
+
# unique identifier) representing a service account that has been recently
|
184
|
+
# deleted. For example,
|
185
|
+
# `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
|
186
|
+
# If the service account is undeleted, this value reverts to
|
187
|
+
# `serviceAccount:{emailid}` and the undeleted service account retains the
|
188
|
+
# role in the binding.
|
189
|
+
#
|
190
|
+
# * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
|
191
|
+
# identifier) representing a Google group that has been recently
|
192
|
+
# deleted. For example, `admins@example.com?uid=123456789012345678901`. If
|
193
|
+
# the group is recovered, this value reverts to `group:{emailid}` and the
|
194
|
+
# recovered group retains the role in the binding.
|
195
|
+
#
|
146
196
|
#
|
147
197
|
# * `domain:{domain}`: The G Suite domain (primary) that represents all the
|
148
198
|
# users of that domain. For example, `google.com` or `example.com`.
|
149
199
|
# @!attribute [rw] condition
|
150
200
|
# @return [::Google::Type::Expr]
|
151
201
|
# The condition that is associated with this binding.
|
152
|
-
#
|
153
|
-
#
|
154
|
-
#
|
202
|
+
#
|
203
|
+
# If the condition evaluates to `true`, then this binding applies to the
|
204
|
+
# current request.
|
205
|
+
#
|
206
|
+
# If the condition evaluates to `false`, then this binding does not apply to
|
207
|
+
# the current request. However, a different role binding might grant the same
|
208
|
+
# role to one or more of the principals in this binding.
|
209
|
+
#
|
210
|
+
# To learn which resources support conditions in their IAM policies, see the
|
211
|
+
# [IAM
|
212
|
+
# documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
|
155
213
|
class Binding
|
156
214
|
include ::Google::Protobuf::MessageExts
|
157
215
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
158
216
|
end
|
159
217
|
|
218
|
+
# Specifies the audit configuration for a service.
|
219
|
+
# The configuration determines which permission types are logged, and what
|
220
|
+
# identities, if any, are exempted from logging.
|
221
|
+
# An AuditConfig must have one or more AuditLogConfigs.
|
222
|
+
#
|
223
|
+
# If there are AuditConfigs for both `allServices` and a specific service,
|
224
|
+
# the union of the two AuditConfigs is used for that service: the log_types
|
225
|
+
# specified in each AuditConfig are enabled, and the exempted_members in each
|
226
|
+
# AuditLogConfig are exempted.
|
227
|
+
#
|
228
|
+
# Example Policy with multiple AuditConfigs:
|
229
|
+
#
|
230
|
+
# {
|
231
|
+
# "audit_configs": [
|
232
|
+
# {
|
233
|
+
# "service": "allServices",
|
234
|
+
# "audit_log_configs": [
|
235
|
+
# {
|
236
|
+
# "log_type": "DATA_READ",
|
237
|
+
# "exempted_members": [
|
238
|
+
# "user:jose@example.com"
|
239
|
+
# ]
|
240
|
+
# },
|
241
|
+
# {
|
242
|
+
# "log_type": "DATA_WRITE"
|
243
|
+
# },
|
244
|
+
# {
|
245
|
+
# "log_type": "ADMIN_READ"
|
246
|
+
# }
|
247
|
+
# ]
|
248
|
+
# },
|
249
|
+
# {
|
250
|
+
# "service": "sampleservice.googleapis.com",
|
251
|
+
# "audit_log_configs": [
|
252
|
+
# {
|
253
|
+
# "log_type": "DATA_READ"
|
254
|
+
# },
|
255
|
+
# {
|
256
|
+
# "log_type": "DATA_WRITE",
|
257
|
+
# "exempted_members": [
|
258
|
+
# "user:aliya@example.com"
|
259
|
+
# ]
|
260
|
+
# }
|
261
|
+
# ]
|
262
|
+
# }
|
263
|
+
# ]
|
264
|
+
# }
|
265
|
+
#
|
266
|
+
# For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
|
267
|
+
# logging. It also exempts jose@example.com from DATA_READ logging, and
|
268
|
+
# aliya@example.com from DATA_WRITE logging.
|
269
|
+
# @!attribute [rw] service
|
270
|
+
# @return [::String]
|
271
|
+
# Specifies a service that will be enabled for audit logging.
|
272
|
+
# For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
|
273
|
+
# `allServices` is a special value that covers all services.
|
274
|
+
# @!attribute [rw] audit_log_configs
|
275
|
+
# @return [::Array<::Google::Iam::V1::AuditLogConfig>]
|
276
|
+
# The configuration for logging of each type of permission.
|
277
|
+
class AuditConfig
|
278
|
+
include ::Google::Protobuf::MessageExts
|
279
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
280
|
+
end
|
281
|
+
|
282
|
+
# Provides the configuration for logging a type of permissions.
|
283
|
+
# Example:
|
284
|
+
#
|
285
|
+
# {
|
286
|
+
# "audit_log_configs": [
|
287
|
+
# {
|
288
|
+
# "log_type": "DATA_READ",
|
289
|
+
# "exempted_members": [
|
290
|
+
# "user:jose@example.com"
|
291
|
+
# ]
|
292
|
+
# },
|
293
|
+
# {
|
294
|
+
# "log_type": "DATA_WRITE"
|
295
|
+
# }
|
296
|
+
# ]
|
297
|
+
# }
|
298
|
+
#
|
299
|
+
# This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
|
300
|
+
# jose@example.com from DATA_READ logging.
|
301
|
+
# @!attribute [rw] log_type
|
302
|
+
# @return [::Google::Iam::V1::AuditLogConfig::LogType]
|
303
|
+
# The log type that this config enables.
|
304
|
+
# @!attribute [rw] exempted_members
|
305
|
+
# @return [::Array<::String>]
|
306
|
+
# Specifies the identities that do not cause logging for this type of
|
307
|
+
# permission.
|
308
|
+
# Follows the same format of {::Google::Iam::V1::Binding#members Binding.members}.
|
309
|
+
class AuditLogConfig
|
310
|
+
include ::Google::Protobuf::MessageExts
|
311
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
312
|
+
|
313
|
+
# The list of valid permission types for which logging can be configured.
|
314
|
+
# Admin writes are always logged, and are not configurable.
|
315
|
+
module LogType
|
316
|
+
# Default case. Should never be this.
|
317
|
+
LOG_TYPE_UNSPECIFIED = 0
|
318
|
+
|
319
|
+
# Admin reads. Example: CloudIAM getIamPolicy
|
320
|
+
ADMIN_READ = 1
|
321
|
+
|
322
|
+
# Data writes. Example: CloudSQL Users create
|
323
|
+
DATA_WRITE = 2
|
324
|
+
|
325
|
+
# Data reads. Example: CloudSQL Users list
|
326
|
+
DATA_READ = 3
|
327
|
+
end
|
328
|
+
end
|
329
|
+
|
160
330
|
# The difference delta between two policies.
|
161
331
|
# @!attribute [rw] binding_deltas
|
162
332
|
# @return [::Array<::Google::Iam::V1::BindingDelta>]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-iap-v1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-04-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gapic-common
|
@@ -48,22 +48,16 @@ dependencies:
|
|
48
48
|
name: grpc-google-iam-v1
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
|
-
- - "
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: 0.6.10
|
54
|
-
- - "<"
|
51
|
+
- - "~>"
|
55
52
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
53
|
+
version: '1.1'
|
57
54
|
type: :runtime
|
58
55
|
prerelease: false
|
59
56
|
version_requirements: !ruby/object:Gem::Requirement
|
60
57
|
requirements:
|
61
|
-
- - "
|
62
|
-
- !ruby/object:Gem::Version
|
63
|
-
version: 0.6.10
|
64
|
-
- - "<"
|
58
|
+
- - "~>"
|
65
59
|
- !ruby/object:Gem::Version
|
66
|
-
version:
|
60
|
+
version: '1.1'
|
67
61
|
- !ruby/object:Gem::Dependency
|
68
62
|
name: google-style
|
69
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -231,7 +225,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
231
225
|
- !ruby/object:Gem::Version
|
232
226
|
version: '0'
|
233
227
|
requirements: []
|
234
|
-
rubygems_version: 3.
|
228
|
+
rubygems_version: 3.3.5
|
235
229
|
signing_key:
|
236
230
|
specification_version: 4
|
237
231
|
summary: API Client library for the Identity-Aware Proxy V1 API
|