aws-sdk-core 3.185.1 → 3.214.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (177) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +409 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +1 -2
  5. data/lib/aws-defaults.rb +4 -1
  6. data/lib/aws-sdk-core/assume_role_credentials.rb +12 -5
  7. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +13 -7
  8. data/lib/aws-sdk-core/binary/decode_handler.rb +3 -9
  9. data/lib/aws-sdk-core/binary/encode_handler.rb +1 -1
  10. data/lib/aws-sdk-core/binary/event_builder.rb +34 -37
  11. data/lib/aws-sdk-core/binary/event_stream_decoder.rb +1 -0
  12. data/lib/aws-sdk-core/binary/event_stream_encoder.rb +4 -3
  13. data/lib/aws-sdk-core/cbor/decoder.rb +310 -0
  14. data/lib/aws-sdk-core/cbor/encoder.rb +243 -0
  15. data/lib/aws-sdk-core/cbor.rb +53 -0
  16. data/lib/aws-sdk-core/client_side_monitoring.rb +9 -0
  17. data/lib/aws-sdk-core/client_stubs.rb +23 -19
  18. data/lib/aws-sdk-core/credential_provider.rb +1 -1
  19. data/lib/aws-sdk-core/credential_provider_chain.rb +13 -6
  20. data/lib/aws-sdk-core/credentials.rb +13 -6
  21. data/lib/aws-sdk-core/ec2_metadata.rb +1 -1
  22. data/lib/aws-sdk-core/ecs_credentials.rb +78 -11
  23. data/lib/aws-sdk-core/endpoints/endpoint.rb +3 -1
  24. data/lib/aws-sdk-core/endpoints/matchers.rb +6 -9
  25. data/lib/aws-sdk-core/endpoints.rb +74 -18
  26. data/lib/aws-sdk-core/error_handler.rb +41 -0
  27. data/lib/aws-sdk-core/errors.rb +11 -2
  28. data/lib/aws-sdk-core/event_emitter.rb +0 -16
  29. data/lib/aws-sdk-core/instance_profile_credentials.rb +55 -32
  30. data/lib/aws-sdk-core/json/builder.rb +8 -1
  31. data/lib/aws-sdk-core/json/error_handler.rb +17 -11
  32. data/lib/aws-sdk-core/json/handler.rb +13 -6
  33. data/lib/aws-sdk-core/json/json_engine.rb +3 -1
  34. data/lib/aws-sdk-core/json/oj_engine.rb +7 -1
  35. data/lib/aws-sdk-core/json/parser.rb +32 -2
  36. data/lib/aws-sdk-core/json.rb +43 -14
  37. data/lib/aws-sdk-core/log/param_filter.rb +2 -2
  38. data/lib/aws-sdk-core/log.rb +10 -0
  39. data/lib/aws-sdk-core/lru_cache.rb +75 -0
  40. data/lib/aws-sdk-core/pageable_response.rb +1 -1
  41. data/lib/aws-sdk-core/param_validator.rb +7 -2
  42. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +2 -0
  43. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +6 -3
  44. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +1 -0
  45. data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +14 -2
  46. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +9 -3
  47. data/lib/aws-sdk-core/plugins/global_configuration.rb +8 -9
  48. data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -1
  49. data/lib/aws-sdk-core/plugins/invocation_id.rb +1 -11
  50. data/lib/aws-sdk-core/plugins/logging.rb +2 -0
  51. data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +3 -1
  52. data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -24
  53. data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +6 -8
  54. data/lib/aws-sdk-core/plugins/protocols/query.rb +4 -2
  55. data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +3 -15
  56. data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +3 -0
  57. data/lib/aws-sdk-core/plugins/protocols/rpc_v2.rb +17 -0
  58. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +74 -25
  59. data/lib/aws-sdk-core/plugins/request_compression.rb +11 -2
  60. data/lib/aws-sdk-core/plugins/retry_errors.rb +12 -3
  61. data/lib/aws-sdk-core/plugins/sign.rb +27 -15
  62. data/lib/aws-sdk-core/plugins/signature_v2.rb +2 -1
  63. data/lib/aws-sdk-core/plugins/signature_v4.rb +2 -1
  64. data/lib/aws-sdk-core/plugins/stub_responses.rb +30 -2
  65. data/lib/aws-sdk-core/plugins/telemetry.rb +75 -0
  66. data/lib/aws-sdk-core/plugins/transfer_encoding.rb +16 -9
  67. data/lib/aws-sdk-core/plugins/user_agent.rb +70 -26
  68. data/lib/aws-sdk-core/plugins.rb +39 -0
  69. data/lib/aws-sdk-core/process_credentials.rb +47 -28
  70. data/lib/aws-sdk-core/query/ec2_handler.rb +27 -0
  71. data/lib/aws-sdk-core/query/ec2_param_builder.rb +5 -7
  72. data/lib/aws-sdk-core/query/handler.rb +4 -4
  73. data/lib/aws-sdk-core/query/param_builder.rb +2 -2
  74. data/lib/aws-sdk-core/query.rb +2 -1
  75. data/lib/aws-sdk-core/refreshing_credentials.rb +12 -6
  76. data/lib/aws-sdk-core/resources.rb +8 -0
  77. data/lib/aws-sdk-core/rest/content_type_handler.rb +60 -0
  78. data/lib/aws-sdk-core/rest/handler.rb +3 -4
  79. data/lib/aws-sdk-core/rest/request/body.rb +32 -5
  80. data/lib/aws-sdk-core/rest/request/endpoint.rb +24 -4
  81. data/lib/aws-sdk-core/rest/request/headers.rb +14 -6
  82. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +62 -36
  83. data/lib/aws-sdk-core/rest/response/body.rb +15 -1
  84. data/lib/aws-sdk-core/rest/response/header_list_parser.rb +79 -0
  85. data/lib/aws-sdk-core/rest/response/headers.rb +8 -3
  86. data/lib/aws-sdk-core/rest.rb +1 -0
  87. data/lib/aws-sdk-core/rpc_v2/builder.rb +62 -0
  88. data/lib/aws-sdk-core/rpc_v2/cbor_engine.rb +18 -0
  89. data/lib/aws-sdk-core/rpc_v2/content_type_handler.rb +47 -0
  90. data/lib/aws-sdk-core/rpc_v2/error_handler.rb +85 -0
  91. data/lib/aws-sdk-core/rpc_v2/handler.rb +79 -0
  92. data/lib/aws-sdk-core/rpc_v2/parser.rb +90 -0
  93. data/lib/aws-sdk-core/rpc_v2.rb +69 -0
  94. data/lib/aws-sdk-core/shared_config.rb +7 -2
  95. data/lib/aws-sdk-core/shared_credentials.rb +0 -7
  96. data/lib/aws-sdk-core/sso_credentials.rb +2 -1
  97. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +12 -11
  98. data/lib/aws-sdk-core/stubbing/protocols/json.rb +11 -10
  99. data/lib/aws-sdk-core/stubbing/protocols/query.rb +7 -6
  100. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +2 -1
  101. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +9 -8
  102. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +6 -5
  103. data/lib/aws-sdk-core/stubbing/protocols/rpc_v2.rb +39 -0
  104. data/lib/aws-sdk-core/stubbing.rb +22 -0
  105. data/lib/aws-sdk-core/telemetry/base.rb +177 -0
  106. data/lib/aws-sdk-core/telemetry/no_op.rb +70 -0
  107. data/lib/aws-sdk-core/telemetry/otel.rb +235 -0
  108. data/lib/aws-sdk-core/telemetry/span_kind.rb +22 -0
  109. data/lib/aws-sdk-core/telemetry/span_status.rb +59 -0
  110. data/lib/aws-sdk-core/telemetry.rb +78 -0
  111. data/lib/aws-sdk-core/util.rb +39 -0
  112. data/lib/aws-sdk-core/waiters/poller.rb +10 -5
  113. data/lib/aws-sdk-core/xml/builder.rb +17 -9
  114. data/lib/aws-sdk-core/xml/error_handler.rb +32 -42
  115. data/lib/aws-sdk-core/xml/parser/frame.rb +4 -20
  116. data/lib/aws-sdk-core/xml/parser/stack.rb +2 -0
  117. data/lib/aws-sdk-core/xml/parser.rb +2 -6
  118. data/lib/aws-sdk-core.rb +82 -107
  119. data/lib/aws-sdk-sso/client.rb +119 -55
  120. data/lib/aws-sdk-sso/client_api.rb +7 -0
  121. data/lib/aws-sdk-sso/endpoint_parameters.rb +9 -6
  122. data/lib/aws-sdk-sso/endpoints.rb +2 -54
  123. data/lib/aws-sdk-sso/plugins/endpoints.rb +23 -22
  124. data/lib/aws-sdk-sso/types.rb +1 -0
  125. data/lib/aws-sdk-sso.rb +15 -11
  126. data/lib/aws-sdk-ssooidc/client.rb +504 -83
  127. data/lib/aws-sdk-ssooidc/client_api.rb +83 -1
  128. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +9 -6
  129. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +2 -2
  130. data/lib/aws-sdk-ssooidc/endpoints.rb +2 -40
  131. data/lib/aws-sdk-ssooidc/errors.rb +52 -0
  132. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +23 -20
  133. data/lib/aws-sdk-ssooidc/types.rb +373 -51
  134. data/lib/aws-sdk-ssooidc.rb +15 -11
  135. data/lib/aws-sdk-sts/client.rb +334 -105
  136. data/lib/aws-sdk-sts/client_api.rb +36 -10
  137. data/lib/aws-sdk-sts/customizations.rb +5 -1
  138. data/lib/aws-sdk-sts/endpoint_parameters.rb +10 -9
  139. data/lib/aws-sdk-sts/endpoint_provider.rb +2 -2
  140. data/lib/aws-sdk-sts/endpoints.rb +2 -118
  141. data/lib/aws-sdk-sts/plugins/endpoints.rb +23 -30
  142. data/lib/aws-sdk-sts/presigner.rb +1 -1
  143. data/lib/aws-sdk-sts/types.rb +188 -30
  144. data/lib/aws-sdk-sts.rb +15 -11
  145. data/lib/seahorse/client/async_base.rb +1 -1
  146. data/lib/seahorse/client/async_response.rb +19 -0
  147. data/lib/seahorse/client/base.rb +18 -7
  148. data/lib/seahorse/client/h2/handler.rb +14 -3
  149. data/lib/seahorse/client/handler.rb +1 -1
  150. data/lib/seahorse/client/net_http/connection_pool.rb +11 -11
  151. data/lib/seahorse/client/net_http/handler.rb +21 -9
  152. data/lib/seahorse/client/net_http/patches.rb +1 -4
  153. data/lib/seahorse/client/plugin.rb +9 -0
  154. data/lib/seahorse/client/plugins/endpoint.rb +0 -1
  155. data/lib/seahorse/client/plugins/h2.rb +3 -3
  156. data/lib/seahorse/client/plugins/net_http.rb +57 -16
  157. data/lib/seahorse/client/request_context.rb +8 -1
  158. data/lib/seahorse/model/shapes.rb +2 -2
  159. data/sig/aws-sdk-core/client_stubs.rbs +10 -0
  160. data/sig/aws-sdk-core/errors.rbs +22 -0
  161. data/sig/aws-sdk-core/resources/collection.rbs +21 -0
  162. data/sig/aws-sdk-core/structure.rbs +4 -0
  163. data/sig/aws-sdk-core/telemetry/base.rbs +46 -0
  164. data/sig/aws-sdk-core/telemetry/otel.rbs +22 -0
  165. data/sig/aws-sdk-core/telemetry/span_kind.rbs +15 -0
  166. data/sig/aws-sdk-core/telemetry/span_status.rbs +24 -0
  167. data/sig/aws-sdk-core/waiters/errors.rbs +20 -0
  168. data/sig/aws-sdk-core.rbs +7 -0
  169. data/sig/seahorse/client/base.rbs +25 -0
  170. data/sig/seahorse/client/handler_builder.rbs +16 -0
  171. data/sig/seahorse/client/response.rbs +61 -0
  172. metadata +61 -19
  173. /data/lib/aws-sdk-core/xml/parser/{engines/libxml.rb → libxml_engine.rb} +0 -0
  174. /data/lib/aws-sdk-core/xml/parser/{engines/nokogiri.rb → nokogiri_engine.rb} +0 -0
  175. /data/lib/aws-sdk-core/xml/parser/{engines/oga.rb → oga_engine.rb} +0 -0
  176. /data/lib/aws-sdk-core/xml/parser/{engines/ox.rb → ox_engine.rb} +0 -0
  177. /data/lib/aws-sdk-core/xml/parser/{engines/rexml.rb → rexml_engine.rb} +0 -0
