google-apis-sts_v1 0.9.0 → 0.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -0
- data/lib/google/apis/sts_v1/classes.rb +380 -18
- data/lib/google/apis/sts_v1/gem_version.rb +3 -3
- data/lib/google/apis/sts_v1/representations.rb +124 -0
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a8bc911fdf138ecdb151b531d100bd92c6ff25e20f885adeebc254a1e9af2ce
|
4
|
+
data.tar.gz: cab76b28177bb025806cbe0dd09c4def26a35f126720ebef1d077523a8d7b66d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7435f48776abdb7a0e5ab8d83e5e48fad3c147993160349ca5d8c016000f134a950fbe2cc32d6693b1772620d10c3e42b7d1696edc78f8cf358a9cd3fd6b77d0
|
7
|
+
data.tar.gz: 742f704cc991b016e6e892bf1daa80643cdb765c0069496bdd820f2b5aa8e11c35d1035b077bd446bd962ca84abb5b7a2351b06c4c25964fe5339d4cf9824a36
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,22 @@
|
|
1
1
|
# Release history for google-apis-sts_v1
|
2
2
|
|
3
|
+
### v0.13.0 (2021-09-18)
|
4
|
+
|
5
|
+
* Regenerated from discovery document revision 20210910
|
6
|
+
|
7
|
+
### v0.12.0 (2021-09-01)
|
8
|
+
|
9
|
+
* Regenerated from discovery document revision 20210822
|
10
|
+
|
11
|
+
### v0.11.0 (2021-07-31)
|
12
|
+
|
13
|
+
* Regenerated from discovery document revision 20210723
|
14
|
+
|
15
|
+
### v0.10.0 (2021-07-03)
|
16
|
+
|
17
|
+
* Regenerated from discovery document revision 20210625
|
18
|
+
* Regenerated using generator version 0.4.0
|
19
|
+
|
3
20
|
### v0.9.0 (2021-06-24)
|
4
21
|
|
5
22
|
* Unspecified changes
|
@@ -22,13 +22,160 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module StsV1
|
24
24
|
|
25
|
+
# Associates `members` with a `role`.
|
26
|
+
class GoogleIamV1Binding
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
30
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
31
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
32
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
33
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
34
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
35
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
36
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
37
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
38
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
39
|
+
# string" description: "Create a notification string with a timestamp."
|
40
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
41
|
+
# exact variables and functions that may be referenced within an expression are
|
42
|
+
# determined by the service that evaluates it. See the service documentation for
|
43
|
+
# additional information.
|
44
|
+
# Corresponds to the JSON property `condition`
|
45
|
+
# @return [Google::Apis::StsV1::GoogleTypeExpr]
|
46
|
+
attr_accessor :condition
|
47
|
+
|
48
|
+
# Specifies the identities requesting access for a Cloud Platform resource. `
|
49
|
+
# members` can have the following values: * `allUsers`: A special identifier
|
50
|
+
# that represents anyone who is on the internet; with or without a Google
|
51
|
+
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
52
|
+
# anyone who is authenticated with a Google account or a service account. * `
|
53
|
+
# user:`emailid``: An email address that represents a specific Google account.
|
54
|
+
# For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
|
55
|
+
# address that represents a service account. For example, `my-other-app@appspot.
|
56
|
+
# gserviceaccount.com`. * `group:`emailid``: An email address that represents a
|
57
|
+
# Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
|
58
|
+
# `uniqueid``: An email address (plus unique identifier) representing a user
|
59
|
+
# that has been recently deleted. For example, `alice@example.com?uid=
|
60
|
+
# 123456789012345678901`. If the user is recovered, this value reverts to `user:`
|
61
|
+
# emailid`` and the recovered user retains the role in the binding. * `deleted:
|
62
|
+
# serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
|
63
|
+
# identifier) representing a service account that has been recently deleted. For
|
64
|
+
# example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
|
65
|
+
# If the service account is undeleted, this value reverts to `serviceAccount:`
|
66
|
+
# emailid`` and the undeleted service account retains the role in the binding. *
|
67
|
+
# `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
|
68
|
+
# identifier) representing a Google group that has been recently deleted. For
|
69
|
+
# example, `admins@example.com?uid=123456789012345678901`. If the group is
|
70
|
+
# recovered, this value reverts to `group:`emailid`` and the recovered group
|
71
|
+
# retains the role in the binding. * `domain:`domain``: The G Suite domain (
|
72
|
+
# primary) that represents all the users of that domain. For example, `google.
|
73
|
+
# com` or `example.com`.
|
74
|
+
# Corresponds to the JSON property `members`
|
75
|
+
# @return [Array<String>]
|
76
|
+
attr_accessor :members
|
77
|
+
|
78
|
+
# Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
|
79
|
+
# , or `roles/owner`.
|
80
|
+
# Corresponds to the JSON property `role`
|
81
|
+
# @return [String]
|
82
|
+
attr_accessor :role
|
83
|
+
|
84
|
+
def initialize(**args)
|
85
|
+
update!(**args)
|
86
|
+
end
|
87
|
+
|
88
|
+
# Update properties of this object
|
89
|
+
def update!(**args)
|
90
|
+
@condition = args[:condition] if args.key?(:condition)
|
91
|
+
@members = args[:members] if args.key?(:members)
|
92
|
+
@role = args[:role] if args.key?(:role)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
# An access boundary defines the upper bound of what a principal may access. It
|
97
|
+
# includes a list of access boundary rules that each defines the resource that
|
98
|
+
# may be allowed as well as permissions that may be used on those resources.
|
99
|
+
class GoogleIdentityStsV1AccessBoundary
|
100
|
+
include Google::Apis::Core::Hashable
|
101
|
+
|
102
|
+
# A list of access boundary rules which defines the upper bound of the
|
103
|
+
# permission a principal may carry. If multiple rules are specified, the
|
104
|
+
# effective access boundary is the union of all the access boundary rules
|
105
|
+
# attached. One access boundary can contain at most 10 rules.
|
106
|
+
# Corresponds to the JSON property `accessBoundaryRules`
|
107
|
+
# @return [Array<Google::Apis::StsV1::GoogleIdentityStsV1AccessBoundaryRule>]
|
108
|
+
attr_accessor :access_boundary_rules
|
109
|
+
|
110
|
+
def initialize(**args)
|
111
|
+
update!(**args)
|
112
|
+
end
|
113
|
+
|
114
|
+
# Update properties of this object
|
115
|
+
def update!(**args)
|
116
|
+
@access_boundary_rules = args[:access_boundary_rules] if args.key?(:access_boundary_rules)
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
# An access boundary rule defines an upper bound of IAM permissions on a single
|
121
|
+
# resource.
|
122
|
+
class GoogleIdentityStsV1AccessBoundaryRule
|
123
|
+
include Google::Apis::Core::Hashable
|
124
|
+
|
125
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
126
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
127
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
128
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
129
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
130
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
131
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
132
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
133
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
134
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
135
|
+
# string" description: "Create a notification string with a timestamp."
|
136
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
137
|
+
# exact variables and functions that may be referenced within an expression are
|
138
|
+
# determined by the service that evaluates it. See the service documentation for
|
139
|
+
# additional information.
|
140
|
+
# Corresponds to the JSON property `availabilityCondition`
|
141
|
+
# @return [Google::Apis::StsV1::GoogleTypeExpr]
|
142
|
+
attr_accessor :availability_condition
|
143
|
+
|
144
|
+
# A list of permissions that may be allowed for use on the specified resource.
|
145
|
+
# The only supported values in the list are IAM roles, following the format of
|
146
|
+
# google.iam.v1.Binding.role. Example value: `inRole:roles/logging.viewer` for
|
147
|
+
# predefined roles and `inRole:organizations/`ORGANIZATION_ID`/roles/logging.
|
148
|
+
# viewer` for custom roles.
|
149
|
+
# Corresponds to the JSON property `availablePermissions`
|
150
|
+
# @return [Array<String>]
|
151
|
+
attr_accessor :available_permissions
|
152
|
+
|
153
|
+
# The full resource name of a Google Cloud resource entity. The format
|
154
|
+
# definition is at https://cloud.google.com/apis/design/resource_names. Example
|
155
|
+
# value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
|
156
|
+
# Corresponds to the JSON property `availableResource`
|
157
|
+
# @return [String]
|
158
|
+
attr_accessor :available_resource
|
159
|
+
|
160
|
+
def initialize(**args)
|
161
|
+
update!(**args)
|
162
|
+
end
|
163
|
+
|
164
|
+
# Update properties of this object
|
165
|
+
def update!(**args)
|
166
|
+
@availability_condition = args[:availability_condition] if args.key?(:availability_condition)
|
167
|
+
@available_permissions = args[:available_permissions] if args.key?(:available_permissions)
|
168
|
+
@available_resource = args[:available_resource] if args.key?(:available_resource)
|
169
|
+
end
|
170
|
+
end
|
171
|
+
|
25
172
|
# Request message for ExchangeToken.
|
26
173
|
class GoogleIdentityStsV1ExchangeTokenRequest
|
27
174
|
include Google::Apis::Core::Hashable
|
28
175
|
|
29
176
|
# The full resource name of the identity provider; for example: `//iam.
|
30
|
-
# googleapis.com/projects//workloadIdentityPools//providers/`.
|
31
|
-
# exchanging an external credential for a Google access token.
|
177
|
+
# googleapis.com/projects//locations/global/workloadIdentityPools//providers/`.
|
178
|
+
# Required when exchanging an external credential for a Google access token.
|
32
179
|
# Corresponds to the JSON property `audience`
|
33
180
|
# @return [String]
|
34
181
|
attr_accessor :audience
|
@@ -63,15 +210,16 @@ module Google
|
|
63
210
|
# by a workload identity pool provider, or a short-lived access token issued by
|
64
211
|
# Google. If the token is an OIDC JWT, it must use the JWT format defined in [
|
65
212
|
# RFC 7523](https://tools.ietf.org/html/rfc7523), and the `subject_token_type`
|
66
|
-
# must be `urn:ietf:params:oauth:token-type:jwt
|
67
|
-
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
# Section 3](https://
|
71
|
-
#
|
72
|
-
#
|
73
|
-
#
|
74
|
-
# specification](
|
213
|
+
# must be either `urn:ietf:params:oauth:token-type:jwt` or `urn:ietf:params:
|
214
|
+
# oauth:token-type:id_token`. The following headers are required: - `kid`: The
|
215
|
+
# identifier of the signing key securing the JWT. - `alg`: The cryptographic
|
216
|
+
# algorithm securing the JWT. Must be `RS256` or `ES256`. The following payload
|
217
|
+
# fields are required. For more information, see [RFC 7523, Section 3](https://
|
218
|
+
# tools.ietf.org/html/rfc7523#section-3): - `iss`: The issuer of the token. The
|
219
|
+
# issuer must provide a discovery document at the URL `/.well-known/openid-
|
220
|
+
# configuration`, where `` is the value of this field. The document must be
|
221
|
+
# formatted according to section 4.2 of the [OIDC 1.0 Discovery specification](
|
222
|
+
# https://openid.net/specs/openid-connect-discovery-1_0.html#
|
75
223
|
# ProviderConfigurationResponse). - `iat`: The issue time, in seconds, since the
|
76
224
|
# Unix epoch. Must be in the past. - `exp`: The expiration time, in seconds,
|
77
225
|
# since the Unix epoch. Must be less than 48 hours after `iat`. Shorter
|
@@ -106,8 +254,8 @@ module Google
|
|
106
254
|
# The full, canonical resource name of the workload identity pool provider, with
|
107
255
|
# or without an `https:` prefix. To help ensure data integrity, we recommend
|
108
256
|
# including this header in the `SignedHeaders` field of the signed request. For
|
109
|
-
# example: //iam.googleapis.com/projects//locations
|
110
|
-
# providers/ https://iam.googleapis.com/projects//locations
|
257
|
+
# example: //iam.googleapis.com/projects//locations/global/workloadIdentityPools/
|
258
|
+
# /providers/ https://iam.googleapis.com/projects//locations/global/
|
111
259
|
# workloadIdentityPools//providers/ If you are using temporary security
|
112
260
|
# credentials provided by AWS, you must also include the header `x-amz-security-
|
113
261
|
# token`, with the value set to the session token. The following example shows a
|
@@ -115,8 +263,8 @@ module Google
|
|
115
263
|
# 20200815T015049Z"`, `"key": "Authorization", "value": "AWS4-HMAC-SHA256+
|
116
264
|
# Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-
|
117
265
|
# resource,+Signature=$signature"`, `"key": "x-goog-cloud-target-resource", "
|
118
|
-
# value": "//iam.googleapis.com/projects//locations
|
119
|
-
# providers/"`, `"key": "host", "value": "sts.amazonaws.com"` . ], "method": "
|
266
|
+
# value": "//iam.googleapis.com/projects//locations/global/workloadIdentityPools/
|
267
|
+
# /providers/"`, `"key": "host", "value": "sts.amazonaws.com"` . ], "method": "
|
120
268
|
# POST", "url": "https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-
|
121
269
|
# 06-15" ` ``` You can also use a Google-issued OAuth 2.0 access token with this
|
122
270
|
# field to obtain an access token with new security attributes applied, such as
|
@@ -129,8 +277,8 @@ module Google
|
|
129
277
|
|
130
278
|
# Required. An identifier that indicates the type of the security token in the `
|
131
279
|
# subject_token` parameter. Supported values are `urn:ietf:params:oauth:token-
|
132
|
-
# type:jwt`, `urn:ietf:params:
|
133
|
-
# oauth:token-type:access_token`.
|
280
|
+
# type:jwt`, `urn:ietf:params:oauth:token-type:id_token`, `urn:ietf:params:aws:
|
281
|
+
# token-type:aws4_request`, and `urn:ietf:params:oauth:token-type:access_token`.
|
134
282
|
# Corresponds to the JSON property `subjectTokenType`
|
135
283
|
# @return [String]
|
136
284
|
attr_accessor :subject_token_type
|
@@ -273,7 +421,7 @@ module Google
|
|
273
421
|
# The human-readable identifier for the token principal subject. For example, if
|
274
422
|
# the provided token is associated with a workload identity pool, this field
|
275
423
|
# contains a value in the following format: `principal://iam.googleapis.com/
|
276
|
-
# projects//locations
|
424
|
+
# projects//locations/global/workloadIdentityPools//subject/`
|
277
425
|
# Corresponds to the JSON property `username`
|
278
426
|
# @return [String]
|
279
427
|
attr_accessor :username
|
@@ -294,6 +442,220 @@ module Google
|
|
294
442
|
@username = args[:username] if args.key?(:username)
|
295
443
|
end
|
296
444
|
end
|
445
|
+
|
446
|
+
# An `Options` object configures features that the Security Token Service
|
447
|
+
# supports, but that are not supported by standard OAuth 2.0 token exchange
|
448
|
+
# endpoints, as defined in https://tools.ietf.org/html/rfc8693.
|
449
|
+
class GoogleIdentityStsV1Options
|
450
|
+
include Google::Apis::Core::Hashable
|
451
|
+
|
452
|
+
# An access boundary defines the upper bound of what a principal may access. It
|
453
|
+
# includes a list of access boundary rules that each defines the resource that
|
454
|
+
# may be allowed as well as permissions that may be used on those resources.
|
455
|
+
# Corresponds to the JSON property `accessBoundary`
|
456
|
+
# @return [Google::Apis::StsV1::GoogleIdentityStsV1AccessBoundary]
|
457
|
+
attr_accessor :access_boundary
|
458
|
+
|
459
|
+
# The intended audience(s) of the credential. The audience value(s) should be
|
460
|
+
# the name(s) of services intended to receive the credential. Example: `["https:/
|
461
|
+
# /pubsub.googleapis.com/", "https://storage.googleapis.com/"]`. A maximum of 5
|
462
|
+
# audiences can be included. For each provided audience, the maximum length is
|
463
|
+
# 262 characters.
|
464
|
+
# Corresponds to the JSON property `audiences`
|
465
|
+
# @return [Array<String>]
|
466
|
+
attr_accessor :audiences
|
467
|
+
|
468
|
+
# A Google project used for quota and billing purposes when the credential is
|
469
|
+
# used to access Google APIs. The provided project overrides the project bound
|
470
|
+
# to the credential. The value must be a project number or a project ID. Example:
|
471
|
+
# `my-sample-project-191923`. The maximum length is 32 characters.
|
472
|
+
# Corresponds to the JSON property `userProject`
|
473
|
+
# @return [String]
|
474
|
+
attr_accessor :user_project
|
475
|
+
|
476
|
+
def initialize(**args)
|
477
|
+
update!(**args)
|
478
|
+
end
|
479
|
+
|
480
|
+
# Update properties of this object
|
481
|
+
def update!(**args)
|
482
|
+
@access_boundary = args[:access_boundary] if args.key?(:access_boundary)
|
483
|
+
@audiences = args[:audiences] if args.key?(:audiences)
|
484
|
+
@user_project = args[:user_project] if args.key?(:user_project)
|
485
|
+
end
|
486
|
+
end
|
487
|
+
|
488
|
+
# An access boundary defines the upper bound of what a principal may access. It
|
489
|
+
# includes a list of access boundary rules that each defines the resource that
|
490
|
+
# may be allowed as well as permissions that may be used on those resources.
|
491
|
+
class GoogleIdentityStsV1betaAccessBoundary
|
492
|
+
include Google::Apis::Core::Hashable
|
493
|
+
|
494
|
+
# A list of access boundary rules which defines the upper bound of the
|
495
|
+
# permission a principal may carry. If multiple rules are specified, the
|
496
|
+
# effective access boundary is the union of all the access boundary rules
|
497
|
+
# attached. One access boundary can contain at most 10 rules.
|
498
|
+
# Corresponds to the JSON property `accessBoundaryRules`
|
499
|
+
# @return [Array<Google::Apis::StsV1::GoogleIdentityStsV1betaAccessBoundaryRule>]
|
500
|
+
attr_accessor :access_boundary_rules
|
501
|
+
|
502
|
+
def initialize(**args)
|
503
|
+
update!(**args)
|
504
|
+
end
|
505
|
+
|
506
|
+
# Update properties of this object
|
507
|
+
def update!(**args)
|
508
|
+
@access_boundary_rules = args[:access_boundary_rules] if args.key?(:access_boundary_rules)
|
509
|
+
end
|
510
|
+
end
|
511
|
+
|
512
|
+
# An access boundary rule defines an upper bound of IAM permissions on a single
|
513
|
+
# resource.
|
514
|
+
class GoogleIdentityStsV1betaAccessBoundaryRule
|
515
|
+
include Google::Apis::Core::Hashable
|
516
|
+
|
517
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
518
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
519
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
520
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
521
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
522
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
523
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
524
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
525
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
526
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
527
|
+
# string" description: "Create a notification string with a timestamp."
|
528
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
529
|
+
# exact variables and functions that may be referenced within an expression are
|
530
|
+
# determined by the service that evaluates it. See the service documentation for
|
531
|
+
# additional information.
|
532
|
+
# Corresponds to the JSON property `availabilityCondition`
|
533
|
+
# @return [Google::Apis::StsV1::GoogleTypeExpr]
|
534
|
+
attr_accessor :availability_condition
|
535
|
+
|
536
|
+
# A list of permissions that may be allowed for use on the specified resource.
|
537
|
+
# The only supported values in the list are IAM roles, following the format of
|
538
|
+
# google.iam.v1.Binding.role. Example value: `inRole:roles/logging.viewer` for
|
539
|
+
# predefined roles and `inRole:organizations/`ORGANIZATION_ID`/roles/logging.
|
540
|
+
# viewer` for custom roles.
|
541
|
+
# Corresponds to the JSON property `availablePermissions`
|
542
|
+
# @return [Array<String>]
|
543
|
+
attr_accessor :available_permissions
|
544
|
+
|
545
|
+
# The full resource name of a Google Cloud resource entity. The format
|
546
|
+
# definition is at https://cloud.google.com/apis/design/resource_names. Example
|
547
|
+
# value: `//cloudresourcemanager.googleapis.com/projects/my-project`.
|
548
|
+
# Corresponds to the JSON property `availableResource`
|
549
|
+
# @return [String]
|
550
|
+
attr_accessor :available_resource
|
551
|
+
|
552
|
+
def initialize(**args)
|
553
|
+
update!(**args)
|
554
|
+
end
|
555
|
+
|
556
|
+
# Update properties of this object
|
557
|
+
def update!(**args)
|
558
|
+
@availability_condition = args[:availability_condition] if args.key?(:availability_condition)
|
559
|
+
@available_permissions = args[:available_permissions] if args.key?(:available_permissions)
|
560
|
+
@available_resource = args[:available_resource] if args.key?(:available_resource)
|
561
|
+
end
|
562
|
+
end
|
563
|
+
|
564
|
+
# An `Options` object configures features that the Security Token Service
|
565
|
+
# supports, but that are not supported by standard OAuth 2.0 token exchange
|
566
|
+
# endpoints, as defined in https://tools.ietf.org/html/rfc8693.
|
567
|
+
class GoogleIdentityStsV1betaOptions
|
568
|
+
include Google::Apis::Core::Hashable
|
569
|
+
|
570
|
+
# An access boundary defines the upper bound of what a principal may access. It
|
571
|
+
# includes a list of access boundary rules that each defines the resource that
|
572
|
+
# may be allowed as well as permissions that may be used on those resources.
|
573
|
+
# Corresponds to the JSON property `accessBoundary`
|
574
|
+
# @return [Google::Apis::StsV1::GoogleIdentityStsV1betaAccessBoundary]
|
575
|
+
attr_accessor :access_boundary
|
576
|
+
|
577
|
+
# The intended audience(s) of the credential. The audience value(s) should be
|
578
|
+
# the name(s) of services intended to receive the credential. Example: `["https:/
|
579
|
+
# /pubsub.googleapis.com/", "https://storage.googleapis.com/"]`. A maximum of 5
|
580
|
+
# audiences can be included. For each provided audience, the maximum length is
|
581
|
+
# 262 characters.
|
582
|
+
# Corresponds to the JSON property `audiences`
|
583
|
+
# @return [Array<String>]
|
584
|
+
attr_accessor :audiences
|
585
|
+
|
586
|
+
# A Google project used for quota and billing purposes when the credential is
|
587
|
+
# used to access Google APIs. The provided project overrides the project bound
|
588
|
+
# to the credential. The value must be a project number or a project ID. Example:
|
589
|
+
# `my-sample-project-191923`. The maximum length is 32 characters.
|
590
|
+
# Corresponds to the JSON property `userProject`
|
591
|
+
# @return [String]
|
592
|
+
attr_accessor :user_project
|
593
|
+
|
594
|
+
def initialize(**args)
|
595
|
+
update!(**args)
|
596
|
+
end
|
597
|
+
|
598
|
+
# Update properties of this object
|
599
|
+
def update!(**args)
|
600
|
+
@access_boundary = args[:access_boundary] if args.key?(:access_boundary)
|
601
|
+
@audiences = args[:audiences] if args.key?(:audiences)
|
602
|
+
@user_project = args[:user_project] if args.key?(:user_project)
|
603
|
+
end
|
604
|
+
end
|
605
|
+
|
606
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
607
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
608
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
609
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
610
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
611
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
612
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
613
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
614
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
615
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
616
|
+
# string" description: "Create a notification string with a timestamp."
|
617
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
618
|
+
# exact variables and functions that may be referenced within an expression are
|
619
|
+
# determined by the service that evaluates it. See the service documentation for
|
620
|
+
# additional information.
|
621
|
+
class GoogleTypeExpr
|
622
|
+
include Google::Apis::Core::Hashable
|
623
|
+
|
624
|
+
# Optional. Description of the expression. This is a longer text which describes
|
625
|
+
# the expression, e.g. when hovered over it in a UI.
|
626
|
+
# Corresponds to the JSON property `description`
|
627
|
+
# @return [String]
|
628
|
+
attr_accessor :description
|
629
|
+
|
630
|
+
# Textual representation of an expression in Common Expression Language syntax.
|
631
|
+
# Corresponds to the JSON property `expression`
|
632
|
+
# @return [String]
|
633
|
+
attr_accessor :expression
|
634
|
+
|
635
|
+
# Optional. String indicating the location of the expression for error reporting,
|
636
|
+
# e.g. a file name and a position in the file.
|
637
|
+
# Corresponds to the JSON property `location`
|
638
|
+
# @return [String]
|
639
|
+
attr_accessor :location
|
640
|
+
|
641
|
+
# Optional. Title for the expression, i.e. a short string describing its purpose.
|
642
|
+
# This can be used e.g. in UIs which allow to enter the expression.
|
643
|
+
# Corresponds to the JSON property `title`
|
644
|
+
# @return [String]
|
645
|
+
attr_accessor :title
|
646
|
+
|
647
|
+
def initialize(**args)
|
648
|
+
update!(**args)
|
649
|
+
end
|
650
|
+
|
651
|
+
# Update properties of this object
|
652
|
+
def update!(**args)
|
653
|
+
@description = args[:description] if args.key?(:description)
|
654
|
+
@expression = args[:expression] if args.key?(:expression)
|
655
|
+
@location = args[:location] if args.key?(:location)
|
656
|
+
@title = args[:title] if args.key?(:title)
|
657
|
+
end
|
658
|
+
end
|
297
659
|
end
|
298
660
|
end
|
299
661
|
end
|
@@ -16,13 +16,13 @@ module Google
|
|
16
16
|
module Apis
|
17
17
|
module StsV1
|
18
18
|
# Version of the google-apis-sts_v1 gem
|
19
|
-
GEM_VERSION = "0.
|
19
|
+
GEM_VERSION = "0.13.0"
|
20
20
|
|
21
21
|
# Version of the code generator used to generate this client
|
22
|
-
GENERATOR_VERSION = "0.
|
22
|
+
GENERATOR_VERSION = "0.4.0"
|
23
23
|
|
24
24
|
# Revision of the discovery document this client was generated from
|
25
|
-
REVISION = "
|
25
|
+
REVISION = "20210910"
|
26
26
|
end
|
27
27
|
end
|
28
28
|
end
|
@@ -22,6 +22,24 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module StsV1
|
24
24
|
|
25
|
+
class GoogleIamV1Binding
|
26
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
27
|
+
|
28
|
+
include Google::Apis::Core::JsonObjectSupport
|
29
|
+
end
|
30
|
+
|
31
|
+
class GoogleIdentityStsV1AccessBoundary
|
32
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
33
|
+
|
34
|
+
include Google::Apis::Core::JsonObjectSupport
|
35
|
+
end
|
36
|
+
|
37
|
+
class GoogleIdentityStsV1AccessBoundaryRule
|
38
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
39
|
+
|
40
|
+
include Google::Apis::Core::JsonObjectSupport
|
41
|
+
end
|
42
|
+
|
25
43
|
class GoogleIdentityStsV1ExchangeTokenRequest
|
26
44
|
class Representation < Google::Apis::Core::JsonRepresentation; end
|
27
45
|
|
@@ -46,6 +64,64 @@ module Google
|
|
46
64
|
include Google::Apis::Core::JsonObjectSupport
|
47
65
|
end
|
48
66
|
|
67
|
+
class GoogleIdentityStsV1Options
|
68
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
69
|
+
|
70
|
+
include Google::Apis::Core::JsonObjectSupport
|
71
|
+
end
|
72
|
+
|
73
|
+
class GoogleIdentityStsV1betaAccessBoundary
|
74
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
75
|
+
|
76
|
+
include Google::Apis::Core::JsonObjectSupport
|
77
|
+
end
|
78
|
+
|
79
|
+
class GoogleIdentityStsV1betaAccessBoundaryRule
|
80
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
81
|
+
|
82
|
+
include Google::Apis::Core::JsonObjectSupport
|
83
|
+
end
|
84
|
+
|
85
|
+
class GoogleIdentityStsV1betaOptions
|
86
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
87
|
+
|
88
|
+
include Google::Apis::Core::JsonObjectSupport
|
89
|
+
end
|
90
|
+
|
91
|
+
class GoogleTypeExpr
|
92
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
93
|
+
|
94
|
+
include Google::Apis::Core::JsonObjectSupport
|
95
|
+
end
|
96
|
+
|
97
|
+
class GoogleIamV1Binding
|
98
|
+
# @private
|
99
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
100
|
+
property :condition, as: 'condition', class: Google::Apis::StsV1::GoogleTypeExpr, decorator: Google::Apis::StsV1::GoogleTypeExpr::Representation
|
101
|
+
|
102
|
+
collection :members, as: 'members'
|
103
|
+
property :role, as: 'role'
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
class GoogleIdentityStsV1AccessBoundary
|
108
|
+
# @private
|
109
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
110
|
+
collection :access_boundary_rules, as: 'accessBoundaryRules', class: Google::Apis::StsV1::GoogleIdentityStsV1AccessBoundaryRule, decorator: Google::Apis::StsV1::GoogleIdentityStsV1AccessBoundaryRule::Representation
|
111
|
+
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
class GoogleIdentityStsV1AccessBoundaryRule
|
116
|
+
# @private
|
117
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
118
|
+
property :availability_condition, as: 'availabilityCondition', class: Google::Apis::StsV1::GoogleTypeExpr, decorator: Google::Apis::StsV1::GoogleTypeExpr::Representation
|
119
|
+
|
120
|
+
collection :available_permissions, as: 'availablePermissions'
|
121
|
+
property :available_resource, as: 'availableResource'
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
49
125
|
class GoogleIdentityStsV1ExchangeTokenRequest
|
50
126
|
# @private
|
51
127
|
class Representation < Google::Apis::Core::JsonRepresentation
|
@@ -90,6 +166,54 @@ module Google
|
|
90
166
|
property :username, as: 'username'
|
91
167
|
end
|
92
168
|
end
|
169
|
+
|
170
|
+
class GoogleIdentityStsV1Options
|
171
|
+
# @private
|
172
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
173
|
+
property :access_boundary, as: 'accessBoundary', class: Google::Apis::StsV1::GoogleIdentityStsV1AccessBoundary, decorator: Google::Apis::StsV1::GoogleIdentityStsV1AccessBoundary::Representation
|
174
|
+
|
175
|
+
collection :audiences, as: 'audiences'
|
176
|
+
property :user_project, as: 'userProject'
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
180
|
+
class GoogleIdentityStsV1betaAccessBoundary
|
181
|
+
# @private
|
182
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
183
|
+
collection :access_boundary_rules, as: 'accessBoundaryRules', class: Google::Apis::StsV1::GoogleIdentityStsV1betaAccessBoundaryRule, decorator: Google::Apis::StsV1::GoogleIdentityStsV1betaAccessBoundaryRule::Representation
|
184
|
+
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
188
|
+
class GoogleIdentityStsV1betaAccessBoundaryRule
|
189
|
+
# @private
|
190
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
191
|
+
property :availability_condition, as: 'availabilityCondition', class: Google::Apis::StsV1::GoogleTypeExpr, decorator: Google::Apis::StsV1::GoogleTypeExpr::Representation
|
192
|
+
|
193
|
+
collection :available_permissions, as: 'availablePermissions'
|
194
|
+
property :available_resource, as: 'availableResource'
|
195
|
+
end
|
196
|
+
end
|
197
|
+
|
198
|
+
class GoogleIdentityStsV1betaOptions
|
199
|
+
# @private
|
200
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
201
|
+
property :access_boundary, as: 'accessBoundary', class: Google::Apis::StsV1::GoogleIdentityStsV1betaAccessBoundary, decorator: Google::Apis::StsV1::GoogleIdentityStsV1betaAccessBoundary::Representation
|
202
|
+
|
203
|
+
collection :audiences, as: 'audiences'
|
204
|
+
property :user_project, as: 'userProject'
|
205
|
+
end
|
206
|
+
end
|
207
|
+
|
208
|
+
class GoogleTypeExpr
|
209
|
+
# @private
|
210
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
211
|
+
property :description, as: 'description'
|
212
|
+
property :expression, as: 'expression'
|
213
|
+
property :location, as: 'location'
|
214
|
+
property :title, as: 'title'
|
215
|
+
end
|
216
|
+
end
|
93
217
|
end
|
94
218
|
end
|
95
219
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-apis-sts_v1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.13.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: 2021-
|
11
|
+
date: 2021-09-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: google-apis-core
|
@@ -16,7 +16,7 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0.
|
19
|
+
version: '0.4'
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: 2.a
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: '0.
|
29
|
+
version: '0.4'
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: 2.a
|
@@ -58,7 +58,7 @@ licenses:
|
|
58
58
|
metadata:
|
59
59
|
bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
|
60
60
|
changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-sts_v1/CHANGELOG.md
|
61
|
-
documentation_uri: https://googleapis.dev/ruby/google-apis-sts_v1/v0.
|
61
|
+
documentation_uri: https://googleapis.dev/ruby/google-apis-sts_v1/v0.13.0
|
62
62
|
source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-sts_v1
|
63
63
|
post_install_message:
|
64
64
|
rdoc_options: []
|