google-apis-sts_v1 0.1.0 → 0.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db115d37034bb8686c8cf5225281dbd6153529e01f1e81137b081d72f18b60c9
4
- data.tar.gz: 7fc7e1aae9d5b986ada9a538ff9c6883ce2edc83c51de32875939dacdbda749e
3
+ metadata.gz: ad83d8d7c878650c69654f899fd41ca7291c56ab4fd37225d56777daf805bffd
4
+ data.tar.gz: 372b9ea37cff48cf8c2d20d4b6ee48b3f5e9b37007be481da5496ea8b9dd95a0
5
5
  SHA512:
6
- metadata.gz: ed2662bfb049ef121bbec32c21863e7b8dc956bb21621483e2746fdd091ebc7ad463527f4e4e5ee5d7628870b34c459af508e998953e1b21efd0fce9b396cccd
7
- data.tar.gz: 154c551892c54a9c0064d08c35b4f69937f44d62cf6aadb8d9e6d71dd6adc90a599b01efb67cb729044da2a5ca213960431edcd55817ffc8433df732bc376fdb
6
+ metadata.gz: 8f1e72fe1f0dc5a65df53db3ecafbb48097947f6e92582628846246aec22bf3a9638ef62424bde82805904a0e24d7a3de787d63f17c1fb76f80179afb49a6bcd
7
+ data.tar.gz: 42884317e457d60fb8d9b9fde62ed8f43e853287c8dc30b54f6574962cdbb88430c644c850e6d1af644383232f39bbf7bd27fdc2897faa5ce3e61a4ae15c9129
data/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Release history for google-apis-sts_v1
2
2
 
3
+ ### v0.6.0 (2021-05-20)
4
+
5
+ * Unspecified changes
6
+
7
+ ### v0.5.0 (2021-05-15)
8
+
9
+ * Regenerated from discovery document revision 20210508
10
+ * Regenerated using generator version 0.2.0
11
+
12
+ ### v0.4.0 (2021-03-04)
13
+
14
+ * Unspecified changes
15
+
16
+ ### v0.3.0 (2021-02-12)
17
+
18
+ * Regenerated from discovery document revision 20210206
19
+
20
+ ### v0.2.0 (2021-02-05)
21
+
22
+ * Regenerated from discovery document revision 20210130
23
+ * Regenerated using generator version 0.1.2
24
+
3
25
  ### v0.1.0 (2021-01-07)
4
26
 
5
27
  * Regenerated using generator version 0.1.1
@@ -26,6 +26,13 @@ module Google
26
26
  class GoogleIdentityStsV1ExchangeTokenRequest
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
+ # The full resource name of the identity provider; for example: `//iam.
30
+ # googleapis.com/projects//workloadIdentityPools//providers/`. Required when
31
+ # exchanging an external credential for a Google access token.
32
+ # Corresponds to the JSON property `audience`
33
+ # @return [String]
34
+ attr_accessor :audience
35
+
29
36
  # Required. The grant type. Must be `urn:ietf:params:oauth:grant-type:token-
30
37
  # exchange`, which indicates a token exchange.
31
38
  # Corresponds to the JSON property `grantType`
@@ -45,17 +52,86 @@ module Google
45
52
  # @return [String]
46
53
  attr_accessor :requested_token_type
47
54
 