@@ -13,9 +13,13 @@ module Aws::SSOOIDC
13
13
  # You do not have sufficient access to perform this action.
14
14
  #
15
15
  # @!attribute [rw] error
16
+ # Single error code. For this exception the value will be
17
+ # `access_denied`.
16
18
  # @return [String]
17
19
  #
18
20
  # @!attribute [rw] error_description
21
+ # Human-readable text providing additional information, used to assist
22
+ # the client developer in understanding the error that occurred.
19
23
  # @return [String]
20
24
  #
21
25
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AccessDeniedException AWS API Documentation
@@ -31,9 +35,13 @@ module Aws::SSOOIDC
31
35
  # session token is pending.
32
36
  #
33
37
  # @!attribute [rw] error
38
+ # Single error code. For this exception the value will be
39
+ # `authorization_pending`.
34
40
  # @return [String]
35
41
  #
36
42
  # @!attribute [rw] error_description
43
+ # Human-readable text providing additional information, used to assist
44
+ # the client developer in understanding the error that occurred.
37
45
  # @return [String]
38
46
  #
39
47
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AuthorizationPendingException AWS API Documentation
@@ -46,8 +54,8 @@ module Aws::SSOOIDC
46
54
  end
47
55
 
48
56
  # @!attribute [rw] client_id
