aws-sdk-core 3.125.6 → 3.188.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +533 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +4 -4
  5. data/lib/aws-sdk-core/arn.rb +13 -0
  6. data/lib/aws-sdk-core/assume_role_credentials.rb +21 -7
  7. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +14 -10
  8. data/lib/aws-sdk-core/binary/encode_handler.rb +12 -1
  9. data/lib/aws-sdk-core/client_stubs.rb +5 -1
  10. data/lib/aws-sdk-core/credential_provider.rb +3 -0
  11. data/lib/aws-sdk-core/credential_provider_chain.rb +8 -5
  12. data/lib/aws-sdk-core/ec2_metadata.rb +3 -2
  13. data/lib/aws-sdk-core/ecs_credentials.rb +186 -52
  14. data/lib/aws-sdk-core/endpoints/condition.rb +41 -0
  15. data/lib/aws-sdk-core/endpoints/endpoint.rb +17 -0
  16. data/lib/aws-sdk-core/endpoints/endpoint_rule.rb +75 -0
  17. data/lib/aws-sdk-core/endpoints/error_rule.rb +42 -0
  18. data/lib/aws-sdk-core/endpoints/function.rb +80 -0
  19. data/lib/aws-sdk-core/endpoints/matchers.rb +131 -0
  20. data/lib/aws-sdk-core/endpoints/reference.rb +31 -0
  21. data/lib/aws-sdk-core/endpoints/rule.rb +25 -0
  22. data/lib/aws-sdk-core/endpoints/rule_set.rb +52 -0
  23. data/lib/aws-sdk-core/endpoints/rules_provider.rb +37 -0
  24. data/lib/aws-sdk-core/endpoints/templater.rb +58 -0
  25. data/lib/aws-sdk-core/endpoints/tree_rule.rb +45 -0
  26. data/lib/aws-sdk-core/endpoints/url.rb +60 -0
  27. data/lib/aws-sdk-core/endpoints.rb +78 -0
  28. data/lib/aws-sdk-core/errors.rb +14 -1
  29. data/lib/aws-sdk-core/ini_parser.rb +7 -0
  30. data/lib/aws-sdk-core/instance_profile_credentials.rb +124 -31
  31. data/lib/aws-sdk-core/json/error_handler.rb +20 -1
  32. data/lib/aws-sdk-core/json/handler.rb +8 -1
  33. data/lib/aws-sdk-core/json/parser.rb +27 -2
  34. data/lib/aws-sdk-core/log/formatter.rb +6 -0
  35. data/lib/aws-sdk-core/pageable_response.rb +81 -32
  36. data/lib/aws-sdk-core/param_validator.rb +2 -2
  37. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +67 -0
  38. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +340 -0
  39. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +24 -0
  40. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +6 -2
  41. data/lib/aws-sdk-core/plugins/http_checksum.rb +8 -1
  42. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +34 -6
  43. data/lib/aws-sdk-core/plugins/recursion_detection.rb +38 -0
  44. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +111 -30
  45. data/lib/aws-sdk-core/plugins/request_compression.rb +217 -0
  46. data/lib/aws-sdk-core/plugins/response_paging.rb +1 -1
  47. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +3 -2
  48. data/lib/aws-sdk-core/plugins/retry_errors.rb +12 -2
  49. data/lib/aws-sdk-core/plugins/sign.rb +201 -0
  50. data/lib/aws-sdk-core/plugins/signature_v2.rb +1 -0
  51. data/lib/aws-sdk-core/plugins/signature_v4.rb +15 -8
  52. data/lib/aws-sdk-core/plugins/stub_responses.rb +5 -1
  53. data/lib/aws-sdk-core/plugins/user_agent.rb +117 -14
  54. data/lib/aws-sdk-core/process_credentials.rb +9 -11
  55. data/lib/aws-sdk-core/refreshing_credentials.rb +41 -16
  56. data/lib/aws-sdk-core/refreshing_token.rb +71 -0
  57. data/lib/aws-sdk-core/rest/handler.rb +1 -1
  58. data/lib/aws-sdk-core/rest/request/headers.rb +2 -6
  59. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +43 -29
  60. data/lib/aws-sdk-core/shared_config.rb +107 -12
  61. data/lib/aws-sdk-core/sso_credentials.rb +91 -50
  62. data/lib/aws-sdk-core/sso_token_provider.rb +135 -0
  63. data/lib/aws-sdk-core/static_token_provider.rb +14 -0
  64. data/lib/aws-sdk-core/structure.rb +6 -4
  65. data/lib/aws-sdk-core/stubbing/stub_data.rb +11 -0
  66. data/lib/aws-sdk-core/token.rb +31 -0
  67. data/lib/aws-sdk-core/token_provider.rb +15 -0
  68. data/lib/aws-sdk-core/token_provider_chain.rb +51 -0
  69. data/lib/aws-sdk-core/waiters/poller.rb +3 -1
  70. data/lib/aws-sdk-core/xml/error_handler.rb +7 -0
  71. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +2 -0
  72. data/lib/aws-sdk-core.rb +14 -0
  73. data/lib/aws-sdk-sso/client.rb +75 -11
  74. data/lib/aws-sdk-sso/endpoint_parameters.rb +66 -0
  75. data/lib/aws-sdk-sso/endpoint_provider.rb +57 -0
  76. data/lib/aws-sdk-sso/endpoints.rb +72 -0
  77. data/lib/aws-sdk-sso/plugins/endpoints.rb +76 -0
  78. data/lib/aws-sdk-sso/types.rb +8 -43
  79. data/lib/aws-sdk-sso.rb +5 -1
  80. data/lib/aws-sdk-ssooidc/client.rb +935 -0
  81. data/lib/aws-sdk-ssooidc/client_api.rb +271 -0
  82. data/lib/aws-sdk-ssooidc/customizations.rb +1 -0
  83. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +66 -0
  84. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +57 -0
  85. data/lib/aws-sdk-ssooidc/endpoints.rb +72 -0
  86. data/lib/aws-sdk-ssooidc/errors.rb +321 -0
  87. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +76 -0
  88. data/lib/aws-sdk-ssooidc/resource.rb +26 -0
  89. data/lib/aws-sdk-ssooidc/types.rb +755 -0
  90. data/lib/aws-sdk-ssooidc.rb +59 -0
  91. data/lib/aws-sdk-sts/client.rb +330 -262
  92. data/lib/aws-sdk-sts/client_api.rb +12 -1
  93. data/lib/aws-sdk-sts/endpoint_parameters.rb +78 -0
  94. data/lib/aws-sdk-sts/endpoint_provider.rb +112 -0
  95. data/lib/aws-sdk-sts/endpoints.rb +136 -0
  96. data/lib/aws-sdk-sts/plugins/endpoints.rb +84 -0
  97. data/lib/aws-sdk-sts/presigner.rb +14 -16
  98. data/lib/aws-sdk-sts/types.rb +135 -204
  99. data/lib/aws-sdk-sts.rb +5 -1
  100. data/lib/seahorse/client/async_base.rb +0 -1
  101. data/lib/seahorse/client/configuration.rb +1 -5
  102. data/lib/seahorse/client/h2/connection.rb +12 -11
  103. data/lib/seahorse/client/net_http/patches.rb +1 -4
  104. data/lib/seahorse/client/plugins/h2.rb +3 -3
  105. data/lib/seahorse/client/plugins/request_callback.rb +40 -9
  106. data/lib/seahorse/client/response.rb +6 -0
  107. data/lib/seahorse/model/operation.rb +6 -0
  108. data/lib/seahorse/util.rb +4 -0
  109. metadata +59 -9