48
- # Required. The input token. You can use a Google-issued OAuth 2.0 access token
49
- # with this field to obtain an access token with new security attributes applied,
50
- # such as a Credential Access Boundary. If an access token already contains
51
- # security attributes, you cannot apply additional security attributes.
55
+ # The OAuth 2.0 scopes to include on the resulting access token, formatted as a
56
+ # list of space-delimited, case-sensitive strings. Required when exchanging an
57
+ # external credential for a Google access token.
58
+ # Corresponds to the JSON property `scope`
59
+ # @return [String]
60
+ attr_accessor :scope
61
+
62
+ # Required. The input token. This token is a either an external credential
63
+ # issued by a workload identity pool provider, or a short-lived access token
64
+ # issued by Google. If the token is an OIDC JWT, it must use the JWT format
65
+ # defined in [RFC 7523](https://tools.ietf.org/html/rfc7523), and the `
66
+ # subject_token_type` must be `urn:ietf:params:oauth:token-type:jwt`. The
67
+ # following headers are required: - `kid`: The identifier of the signing key
68
+ # securing the JWT. - `alg`: The cryptographic algorithm securing the JWT. Must
69
+ # be `RS256` or `ES256`. The following payload fields are required. For more
70
+ # information, see [RFC 7523, Section 3](https://tools.ietf.org/html/rfc7523#
71
+ # section-3): - `iss`: The issuer of the token. The issuer must provide a
72
+ # discovery document at the URL `/.well-known/openid-configuration`, where `` is
73
+ # the value of this field. The document must be formatted according to section 4.
74
+ # 2 of the [OIDC 1.0 Discovery specification](https://openid.net/specs/openid-
75
+ # connect-discovery-1_0.html#ProviderConfigurationResponse). - `iat`: The issue
76
+ # time, in seconds, since the Unix epoch. Must be in the past. - `exp`: The
77
+ # expiration time, in seconds, since the Unix epoch. Must be less than 48 hours
78
+ # after `iat`. Shorter expiration times are more secure. If possible, we
79
+ # recommend setting an expiration time less than 6 hours. - `sub`: The identity
80
+ # asserted in the JWT. - `aud`: For workload identity pools, this must be a
81
+ # value specified in the allowed audiences for the workload identity pool
82
+ # provider, or one of the audiences allowed by default if no audiences were
83
+ # specified. See https://cloud.google.com/iam/docs/reference/rest/v1/projects.
84
+ # locations.workloadIdentityPools.providers#oidc Example header: ``` ` "alg": "
85
+ # RS256", "kid": "us-east-11" ` ``` Example payload: ``` ` "iss": "https://
86
+ # accounts.google.com", "iat": 1517963104, "exp": 1517966704, "aud": "//iam.
87
+ # googleapis.com/projects/1234567890123/locations/global/workloadIdentityPools/
88
+ # my-pool/providers/my-provider", "sub": "113475438248934895348", "my_claims": `
89
+ # "additional_claim": "value" ` ` ``` If `subject_token` is for AWS, it must be
90
+ # a serialized `GetCallerIdentity` token. This token contains the same
91
+ # information as a request to the AWS [`GetCallerIdentity()`](https://docs.aws.
92
+ # amazon.com/STS/latest/APIReference/API_GetCallerIdentity) method, as well as
93
+ # the AWS [signature](https://docs.aws.amazon.com/general/latest/gr/
94
+ # signing_aws_api_requests.html) for the request information. Use Signature
95
+ # Version 4. Format the request as URL-encoded JSON, and set the `
96
+ # subject_token_type` parameter to `urn:ietf:params:aws:token-type:aws4_request`.
97
+ # The following parameters are required: - `url`: The URL of the AWS STS
98
+ # endpoint for `GetCallerIdentity()`, such as `https://sts.amazonaws.com?Action=
99
+ # GetCallerIdentity&Version=2011-06-15`. Regional endpoints are also supported. -
100
+ # `method`: The HTTP request method: `POST`. - `headers`: The HTTP request
101
+ # headers, which must include: - `Authorization`: The request signature. - `x-
102
+ # amz-date`: The time you will send the request, formatted as an [ISO8601 Basic](
103
+ # https://docs.aws.amazon.com/general/latest/gr/sigv4_elements.html#
104
+ # sigv4_elements_date) string. This value is typically set to the current time
105
+ # and is used to help prevent replay attacks. - `host`: The hostname of the `url`
106
+ # field; for example, `sts.amazonaws.com`. - `x-goog-cloud-target-resource`:
107
+ # The full, canonical resource name of the workload identity pool provider, with
108
+ # or without an `https:` prefix. To help ensure data integrity, we recommend
109
+ # including this header in the `SignedHeaders` field of the signed request. For
110
+ # example: //iam.googleapis.com/projects//locations//workloadIdentityPools//
111
+ # providers/ https://iam.googleapis.com/projects//locations//
112
+ # workloadIdentityPools//providers/ If you are using temporary security
113
+ # credentials provided by AWS, you must also include the header `x-amz-security-
114
+ # token`, with the value set to the session token. The following example shows a
115
+ # `GetCallerIdentity` token: ``` ` "headers": [ `"key": "x-amz-date", "value": "
116
+ # 20200815T015049Z"`, `"key": "Authorization", "value": "AWS4-HMAC-SHA256+
117
+ # Credential=$credential,+SignedHeaders=host;x-amz-date;x-goog-cloud-target-
118
+ # resource,+Signature=$signature"`, `"key": "x-goog-cloud-target-resource", "
119
+ # value": "//iam.googleapis.com/projects//locations//workloadIdentityPools//
120
+ # providers/"`, `"key": "host", "value": "sts.amazonaws.com"` . ], "method": "
121
+ # POST", "url": "https://sts.amazonaws.com?Action=GetCallerIdentity&Version=2011-
122
+ # 06-15" ` ``` You can also use a Google-issued OAuth 2.0 access token with this
123
+ # field to obtain an access token with new security attributes applied, such as
124
+ # a Credential Access Boundary. In this case, set `subject_token_type` to `urn:
125
+ # ietf:params:oauth:token-type:access_token`. If an access token already
126
+ # contains security attributes, you cannot apply additional security attributes.
52
127
  # Corresponds to the JSON property `subjectToken`
53
128
  # @return [String]
54
129
  attr_accessor :subject_token
55
130
 
56
131
  # Required. An identifier that indicates the type of the security token in the `
57
- # subject_token` parameter. Must be `urn:ietf:params:oauth:token-type:
58
- # access_token`.
132
+ # subject_token` parameter. Supported values are `urn:ietf:params:oauth:token-
133
+ # type:jwt`, `urn:ietf:params:aws:token-type:aws4_request`, and `urn:ietf:params:
134
+ # oauth:token-type:access_token`.
59
135
  # Corresponds to the JSON property `subjectTokenType`
60
136
  # @return [String]