49
- # The unique identifier string for each client. This value should come
50
- # from the persisted result of the RegisterClient API.
57
+ # The unique identifier string for the client or application. This
58
+ # value comes from the result of the RegisterClient API.
51
59
  # @return [String]
52
60
  #
53
61
  # @!attribute [rw] client_secret
@@ -56,38 +64,40 @@ module Aws::SSOOIDC
56
64
  # @return [String]
57
65
  #
58
66
  # @!attribute [rw] grant_type
59
- # Supports grant types for the authorization code, refresh token, and
60
- # device code request. For device code requests, specify the following
61
- # value:
67
+ # Supports the following OAuth grant types: Device Code and Refresh
68
+ # Token. Specify either of the following values, depending on the
69
+ # grant type that you want:
70
+ #
71
+ # * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
62
72
  #
63
- # `urn:ietf:params:oauth:grant-type:device_code `
73
+ # * Refresh Token - `refresh_token`
64
74
  #
65
75
  # For information about how to obtain the device code, see the
66
76
  # StartDeviceAuthorization topic.
67
77
  # @return [String]
68
78
  #
69
79
  # @!attribute [rw] device_code
70
- # Used only when calling this API for the device code grant type. This
71
- # short-term code is used to identify this authentication attempt.
72
- # This should come from an in-memory reference to the result of the
73
- # StartDeviceAuthorization API.
80
+ # Used only when calling this API for the Device Code grant type. This
81
+ # short-term code is used to identify this authorization request. This
82
+ # comes from the result of the StartDeviceAuthorization API.
74
83
  # @return [String]