@@ -0,0 +1,755 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::SSOOIDC
11
+ module Types
12
+
13
+ # You do not have sufficient access to perform this action.
14
+ #
15
+ # @!attribute [rw] error
16
+ # Single error code. For this exception the value will be
17
+ # `access_denied`.
18
+ # @return [String]
19
+ #
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.
23
+ # @return [String]
24
+ #
25
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AccessDeniedException AWS API Documentation
26
+ #
27
+ class AccessDeniedException < Struct.new(
28
+ :error,
29
+ :error_description)
30
+ SENSITIVE = []
31
+ include Aws::Structure
32
+ end
33
+
34
+ # Indicates that a request to authorize a client with an access user
35
+ # session token is pending.
36
+ #
37
+ # @!attribute [rw] error
38
+ # Single error code. For this exception the value will be
39
+ # `authorization_pending`.
40
+ # @return [String]
41
+ #
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.
45
+ # @return [String]
46
+ #
47
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AuthorizationPendingException AWS API Documentation
48
+ #
49
+ class AuthorizationPendingException < Struct.new(
50
+ :error,
51
+ :error_description)
52
+ SENSITIVE = []
53
+ include Aws::Structure
54
+ end
55
+
56
+ # @!attribute [rw] client_id
57
+ # The unique identifier string for the client or application. This
58
+ # value comes from the result of the RegisterClient API.
59
+ # @return [String]
60
+ #
61
+ # @!attribute [rw] client_secret
62
+ # A secret string generated for the client. This value should come
63
+ # from the persisted result of the RegisterClient API.
64
+ # @return [String]
65
+ #
66
+ # @!attribute [rw] grant_type
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`
72
+ #
73
+ # * Refresh Token - `refresh_token`
74
+ #
75
+ # For information about how to obtain the device code, see the
76
+ # StartDeviceAuthorization topic.
77
+ # @return [String]
78
+ #
79
+ # @!attribute [rw] device_code
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.
83
+ # @return [String]
84
+ #
85
+ # @!attribute [rw] code
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.
90
+ # @return [String]
91
+ #
92
+ # @!attribute [rw] refresh_token
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.
96
+ #
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].
101
+ #
102
+ #
103
+ #
104
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
105
+ # @return [String]
106
+ #
107
+ # @!attribute [rw] scope
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.
113
+ # @return [Array<String>]
114
+ #
115
+ # @!attribute [rw] redirect_uri
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
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenRequest AWS API Documentation
122
+ #
123
+ class CreateTokenRequest < Struct.new(
124
+ :client_id,
125
+ :client_secret,
126
+ :grant_type,
127
+ :device_code,
128
+ :code,
129
+ :refresh_token,
130
+ :scope,
131
+ :redirect_uri)
132
+ SENSITIVE = [:client_secret, :refresh_token]
133
+ include Aws::Structure
134
+ end
135
+
136
+ # @!attribute [rw] access_token
137
+ # A bearer token to access AWS accounts and applications assigned to a
138
+ # user.
139
+ # @return [String]
140
+ #
141
+ # @!attribute [rw] token_type
142
+ # Used to notify the client that the returned token is an access
143
+ # token. The supported token type is `Bearer`.
144
+ # @return [String]
145
+ #
146
+ # @!attribute [rw] expires_in
147
+ # Indicates the time in seconds when an access token will expire.
148
+ # @return [Integer]
149
+ #
150
+ # @!attribute [rw] refresh_token
151
+ # A token that, if present, can be used to refresh a previously issued
152
+ # access token that might have expired.
153
+ #
154
+ # For more information about the features and limitations of the
155
+ # current IAM Identity Center OIDC implementation, see *Considerations
156
+ # for Using this Guide* in the [IAM Identity Center OIDC API
157
+ # Reference][1].
158
+ #
159
+ #
160
+ #
161
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
162
+ # @return [String]
163
+ #
164
+ # @!attribute [rw] id_token
165
+ # The `idToken` is not implemented or supported. For more information
166
+ # about the features and limitations of the current IAM Identity
167
+ # Center OIDC implementation, see *Considerations for Using this
168
+ # Guide* in the [IAM Identity Center OIDC API Reference][1].
169
+ #
170
+ # A JSON Web Token (JWT) that identifies who is associated with the
171
+ # issued access token.
172
+ #
173
+ #
174
+ #
175
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
176
+ # @return [String]
177
+ #
178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenResponse AWS API Documentation
179
+ #
180
+ class CreateTokenResponse < Struct.new(
181
+ :access_token,
182
+ :token_type,
183
+ :expires_in,
184
+ :refresh_token,
185
+ :id_token)
186
+ SENSITIVE = [:access_token, :refresh_token, :id_token]
187
+ include Aws::Structure
188
+ end
189
+
190
+ # @!attribute [rw] client_id
191
+ # The unique identifier string for the client or application. This
192
+ # value is an application ARN that has OAuth grants configured.
193
+ # @return [String]
194
+ #
195
+ # @!attribute [rw] grant_type
196
+ # Supports the following OAuth grant types: Authorization Code,
197
+ # Refresh Token, JWT Bearer, and Token Exchange. Specify one of the
198
+ # following values, depending on the grant type that you want:
199
+ #
200
+ # * Authorization Code - `authorization_code`
201
+ #
202
+ # * Refresh Token - `refresh_token`
203
+ #
204
+ # * JWT Bearer - `urn:ietf:params:oauth:grant-type:jwt-bearer`
205
+ #
206
+ # * Token Exchange -
207
+ # `urn:ietf:params:oauth:grant-type:token-exchange`
208
+ # @return [String]
209
+ #
210
+ # @!attribute [rw] code
211
+ # Used only when calling this API for the Authorization Code grant
212
+ # type. This short-term code is used to identify this authorization
213
+ # request. The code is obtained through a redirect from IAM Identity
214
+ # Center to a redirect URI persisted in the Authorization Code
215
+ # GrantOptions for the application.
216
+ # @return [String]
217
+ #
218
+ # @!attribute [rw] refresh_token
219
+ # Used only when calling this API for the Refresh Token grant type.
220
+ # This token is used to refresh short-term tokens, such as the access
221
+ # token, that might expire.
222
+ #
223
+ # For more information about the features and limitations of the
224
+ # current IAM Identity Center OIDC implementation, see *Considerations
225
+ # for Using this Guide* in the [IAM Identity Center OIDC API
226
+ # Reference][1].
227
+ #
228
+ #
229
+ #
230
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
231
+ # @return [String]
232
+ #
233
+ # @!attribute [rw] assertion
234
+ # Used only when calling this API for the JWT Bearer grant type. This
235
+ # value specifies the JSON Web Token (JWT) issued by a trusted token
236
+ # issuer. To authorize a trusted token issuer, configure the JWT
237
+ # Bearer GrantOptions for the application.
238
+ # @return [String]
239
+ #
240
+ # @!attribute [rw] scope
241
+ # The list of scopes for which authorization is requested. The access
242
+ # token that is issued is limited to the scopes that are granted. If
243
+ # the value is not specified, IAM Identity Center authorizes all
244
+ # scopes configured for the application, including the following
245
+ # default scopes: `openid`, `aws`, `sts:identity_context`.
246
+ # @return [Array<String>]
247
+ #
248
+ # @!attribute [rw] redirect_uri
249
+ # Used only when calling this API for the Authorization Code grant
250
+ # type. This value specifies the location of the client or application
251
+ # that has registered to receive the authorization code.
252
+ # @return [String]
253
+ #
254
+ # @!attribute [rw] subject_token
255
+ # Used only when calling this API for the Token Exchange grant type.
256
+ # This value specifies the subject of the exchange. The value of the
257
+ # subject token must be an access token issued by IAM Identity Center
258
+ # to a different client or application. The access token must have
259
+ # authorized scopes that indicate the requested application as a
260
+ # target audience.
261
+ # @return [String]
262
+ #
263
+ # @!attribute [rw] subject_token_type
264
+ # Used only when calling this API for the Token Exchange grant type.
265
+ # This value specifies the type of token that is passed as the subject
266
+ # of the exchange. The following value is supported:
267
+ #
268
+ # * Access Token - `urn:ietf:params:oauth:token-type:access_token`
269
+ # @return [String]
270
+ #
271
+ # @!attribute [rw] requested_token_type
272
+ # Used only when calling this API for the Token Exchange grant type.
273
+ # This value specifies the type of token that the requester can
274
+ # receive. The following values are supported:
275
+ #
276
+ # * Access Token - `urn:ietf:params:oauth:token-type:access_token`
277
+ #
278
+ # * Refresh Token - `urn:ietf:params:oauth:token-type:refresh_token`
279
+ # @return [String]
280
+ #
281
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMRequest AWS API Documentation
282
+ #
283
+ class CreateTokenWithIAMRequest < Struct.new(
284
+ :client_id,
285
+ :grant_type,
286
+ :code,
287
+ :refresh_token,
288
+ :assertion,
289
+ :scope,
290
+ :redirect_uri,
291
+ :subject_token,
292
+ :subject_token_type,
293
+ :requested_token_type)
294
+ SENSITIVE = [:refresh_token, :assertion, :subject_token]
295
+ include Aws::Structure
296
+ end
297
+
298
+ # @!attribute [rw] access_token
299
+ # A bearer token to access AWS accounts and applications assigned to a
300
+ # user.
301
+ # @return [String]
302
+ #
303
+ # @!attribute [rw] token_type
304
+ # Used to notify the requester that the returned token is an access
305
+ # token. The supported token type is `Bearer`.
306
+ # @return [String]
307
+ #
308
+ # @!attribute [rw] expires_in
309
+ # Indicates the time in seconds when an access token will expire.
310
+ # @return [Integer]
311
+ #
312
+ # @!attribute [rw] refresh_token
313
+ # A token that, if present, can be used to refresh a previously issued
314
+ # access token that might have expired.
315
+ #
316
+ # For more information about the features and limitations of the
317
+ # current IAM Identity Center OIDC implementation, see *Considerations
318
+ # for Using this Guide* in the [IAM Identity Center OIDC API
319
+ # Reference][1].
320
+ #
321
+ #
322
+ #
323
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/Welcome.html
324
+ # @return [String]
325
+ #
326
+ # @!attribute [rw] id_token
327
+ # A JSON Web Token (JWT) that identifies the user associated with the
328
+ # issued access token.
329
+ # @return [String]
330
+ #
331
+ # @!attribute [rw] issued_token_type
332
+ # Indicates the type of tokens that are issued by IAM Identity Center.
333
+ # The following values are supported:
334
+ #
335
+ # * Access Token - `urn:ietf:params:oauth:token-type:access_token`
336
+ #
337
+ # * Refresh Token - `urn:ietf:params:oauth:token-type:refresh_token`
338
+ # @return [String]
339
+ #
340
+ # @!attribute [rw] scope
341
+ # The list of scopes for which authorization is granted. The access
342
+ # token that is issued is limited to the scopes that are granted.
343
+ # @return [Array<String>]
344
+ #
345
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMResponse AWS API Documentation
346
+ #
347
+ class CreateTokenWithIAMResponse < Struct.new(
348
+ :access_token,
349
+ :token_type,
350
+ :expires_in,
351
+ :refresh_token,
352
+ :id_token,
353
+ :issued_token_type,
354
+ :scope)
355
+ SENSITIVE = [:access_token, :refresh_token, :id_token]
356
+ include Aws::Structure
357
+ end
358
+
359
+ # Indicates that the token issued by the service is expired and is no
360
+ # longer valid.
361
+ #
362
+ # @!attribute [rw] error
363
+ # Single error code. For this exception the value will be
364
+ # `expired_token`.
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] error_description
368
+ # Human-readable text providing additional information, used to assist
369
+ # the client developer in understanding the error that occurred.
370
+ # @return [String]
371
+ #
372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/ExpiredTokenException AWS API Documentation
373
+ #
374
+ class ExpiredTokenException < Struct.new(
375
+ :error,
376
+ :error_description)
377
+ SENSITIVE = []
378
+ include Aws::Structure
379
+ end
380
+
381
+ # Indicates that an error from the service occurred while trying to
382
+ # process a request.
383
+ #
384
+ # @!attribute [rw] error
385
+ # Single error code. For this exception the value will be
386
+ # `server_error`.
387
+ # @return [String]
388
+ #
389
+ # @!attribute [rw] error_description
390
+ # Human-readable text providing additional information, used to assist
391
+ # the client developer in understanding the error that occurred.
392
+ # @return [String]
393
+ #
394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InternalServerException AWS API Documentation
395
+ #
396
+ class InternalServerException < Struct.new(
397
+ :error,
398
+ :error_description)
399
+ SENSITIVE = []
400
+ include Aws::Structure
401
+ end
402
+
403
+ # Indicates that the `clientId` or `clientSecret` in the request is
404
+ # invalid. For example, this can occur when a client sends an incorrect
405
+ # `clientId` or an expired `clientSecret`.
406
+ #
407
+ # @!attribute [rw] error
408
+ # Single error code. For this exception the value will be
409
+ # `invalid_client`.
410
+ # @return [String]
411
+ #
412
+ # @!attribute [rw] error_description
413
+ # Human-readable text providing additional information, used to assist
414
+ # the client developer in understanding the error that occurred.
415
+ # @return [String]
416
+ #
417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidClientException AWS API Documentation
418
+ #
419
+ class InvalidClientException < Struct.new(
420
+ :error,
421
+ :error_description)
422
+ SENSITIVE = []
423
+ include Aws::Structure
424
+ end
425
+
426
+ # Indicates that the client information sent in the request during
427
+ # registration is invalid.
428
+ #
429
+ # @!attribute [rw] error
430
+ # Single error code. For this exception the value will be
431
+ # `invalid_client_metadata`.
432
+ # @return [String]
433
+ #
434
+ # @!attribute [rw] error_description
435
+ # Human-readable text providing additional information, used to assist
436
+ # the client developer in understanding the error that occurred.
437
+ # @return [String]
438
+ #
439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidClientMetadataException AWS API Documentation
440
+ #
441
+ class InvalidClientMetadataException < Struct.new(
442
+ :error,
443
+ :error_description)
444
+ SENSITIVE = []
445
+ include Aws::Structure
446
+ end
447
+
448
+ # Indicates that a request contains an invalid grant. This can occur if
449
+ # a client makes a CreateToken request with an invalid grant type.
450
+ #
451
+ # @!attribute [rw] error
452
+ # Single error code. For this exception the value will be
453
+ # `invalid_grant`.
454
+ # @return [String]
455
+ #
456
+ # @!attribute [rw] error_description
457
+ # Human-readable text providing additional information, used to assist
458
+ # the client developer in understanding the error that occurred.
459
+ # @return [String]
460
+ #
461
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidGrantException AWS API Documentation
462
+ #
463
+ class InvalidGrantException < Struct.new(
464
+ :error,
465
+ :error_description)
466
+ SENSITIVE = []
467
+ include Aws::Structure
468
+ end
469
+
470
+ # Indicates that something is wrong with the input to the request. For
471
+ # example, a required parameter might be missing or out of range.
472
+ #
473
+ # @!attribute [rw] error
474
+ # Single error code. For this exception the value will be
475
+ # `invalid_request`.
476
+ # @return [String]
477
+ #
478
+ # @!attribute [rw] error_description
479
+ # Human-readable text providing additional information, used to assist
480
+ # the client developer in understanding the error that occurred.
481
+ # @return [String]
482
+ #
483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidRequestException AWS API Documentation
484
+ #
485
+ class InvalidRequestException < Struct.new(
486
+ :error,
487
+ :error_description)
488
+ SENSITIVE = []
489
+ include Aws::Structure
490
+ end
491
+
492
+ # Indicates that a token provided as input to the request was issued by
493
+ # and is only usable by calling IAM Identity Center endpoints in another
494
+ # region.
495
+ #
496
+ # @!attribute [rw] error
497
+ # Single error code. For this exception the value will be
498
+ # `invalid_request`.
499
+ # @return [String]
500
+ #
501
+ # @!attribute [rw] error_description
502
+ # Human-readable text providing additional information, used to assist
503
+ # the client developer in understanding the error that occurred.
504
+ # @return [String]
505
+ #
506
+ # @!attribute [rw] endpoint
507
+ # Indicates the IAM Identity Center endpoint which the requester may
508
+ # call with this token.
509
+ # @return [String]
510
+ #
511
+ # @!attribute [rw] region
512
+ # Indicates the region which the requester may call with this token.
513
+ # @return [String]
514
+ #
515
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidRequestRegionException AWS API Documentation
516
+ #
517
+ class InvalidRequestRegionException < Struct.new(
518
+ :error,
519
+ :error_description,
520
+ :endpoint,
521
+ :region)
522
+ SENSITIVE = []
523
+ include Aws::Structure
524
+ end
525
+
526
+ # Indicates that the scope provided in the request is invalid.
527
+ #
528
+ # @!attribute [rw] error
529
+ # Single error code. For this exception the value will be
530
+ # `invalid_scope`.
531
+ # @return [String]
532
+ #
533
+ # @!attribute [rw] error_description
534
+ # Human-readable text providing additional information, used to assist
535
+ # the client developer in understanding the error that occurred.
536
+ # @return [String]
537
+ #
538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/InvalidScopeException AWS API Documentation
539
+ #
540
+ class InvalidScopeException < Struct.new(
541
+ :error,
542
+ :error_description)
543
+ SENSITIVE = []
544
+ include Aws::Structure
545
+ end
546
+
547
+ # @!attribute [rw] client_name
548
+ # The friendly name of the client.
549
+ # @return [String]
550
+ #
551
+ # @!attribute [rw] client_type
552
+ # The type of client. The service supports only `public` as a client
553
+ # type. Anything other than public will be rejected by the service.
554
+ # @return [String]
555
+ #
556
+ # @!attribute [rw] scopes
557
+ # The list of scopes that are defined by the client. Upon
558
+ # authorization, this list is used to restrict permissions when
559
+ # granting an access token.
560
+ # @return [Array<String>]
561
+ #
562
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/RegisterClientRequest AWS API Documentation
563
+ #
564
+ class RegisterClientRequest < Struct.new(
565
+ :client_name,
566
+ :client_type,
567
+ :scopes)
568
+ SENSITIVE = []
569
+ include Aws::Structure
570
+ end
571
+
572
+ # @!attribute [rw] client_id
573
+ # The unique identifier string for each client. This client uses this
574
+ # identifier to get authenticated by the service in subsequent calls.
575
+ # @return [String]
576
+ #
577
+ # @!attribute [rw] client_secret
578
+ # A secret string generated for the client. The client will use this
579
+ # string to get authenticated by the service in subsequent calls.
580
+ # @return [String]
581
+ #
582
+ # @!attribute [rw] client_id_issued_at
583
+ # Indicates the time at which the `clientId` and `clientSecret` were
584
+ # issued.
585
+ # @return [Integer]
586
+ #
587
+ # @!attribute [rw] client_secret_expires_at
588
+ # Indicates the time at which the `clientId` and `clientSecret` will
589
+ # become invalid.
590
+ # @return [Integer]
591
+ #
592
+ # @!attribute [rw] authorization_endpoint
593
+ # An endpoint that the client can use to request authorization.
594
+ # @return [String]
595
+ #
596
+ # @!attribute [rw] token_endpoint
597
+ # An endpoint that the client can use to create tokens.
598
+ # @return [String]
599
+ #
600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/RegisterClientResponse AWS API Documentation
601
+ #
602
+ class RegisterClientResponse < Struct.new(
603
+ :client_id,
604
+ :client_secret,
605
+ :client_id_issued_at,
606
+ :client_secret_expires_at,
607
+ :authorization_endpoint,
608
+ :token_endpoint)
609
+ SENSITIVE = [:client_secret]
610
+ include Aws::Structure
611
+ end
612
+
613
+ # Indicates that the client is making the request too frequently and is
614
+ # more than the service can handle.
615
+ #
616
+ # @!attribute [rw] error
617
+ # Single error code. For this exception the value will be `slow_down`.
618
+ # @return [String]
619
+ #
620
+ # @!attribute [rw] error_description
621
+ # Human-readable text providing additional information, used to assist
622
+ # the client developer in understanding the error that occurred.
623
+ # @return [String]
624
+ #
625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/SlowDownException AWS API Documentation
626
+ #
627
+ class SlowDownException < Struct.new(
628
+ :error,
629
+ :error_description)
630
+ SENSITIVE = []
631
+ include Aws::Structure
632
+ end
633
+
634
+ # @!attribute [rw] client_id
635
+ # The unique identifier string for the client that is registered with
636
+ # IAM Identity Center. This value should come from the persisted
637
+ # result of the RegisterClient API operation.
638
+ # @return [String]
639
+ #
640
+ # @!attribute [rw] client_secret
641
+ # A secret string that is generated for the client. This value should
642
+ # come from the persisted result of the RegisterClient API operation.
643
+ # @return [String]
644
+ #
645
+ # @!attribute [rw] start_url
646
+ # The URL for the Amazon Web Services access portal. For more
647
+ # information, see [Using the Amazon Web Services access portal][1] in
648
+ # the *IAM Identity Center User Guide*.
649
+ #
650
+ #
651
+ #
652
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/using-the-portal.html
653
+ # @return [String]
654
+ #
655
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/StartDeviceAuthorizationRequest AWS API Documentation
656
+ #
657
+ class StartDeviceAuthorizationRequest < Struct.new(
658
+ :client_id,
659
+ :client_secret,
660
+ :start_url)
661
+ SENSITIVE = [:client_secret]
662
+ include Aws::Structure
663
+ end
664
+
665
+ # @!attribute [rw] device_code
666
+ # The short-lived code that is used by the device when polling for a
667
+ # session token.
668
+ # @return [String]
669
+ #
670
+ # @!attribute [rw] user_code
671
+ # A one-time user verification code. This is needed to authorize an
672
+ # in-use device.
673
+ # @return [String]
674
+ #
675
+ # @!attribute [rw] verification_uri
676
+ # The URI of the verification page that takes the `userCode` to
677
+ # authorize the device.
678
+ # @return [String]
679
+ #
680
+ # @!attribute [rw] verification_uri_complete
681
+ # An alternate URL that the client can use to automatically launch a
682
+ # browser. This process skips the manual step in which the user visits
683
+ # the verification page and enters their code.
684
+ # @return [String]
685
+ #
686
+ # @!attribute [rw] expires_in
687
+ # Indicates the number of seconds in which the verification code will
688
+ # become invalid.
689
+ # @return [Integer]
690
+ #
691
+ # @!attribute [rw] interval
692
+ # Indicates the number of seconds the client must wait between
693
+ # attempts when polling for a session.
694
+ # @return [Integer]
695
+ #
696
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/StartDeviceAuthorizationResponse AWS API Documentation
697
+ #
698
+ class StartDeviceAuthorizationResponse < Struct.new(
699
+ :device_code,
700
+ :user_code,
701
+ :verification_uri,
702
+ :verification_uri_complete,
703
+ :expires_in,
704
+ :interval)
705
+ SENSITIVE = []
706
+ include Aws::Structure
707
+ end
708
+
709
+ # Indicates that the client is not currently authorized to make the
710
+ # request. This can happen when a `clientId` is not issued for a public
711
+ # client.
712
+ #
713
+ # @!attribute [rw] error
714
+ # Single error code. For this exception the value will be
715
+ # `unauthorized_client`.
716
+ # @return [String]
717
+ #
718
+ # @!attribute [rw] error_description
719
+ # Human-readable text providing additional information, used to assist
720
+ # the client developer in understanding the error that occurred.
721
+ # @return [String]
722
+ #
723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/UnauthorizedClientException AWS API Documentation
724
+ #
725
+ class UnauthorizedClientException < Struct.new(
726
+ :error,
727
+ :error_description)
728
+ SENSITIVE = []
729
+ include Aws::Structure
730
+ end
731
+
732
+ # Indicates that the grant type in the request is not supported by the
733
+ # service.
734
+ #
735
+ # @!attribute [rw] error
736
+ # Single error code. For this exception the value will be
737
+ # `unsupported_grant_type`.
738
+ # @return [String]
739
+ #
740
+ # @!attribute [rw] error_description
741
+ # Human-readable text providing additional information, used to assist
742
+ # the client developer in understanding the error that occurred.
743
+ # @return [String]
744
+ #
745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/UnsupportedGrantTypeException AWS API Documentation
746
+ #
747
+ class UnsupportedGrantTypeException < Struct.new(
748
+ :error,
749
+ :error_description)
750
+ SENSITIVE = []
751
+ include Aws::Structure
752
+ end
753
+
754
+ end
755
+ end