61
137
  attr_accessor :subject_token_type
@@ -66,9 +142,11 @@ module Google
66
142
 
67
143
  # Update properties of this object
68
144
  def update!(**args)
145
+ @audience = args[:audience] if args.key?(:audience)
69
146
  @grant_type = args[:grant_type] if args.key?(:grant_type)
70
147
  @options = args[:options] if args.key?(:options)
71
148
  @requested_token_type = args[:requested_token_type] if args.key?(:requested_token_type)
149
+ @scope = args[:scope] if args.key?(:scope)
72
150
  @subject_token = args[:subject_token] if args.key?(:subject_token)
73
151
  @subject_token_type = args[:subject_token_type] if args.key?(:subject_token_type)
74
152
  end
@@ -79,15 +157,17 @@ module Google
79
157
  include Google::Apis::Core::Hashable
80
158
 
81
159
  # An OAuth 2.0 security token, issued by Google, in response to the token
82
- # exchange request.
160
+ # exchange request. Tokens can vary in size, depending in part on the size of
161
+ # mapped claims, up to a maximum of 12288 bytes (12 KB). Google reserves the
162
+ # right to change the token size and the maximum length at any time.
83
163
  # Corresponds to the JSON property `access_token`
84
164
  # @return [String]
85
165
  attr_accessor :access_token
86
166
 
87
- # The amount of time, in seconds, between the time when the `access_token` was
88
- # issued and the time when the `access_token` will expire. This field is absent
167
+ # The amount of time, in seconds, between the time when the access token was
168
+ # issued and the time when the access token will expire. This field is absent
89
169
  # when the `subject_token` in the request is a Google-issued, short-lived access
90
- # token. In this case, the `access_token` has the same expiration time as the `
170
+ # token. In this case, the access token has the same expiration time as the `
91
171
  # subject_token`.
92
172
  # Corresponds to the JSON property `expires_in`
93
173
  # @return [Fixnum]
@@ -99,7 +179,7 @@ module Google
99
179
  # @return [String]
100
180
  attr_accessor :issued_token_type
101
181
 
102
- # The type of `access_token`. Always has the value `Bearer`.
182
+ # The type of access token. Always has the value `Bearer`.
103
183
  # Corresponds to the JSON property `token_type`
104
184
  # @return [String]
105
185
  attr_accessor :token_type
@@ -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.1.0"
19
+ GEM_VERSION = "0.6.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
- GENERATOR_VERSION = "0.1.1"
22
+ GENERATOR_VERSION = "0.2.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20201004"
25
+ REVISION = "20210508"
26
26
  end
27
27
  end
28
28
  end
@@ -37,9 +37,11 @@ module Google
37
37
  class GoogleIdentityStsV1ExchangeTokenRequest
38
38
  # @private
39
39
  class Representation < Google::Apis::Core::JsonRepresentation
40
+ property :audience, as: 'audience'
40
41
  property :grant_type, as: 'grantType'
41
42
  property :options, as: 'options'
42
43
  property :requested_token_type, as: 'requestedTokenType'
44
+ property :scope, as: 'scope'
43
45
  property :subject_token, as: 'subjectToken'
44
46
  property :subject_token_type, as: 'subjectTokenType'
45
47
  end
@@ -50,7 +50,12 @@ module Google
50
50
  @batch_path = 'batch'
51
51
  end
52
52
 
53
- # Exchanges a credential for a Google OAuth 2.0 access token.
53
+ # Exchanges a credential for a Google OAuth 2.0 access token. The token asserts
54
+ # an external identity within a workload identity pool, or it applies a
55
+ # Credential Access Boundary to a Google access token. When you call this method,
56
+ # do not send the `Authorization` HTTP header in the request. This method does
57
+ # not require the `Authorization` header, and using the header can cause the
58
+ # request to fail.
54
59
  # @param [Google::Apis::StsV1::GoogleIdentityStsV1ExchangeTokenRequest] google_identity_sts_v1_exchange_token_request_object
55
60
  # @param [String] fields
56
61
  # Selector specifying which fields to include in a partial response.
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.1.0
4
+ version: 0.6.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-01-08 00:00:00.000000000 Z
11
+ date: 2021-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -52,7 +52,7 @@ licenses:
52
52
  metadata:
53
53
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
54
54
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-sts_v1/CHANGELOG.md
55
- documentation_uri: https://googleapis.dev/ruby/google-apis-sts_v1/v0.1.0
55
+ documentation_uri: https://googleapis.dev/ruby/google-apis-sts_v1/v0.6.0
56
56
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-sts_v1
57
57
  post_install_message:
58
58
  rdoc_options: []
@@ -62,14 +62,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
62
62
  requirements:
63
63
  - - ">="
64
64
  - !ruby/object:Gem::Version
65
- version: '2.4'
65
+ version: '2.5'
66
66
  required_rubygems_version: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - ">="
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  requirements: []
72
- rubygems_version: 3.1.4
72
+ rubygems_version: 3.2.17
73
73
  signing_key:
74
74
  specification_version: 4
75
75
  summary: Simple REST client for Security Token Service API V1