75
84
  #
76
85
  # @!attribute [rw] code
77
- # The authorization code received from the authorization service. This
78
- # parameter is required to perform an authorization grant request to
79
- # get access to a token.
86
+ # Used only when calling this API for the Authorization Code grant
87
+ # type. The short-term code is used to identify this authorization
88
+ # request. This grant type is currently unsupported for the
89
+ # CreateToken API.
80
90
  # @return [String]
81
91
  #
82
92
  # @!attribute [rw] refresh_token
83
- # Currently, `refreshToken` is not yet implemented and is not
84
- # supported. For more information about the features and limitations
85
- # of the current IAM Identity Center OIDC implementation, see
86
- # *Considerations for Using this Guide* in the [IAM Identity Center
87
- # OIDC API Reference][1].
93
+ # Used only when calling this API for the Refresh Token grant type.
94
+ # This token is used to refresh short-term tokens, such as the access
95
+ # token, that might expire.
88
96
  #
89
- # The token used to obtain an access token in the event that the
90
- # access token is invalid or expired.
97
+ # For more information about the features and limitations of the
98
+ # current IAM Identity Center OIDC implementation, see *Considerations
99
+ # for Using this Guide* in the [IAM Identity Center OIDC API
100
+ # Reference][1].
91
101
  #
92
102
  #
93
103
  #
@@ -95,15 +105,24 @@ module Aws::SSOOIDC
95
105
  # @return [String]
96
106
  #
97
107
  # @!attribute [rw] scope
98
- # The list of scopes that is defined by the client. Upon
99
- # authorization, this list is used to restrict permissions when
100
- # granting an access token.
108
+ # The list of scopes for which authorization is requested. The access
109
+ # token that is issued is limited to the scopes that are granted. If
110
+ # this value is not specified, IAM Identity Center authorizes all
111
+ # scopes that are configured for the client during the call to
112
+ # RegisterClient.
101
113
  # @return [Array<String>]
102
114
  #
103
115
  # @!attribute [rw] redirect_uri
104
- # The location of the application that will receive the authorization
105
- # code. Users authorize the service to send the request to this
106
- # location.
116
+ # Used only when calling this API for the Authorization Code grant
117
+ # type. This value specifies the location of the client or application
118
+ # that has registered to receive the authorization code.
119
+ # @return [String]
120
+ #
121
+ # @!attribute [rw] code_verifier
122
+ # Used only when calling this API for the Authorization Code grant
123
+ # type. This value is generated by the client and presented to
124
+ # validate the original code challenge value the client passed at
125
+ # authorization time.
107
126
  # @return [String]
108
127
  #
109
128
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenRequest AWS API Documentation
@@ -116,19 +135,20 @@ module Aws::SSOOIDC
116
135
  :code,
117
136
  :refresh_token,
118
137
  :scope,
119
- :redirect_uri)
120
- SENSITIVE = []
138
+ :redirect_uri,
139
+ :code_verifier)
140
+ SENSITIVE = [:client_secret, :refresh_token, :code_verifier]
121
141
  include Aws::Structure
122
142
  end
123
143
 
124
144
  # @!attribute [rw] access_token
125
- # An opaque token to access IAM Identity Center resources assigned to
126
- # a user.
145
+ # A bearer token to access Amazon Web Services accounts and
146
+ # applications assigned to a user.
127
147
  # @return [String]
128
148
  #
129
149
  # @!attribute [rw] token_type
130
150
  # Used to notify the client that the returned token is an access
131
- # token. The supported type is `BearerToken`.
151
+ # token. The supported token type is `Bearer`.
132
152
  # @return [String]
133
153
  #
134
154
  # @!attribute [rw] expires_in
@@ -136,44 +156,219 @@ module Aws::SSOOIDC
136
156
  # @return [Integer]
137
157
  #
138
158
  # @!attribute [rw] refresh_token
139
- # Currently, `refreshToken` is not yet implemented and is not
140
- # supported. For more information about the features and limitations
141
- # of the current IAM Identity Center OIDC implementation, see
142
- # *Considerations for Using this Guide* in the [IAM Identity Center
143
- # OIDC API Reference][1].
144
- #
145
159
  # A token that, if present, can be used to refresh a previously issued
146
160
  # access token that might have expired.
147
161
  #
