aws-sdk-core 3.185.1 → 3.214.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.
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
+