162
+ # For more information about the features and limitations of the
163
+ # current IAM Identity Center OIDC implementation, see *Considerations
164
+ # for Using this Guide* in the [IAM Identity Center OIDC API
165
+ # Reference][1].
166
+ #
148
167
  #
149
168
  #
150
169
  # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
151
170
  # @return [String]
152
171
  #
153
172
  # @!attribute [rw] id_token
154
- # Currently, `idToken` is not yet implemented and is not supported.
173
+ # The `idToken` is not implemented or supported. For more information
174
+ # about the features and limitations of the current IAM Identity
175
+ # Center OIDC implementation, see *Considerations for Using this
176
+ # Guide* in the [IAM Identity Center OIDC API Reference][1].
177
+ #
178
+ # A JSON Web Token (JWT) that identifies who is associated with the
179
+ # issued access token.
180
+ #
181
+ #
182
+ #
183
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
184
+ # @return [String]
185
+ #
186
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenResponse AWS API Documentation
187
+ #
188
+ class CreateTokenResponse < Struct.new(
189
+ :access_token,
190
+ :token_type,
191
+ :expires_in,
192
+ :refresh_token,
193
+ :id_token)
194
+ SENSITIVE = [:access_token, :refresh_token, :id_token]
195
+ include Aws::Structure
196
+ end
197
+
198
+ # @!attribute [rw] client_id
199
+ # The unique identifier string for the client or application. This
200
+ # value is an application ARN that has OAuth grants configured.
201
+ # @return [String]
202
+ #
203
+ # @!attribute [rw] grant_type
204
+ # Supports the following OAuth grant types: Authorization Code,
205
+ # Refresh Token, JWT Bearer, and Token Exchange. Specify one of the
206
+ # following values, depending on the grant type that you want:
207
+ #
208
+ # * Authorization Code - `authorization_code`
209
+ #
210
+ # * Refresh Token - `refresh_token`
211
+ #
212
+ # * JWT Bearer - `urn:ietf:params:oauth:grant-type:jwt-bearer`
213
+ #
214
+ # * Token Exchange -
215
+ # `urn:ietf:params:oauth:grant-type:token-exchange`
216
+ # @return [String]
217
+ #
218
+ # @!attribute [rw] code
219
+ # Used only when calling this API for the Authorization Code grant
220
+ # type. This short-term code is used to identify this authorization
221
+ # request. The code is obtained through a redirect from IAM Identity
222
+ # Center to a redirect URI persisted in the Authorization Code
223
+ # GrantOptions for the application.
224
+ # @return [String]
225
+ #
226
+ # @!attribute [rw] refresh_token
227
+ # Used only when calling this API for the Refresh Token grant type.
228
+ # This token is used to refresh short-term tokens, such as the access
229
+ # token, that might expire.
230
+ #
155
231
  # For more information about the features and limitations of the
156
232
  # current IAM Identity Center OIDC implementation, see *Considerations
157
233
  # for Using this Guide* in the [IAM Identity Center OIDC API
158
234
  # Reference][1].
159
235
  #
160
- # The identifier of the user that associated with the access token, if
161
- # present.
236
+ #
237
+ #
238
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
239
+ # @return [String]
240
+ #
241
+ # @!attribute [rw] assertion
242
+ # Used only when calling this API for the JWT Bearer grant type. This
243
+ # value specifies the JSON Web Token (JWT) issued by a trusted token
244
+ # issuer. To authorize a trusted token issuer, configure the JWT
245
+ # Bearer GrantOptions for the application.
246
+ # @return [String]
247
+ #
248
+ # @!attribute [rw] scope
249
+ # The list of scopes for which authorization is requested. The access
250
+ # token that is issued is limited to the scopes that are granted. If
251
+ # the value is not specified, IAM Identity Center authorizes all
252
+ # scopes configured for the application, including the following
253
+ # default scopes: `openid`, `aws`, `sts:identity_context`.
254
+ # @return [Array<String>]
255
+ #
256
+ # @!attribute [rw] redirect_uri
257
+ # Used only when calling this API for the Authorization Code grant
258
+ # type. This value specifies the location of the client or application
259
+ # that has registered to receive the authorization code.
260
+ # @return [String]
261
+ #
262
+ # @!attribute [rw] subject_token
263
+ # Used only when calling this API for the Token Exchange grant type.
264
+ # This value specifies the subject of the exchange. The value of the
265
+ # subject token must be an access token issued by IAM Identity Center
266
+ # to a different client or application. The access token must have
267
+ # authorized scopes that indicate the requested application as a
268
+ # target audience.
269
+ # @return [String]
270
+ #
271
+ # @!attribute [rw] subject_token_type
272
+ # Used only when calling this API for the Token Exchange grant type.
273
+ # This value specifies the type of token that is passed as the subject
274
+ # of the exchange. The following value is supported:
275
+ #
276
+ # * Access Token - `urn:ietf:params:oauth:token-type:access_token`
277
+ # @return [String]
278
+ #
279
+ # @!attribute [rw] requested_token_type
280
+ # Used only when calling this API for the Token Exchange grant type.
281
+ # This value specifies the type of token that the requester can
282
+ # receive. The following values are supported:
283
+ #
284
+ # * Access Token - `urn:ietf:params:oauth:token-type:access_token`
285
+ #
286
+ # * Refresh Token - `urn:ietf:params:oauth:token-type:refresh_token`
287
+ # @return [String]
288
+ #
289
+ # @!attribute [rw] code_verifier
290
+ # Used only when calling this API for the Authorization Code grant
291
+ # type. This value is generated by the client and presented to
292
+ # validate the original code challenge value the client passed at
293
+ # authorization time.
294
+ # @return [String]
295
+ #
296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMRequest AWS API Documentation
297
+ #
298
+ class CreateTokenWithIAMRequest < Struct.new(
299
+ :client_id,
300
+ :grant_type,
301
+ :code,
302
+ :refresh_token,
303
+ :assertion,
304
+ :scope,
305
+ :redirect_uri,
306
+ :subject_token,
307
+ :subject_token_type,
308
+ :requested_token_type,
309
+ :code_verifier)
310
+ SENSITIVE = [:refresh_token, :assertion, :subject_token, :code_verifier]
311
+ include Aws::Structure
312
+ end
313
+
314
+ # @!attribute [rw] access_token
315
+ # A bearer token to access Amazon Web Services accounts and
316
+ # applications assigned to a user.
317
+ # @return [String]
318
+ #
319
+ # @!attribute [rw] token_type
320
+ # Used to notify the requester that the returned token is an access
321
+ # token. The supported token type is `Bearer`.
322
+ # @return [String]
323
+ #
324
+ # @!attribute [rw] expires_in
325
+ # Indicates the time in seconds when an access token will expire.
326
+ # @return [Integer]
327
+ #
328
+ # @!attribute [rw] refresh_token
329
+ # A token that, if present, can be used to refresh a previously issued
330
+ # access token that might have expired.
331
+ #
332
+ # For more information about the features and limitations of the
333
+ # current IAM Identity Center OIDC implementation, see *Considerations
334
+ # for Using this Guide* in the [IAM Identity Center OIDC API
335
+ # Reference][1].
162
336
  #
163
337
  #
164
338
  #
165
339
  # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
166
340
  # @return [String]
167
341
  #
168
- # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenResponse AWS API Documentation
342
+ # @!attribute [rw] id_token
343
+ # A JSON Web Token (JWT) that identifies the user associated with the
344
+ # issued access token.
345
+ # @return [String]
169
346
  #
170
- class CreateTokenResponse < Struct.new(
347
+ # @!attribute [rw] issued_token_type
348
+ # Indicates the type of tokens that are issued by IAM Identity Center.
349
+ # The following values are supported:
350
+ #
351
+ # * Access Token - `urn:ietf:params:oauth:token-type:access_token`
352
+ #
353
+ # * Refresh Token - `urn:ietf:params:oauth:token-type:refresh_token`
354
+ # @return [String]
355
+ #
356
+ # @!attribute [rw] scope
357
+ # The list of scopes for which authorization is granted. The access
358
+ # token that is issued is limited to the scopes that are granted.
359
+ # @return [Array<String>]
360
+ #
361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMResponse AWS API Documentation
362
+ #
363
+ class CreateTokenWithIAMResponse < Struct.new(
171
364
  :access_token,
172
365
  :token_type,
173
366
  :expires_in,
174
367
  :refresh_token,
175
- :id_token)
176
- SENSITIVE = []
368
+ :id_token,
369
+ :issued_token_type,
370
+ :scope)
371
+ SENSITIVE = [:access_token, :refresh_token, :id_token]
177
372
  include Aws::Structure
178
373
  end
179
374
 
@@ -181,9 +376,13 @@ module Aws::SSOOIDC
181
376
  # longer valid.
182
377
  #
183
378
  # @!attribute [rw] error
379
+ # Single error code. For this exception the value will be
380
+ # `expired_token`.
184
381
  # @return [String]
185
382
  #
186
383
  # @!attribute [rw] error_description
384
+ # Human-readable text providing additional information, used to assist
385
+ # the client developer in understanding the error that occurred.
187
386
  # @return [String]
188
387
  #
189
388
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/ExpiredTokenException AWS API Documentation
@@ -199,9 +398,13 @@ module Aws::SSOOIDC
199
398
  # process a request.
200
399
  #
201
400
  # @!attribute [rw] error
401
+ # Single error code. For this exception the value will be
402
+ # `server_error`.
202
403
  # @return [String]
203
404
  #
204
405
  # @!attribute [rw] error_description
406
+ # Human-readable text providing additional information, used to assist
407
+ # the client developer in understanding the error that occurred.
205
408
  # @return [String]
206
409
  #
207
410
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InternalServerException AWS API Documentation
@@ -218,9 +421,13 @@ module Aws::SSOOIDC
218
421
  # `clientId` or an expired `clientSecret`.
219
422
  #
220
423
  # @!attribute [rw] error
424
+ # Single error code. For this exception the value will be
425
+ # `invalid_client`.
221
426
  # @return [String]
222
427
  #
223
428
  # @!attribute [rw] error_description
429
+ # Human-readable text providing additional information, used to assist
430
+ # the client developer in understanding the error that occurred.
224
431
  # @return [String]
225
432
  #
226
433
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidClientException AWS API Documentation
@@ -236,9 +443,13 @@ module Aws::SSOOIDC
236
443
  # registration is invalid.
237
444
  #
238
445
  # @!attribute [rw] error
446
+ # Single error code. For this exception the value will be
447
+ # `invalid_client_metadata`.
239
448
  # @return [String]
240
449
  #
241
450
  # @!attribute [rw] error_description
451
+ # Human-readable text providing additional information, used to assist
452
+ # the client developer in understanding the error that occurred.
242
453
  # @return [String]
243
454
  #
244
455
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidClientMetadataException AWS API Documentation
@@ -254,9 +465,13 @@ module Aws::SSOOIDC
254
465
  # a client makes a CreateToken request with an invalid grant type.
255
466
  #
256
467
  # @!attribute [rw] error
468
+ # Single error code. For this exception the value will be
469
+ # `invalid_grant`.
257
470
  # @return [String]
258
471
  #
259
472
  # @!attribute [rw] error_description
473
+ # Human-readable text providing additional information, used to assist
474
+ # the client developer in understanding the error that occurred.
260
475
  # @return [String]
261
476
  #
262
477
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidGrantException AWS API Documentation
@@ -268,13 +483,39 @@ module Aws::SSOOIDC
268
483
  include Aws::Structure
269
484
  end
270
485
 
486
+ # Indicates that one or more redirect URI in the request is not
487
+ # supported for this operation.
488
+ #
489
+ # @!attribute [rw] error
490
+ # Single error code. For this exception the value will be
491
+ # `invalid_redirect_uri`.
492
+ # @return [String]
493
+ #
494
+ # @!attribute [rw] error_description
495
+ # Human-readable text providing additional information, used to assist
496
+ # the client developer in understanding the error that occurred.
497
+ # @return [String]
498
+ #
499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidRedirectUriException AWS API Documentation
500
+ #
501
+ class InvalidRedirectUriException < Struct.new(
502
+ :error,
503
+ :error_description)
504
+ SENSITIVE = []
505
+ include Aws::Structure
506
+ end
507
+
271
508
  # Indicates that something is wrong with the input to the request. For
272
509
  # example, a required parameter might be missing or out of range.
273
510
  #
274
511
  # @!attribute [rw] error
512
+ # Single error code. For this exception the value will be
513
+ # `invalid_request`.
275
514
  # @return [String]
276
515
  #
277
516
  # @!attribute [rw] error_description
517
+ # Human-readable text providing additional information, used to assist
518
+ # the client developer in understanding the error that occurred.
278
519
  # @return [String]
279
520
  #
280
521
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidRequestException AWS API Documentation
@@ -286,12 +527,50 @@ module Aws::SSOOIDC
286
527
  include Aws::Structure
287
528
  end
288
529
 
530
+ # Indicates that a token provided as input to the request was issued by
531
+ # and is only usable by calling IAM Identity Center endpoints in another
532
+ # region.
533
+ #
534
+ # @!attribute [rw] error
535
+ # Single error code. For this exception the value will be
536
+ # `invalid_request`.
537
+ # @return [String]
538
+ #
539
+ # @!attribute [rw] error_description
540
+ # Human-readable text providing additional information, used to assist
541
+ # the client developer in understanding the error that occurred.
542
+ # @return [String]
543
+ #
544
+ # @!attribute [rw] endpoint
545
+ # Indicates the IAM Identity Center endpoint which the requester may
546
+ # call with this token.
547
+ # @return [String]
548
+ #
549
+ # @!attribute [rw] region
550
+ # Indicates the region which the requester may call with this token.
551
+ # @return [String]
552
+ #
553
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidRequestRegionException AWS API Documentation
554
+ #
555
+ class InvalidRequestRegionException < Struct.new(
556
+ :error,
557
+ :error_description,
558
+ :endpoint,
559
+ :region)
560
+ SENSITIVE = []
561
+ include Aws::Structure
562
+ end
563
+
289
564
  # Indicates that the scope provided in the request is invalid.
290
565
  #
291
566
  # @!attribute [rw] error
567
+ # Single error code. For this exception the value will be
568
+ # `invalid_scope`.
292
569
  # @return [String]
293
570
  #
294
571
  # @!attribute [rw] error_description
572
+ # Human-readable text providing additional information, used to assist
573
+ # the client developer in understanding the error that occurred.
295
574
  # @return [String]
296
575
  #
297
576
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidScopeException AWS API Documentation
@@ -318,12 +597,42 @@ module Aws::SSOOIDC
318
597
  # granting an access token.
319
598
  # @return [Array<String>]
320
599
  #
600
+ # @!attribute [rw] redirect_uris
601
+ # The list of redirect URI that are defined by the client. At
602
+ # completion of authorization, this list is used to restrict what
603
+ # locations the user agent can be redirected back to.
604
+ # @return [Array<String>]
605
+ #
606
+ # @!attribute [rw] grant_types
607
+ # The list of OAuth 2.0 grant types that are defined by the client.
608
+ # This list is used to restrict the token granting flows available to
609
+ # the client.
610
+ # @return [Array<String>]
611
+ #
612
+ # @!attribute [rw] issuer_url
613
+ # The IAM Identity Center Issuer URL associated with an instance of
614
+ # IAM Identity Center. This value is needed for user access to
615
+ # resources through the client.
616
+ # @return [String]
617
+ #
618
+ # @!attribute [rw] entitled_application_arn
619
+ # This IAM Identity Center application ARN is used to define
620
+ # administrator-managed configuration for public client access to
621
+ # resources. At authorization, the scopes, grants, and redirect URI
622
+ # available to this client will be restricted by this application
623
+ # resource.
624
+ # @return [String]
625
+ #
321
626
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/RegisterClientRequest AWS API Documentation
322
627
  #
323
628
  class RegisterClientRequest < Struct.new(
324
629
  :client_name,
325
630
  :client_type,
326
- :scopes)
631
+ :scopes,
632
+ :redirect_uris,
633
+ :grant_types,
634
+ :issuer_url,
635
+ :entitled_application_arn)
327
636
  SENSITIVE = []
328
637
  include Aws::Structure
329
638
  end
@@ -349,11 +658,11 @@ module Aws::SSOOIDC
349
658
  # @return [Integer]
350
659
  #
351
660
  # @!attribute [rw] authorization_endpoint
352
- # The endpoint where the client can request authorization.
661
+ # An endpoint that the client can use to request authorization.
353
662
  # @return [String]
354
663
  #
355
664
  # @!attribute [rw] token_endpoint
356
- # The endpoint where the client can get an access token.
665
+ # An endpoint that the client can use to create tokens.
357
666
  # @return [String]
358
667
  #
359
668
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/RegisterClientResponse AWS API Documentation
@@ -365,7 +674,7 @@ module Aws::SSOOIDC
365
674
  :client_secret_expires_at,
366
675
  :authorization_endpoint,
367
676
  :token_endpoint)
368
- SENSITIVE = []
677
+ SENSITIVE = [:client_secret]
369
678
  include Aws::Structure
370
679
  end
371
680
 
@@ -373,9 +682,12 @@ module Aws::SSOOIDC
373
682
  # more than the service can handle.
374
683
  #
375
684
  # @!attribute [rw] error
685
+ # Single error code. For this exception the value will be `slow_down`.
376
686
  # @return [String]
377
687
  #
378
688
  # @!attribute [rw] error_description
689
+ # Human-readable text providing additional information, used to assist
690
+ # the client developer in understanding the error that occurred.
379
691
  # @return [String]
380
692
  #
381
693
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/SlowDownException AWS API Documentation
@@ -399,8 +711,9 @@ module Aws::SSOOIDC
399
711
  # @return [String]
400
712
  #
401
713
  # @!attribute [rw] start_url
402
- # The URL for the AWS access portal. For more information, see [Using
403
- # the AWS access portal][1] in the *IAM Identity Center User Guide*.
714
+ # The URL for the Amazon Web Services access portal. For more
715
+ # information, see [Using the Amazon Web Services access portal][1] in
716
+ # the *IAM Identity Center User Guide*.
404
717
  #
405
718
  #
406
719
  #
@@ -413,7 +726,7 @@ module Aws::SSOOIDC
413
726
  :client_id,
414
727
  :client_secret,
415
728
  :start_url)
416
- SENSITIVE = []
729
+ SENSITIVE = [:client_secret]
417
730
  include Aws::Structure
418
731
  end
419
732
 
@@ -466,9 +779,13 @@ module Aws::SSOOIDC
466
779
  # client.
467
780
  #
468
781
  # @!attribute [rw] error
782
+ # Single error code. For this exception the value will be
783
+ # `unauthorized_client`.
469
784
  # @return [String]
470
785
  #
471
786
  # @!attribute [rw] error_description
787
+ # Human-readable text providing additional information, used to assist
788
+ # the client developer in understanding the error that occurred.
472
789
  # @return [String]
473
790
  #
474
791
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/UnauthorizedClientException AWS API Documentation
@@ -484,9 +801,13 @@ module Aws::SSOOIDC
484
801
  # service.
485
802
  #
486
803
  # @!attribute [rw] error
804
+ # Single error code. For this exception the value will be
805
+ # `unsupported_grant_type`.
487
806
  # @return [String]
488
807
  #
489
808
  # @!attribute [rw] error_description
809
+ # Human-readable text providing additional information, used to assist
810
+ # the client developer in understanding the error that occurred.
490
811
  # @return [String]
491
812
  #
492
813
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/UnsupportedGrantTypeException AWS API Documentation
@@ -500,3 +821,4 @@ module Aws::SSOOIDC
500
821
 
501
822
  end
502
823
  end
824
+