aws-sdk-core 3.210.0 → 3.217.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +75 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +1 -2
  5. data/lib/aws-sdk-core/arn.rb +1 -3
  6. data/lib/aws-sdk-core/cbor/decoder.rb +0 -2
  7. data/lib/aws-sdk-core/cbor/encoder.rb +2 -2
  8. data/lib/aws-sdk-core/cbor.rb +3 -56
  9. data/lib/aws-sdk-core/client_stubs.rb +7 -7
  10. data/lib/aws-sdk-core/json/error_handler.rb +2 -1
  11. data/lib/aws-sdk-core/json/handler.rb +1 -0
  12. data/lib/aws-sdk-core/log/param_formatter.rb +7 -3
  13. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +332 -170
  14. data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -8
  15. data/lib/aws-sdk-core/plugins/sign.rb +1 -1
  16. data/lib/aws-sdk-core/plugins/user_agent.rb +10 -1
  17. data/lib/aws-sdk-core/rest/request/headers.rb +2 -2
  18. data/lib/aws-sdk-core/rpc_v2/builder.rb +1 -1
  19. data/lib/aws-sdk-core/{cbor → rpc_v2}/cbor_engine.rb +4 -5
  20. data/lib/aws-sdk-core/rpc_v2/content_type_handler.rb +3 -1
  21. data/lib/aws-sdk-core/rpc_v2/error_handler.rb +3 -2
  22. data/lib/aws-sdk-core/rpc_v2/handler.rb +2 -1
  23. data/lib/aws-sdk-core/rpc_v2/parser.rb +1 -1
  24. data/lib/aws-sdk-core/rpc_v2.rb +65 -2
  25. data/lib/aws-sdk-core/shared_config.rb +2 -0
  26. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +12 -11
  27. data/lib/aws-sdk-core/stubbing/protocols/json.rb +11 -10
  28. data/lib/aws-sdk-core/stubbing/protocols/query.rb +7 -6
  29. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +2 -1
  30. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +9 -8
  31. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +6 -5
  32. data/lib/aws-sdk-core/stubbing/protocols/rpc_v2.rb +13 -15
  33. data/lib/aws-sdk-core/stubbing.rb +2 -2
  34. data/lib/aws-sdk-sso/client.rb +24 -1
  35. data/lib/aws-sdk-sso.rb +1 -1
  36. data/lib/aws-sdk-ssooidc/client.rb +48 -19
  37. data/lib/aws-sdk-ssooidc/types.rb +20 -15
  38. data/lib/aws-sdk-ssooidc.rb +1 -1
  39. data/lib/aws-sdk-sts/client.rb +231 -52
  40. data/lib/aws-sdk-sts/client_api.rb +23 -0
  41. data/lib/aws-sdk-sts/types.rb +170 -28
  42. data/lib/aws-sdk-sts.rb +1 -1
  43. data/lib/seahorse/client/response.rb +2 -0
  44. metadata +3 -3
@@ -20,7 +20,7 @@ module Aws
20
20
  def apply(http_req, params)
21
21
  @rules.shape.members.each do |name, ref|
22
22
  value = params[name]
23
- next if value.nil? || ((ref.shape).is_a?(StringShape) && value.empty?)
23
+ next if value.nil?
24
24
 
25
25
  case ref.location
26
26
  when 'header' then apply_header_value(http_req.headers, ref, value)
@@ -51,7 +51,7 @@ module Aws
51
51
  end
52
52
 
53
53
  def list(headers, ref, values)
54
- return if !values || values.empty?
54
+ return if values.nil?
55
55
 
56
56
  member_ref = ref.shape.member
57
57
  values = values.collect do |value|
@@ -16,7 +16,7 @@ module Aws
16
16
  # different than if the input shape is a structure with no members.
17
17
  return nil if @rules.shape.struct_class == EmptyStructure
18
18
 
19
- Cbor.encode(format(@rules, params))
19
+ RpcV2.encode(format(@rules, params))
20
20
  end
21
21
 
22
22
  private
@@ -1,18 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'encoder'
4
- require_relative 'decoder'
3
+ require_relative '../cbor'
5
4
 
6
5
  module Aws
7
- module Cbor
6
+ module RpcV2
8
7
  # Pure Ruby implementation of CBOR encode and decode
9
8
  module CborEngine
10
9
  def self.encode(data)
11
- Encoder.new.add(data).bytes
10
+ Cbor::Encoder.new.add(data).bytes
12
11
  end
13
12
 
14
13
  def self.decode(bytes)
15
- Decoder.new(bytes.force_encoding(Encoding::BINARY)).decode
14
+ Cbor::Decoder.new(bytes.force_encoding(Encoding::BINARY)).decode
16
15
  end
17
16
  end
18
17
  end
@@ -13,11 +13,13 @@ module Aws
13
13
  accept =
14
14
  if eventstream_output?(context)
15
15
  'application/vnd.amazon.eventstream'
16
+ else
17
+ 'application/cbor'
16
18
  end
17
19
 
18
20
  headers = context.http_request.headers
19
21
  headers['Content-Type'] ||= content_type if content_type
20
- headers['Accept'] ||= accept if accept
22
+ headers['Accept'] ||= accept
21
23
  @handler.call(context)
22
24
  end
23
25
 
@@ -27,7 +27,7 @@ module Aws
27
27
  end
28
28
 
29
29
  def extract_error(body, context)
30
- data = Cbor.decode(body)
30
+ data = RpcV2.decode(body)
31
31
  code = error_code(data, context)
32
32
  message = data['message']
33
33
  data = parse_error_data(context, body, code)
@@ -39,7 +39,8 @@ module Aws
39
39
  def error_code(data, context)
40
40
  code =
41
41
  if aws_query_error?(context)
42
- error = context.http_response.headers['x-amzn-query-error'].split(';')[0]
42
+ query_header = context.http_response.headers['x-amzn-query-error']
43
+ error, _type = query_header.split(';') # type not supported
43
44
  remove_prefix(error, context)
44
45
  else
45
46
  data['__type']
@@ -20,7 +20,8 @@ module Aws
20
20
  end
21
21
 
22
22
  def build_request(context)
23
- context.http_request.headers['smithy-protocol'] = 'rpc-v2-cbor'
23
+ context.http_request.headers['Smithy-Protocol'] = 'rpc-v2-cbor'
24
+ context.http_request.headers['X-Amzn-Query-Mode'] = 'true' if query_compatible?(context)
24
25
  context.http_request.http_method = 'POST'
25
26
  context.http_request.body = build_body(context)
26
27
  build_url(context)
@@ -16,7 +16,7 @@ module Aws
16
16
  def parse(cbor, target = nil)
17
17
  return {} if cbor.empty?
18
18
 
19
- parse_ref(@rules, Cbor.decode(cbor), target)
19
+ parse_ref(@rules, RpcV2.decode(cbor), target)
20
20
  end
21
21
 
22
22
  private
@@ -1,6 +1,69 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative 'cbor'
2
- require_relative 'rpc_v2/handler'
4
+ require_relative 'rpc_v2/builder'
3
5
  require_relative 'rpc_v2/content_type_handler'
4
6
  require_relative 'rpc_v2/error_handler'
5
- require_relative 'rpc_v2/builder'
7
+ require_relative 'rpc_v2/handler'
6
8
  require_relative 'rpc_v2/parser'
9
+
10
+ module Aws
11
+ # @api private
12
+ module RpcV2
13
+ class << self
14
+ # @param [Symbol,Class] engine
15
+ # Must be one of the following values:
16
+ #
17
+ # * :cbor
18
+ #
19
+ def engine=(engine)
20
+ @engine = Class === engine ? engine : load_engine(engine)
21
+ end
22
+
23
+ # @return [Class] Returns the default engine.
24
+ # One of:
25
+ #
26
+ # * {CborEngine}
27
+ #
28
+ def engine
29
+ set_default_engine unless @engine
30
+ @engine
31
+ end
32
+
33
+ def encode(data)
34
+ @engine.encode(data)
35
+ end
36
+
37
+ def decode(bytes)
38
+ bytes.force_encoding(Encoding::BINARY)
39
+ @engine.decode(bytes)
40
+ end
41
+
42
+ def set_default_engine
43
+ [:cbor].each do |name|
44
+ @engine ||= try_load_engine(name)
45
+ end
46
+
47
+ unless @engine
48
+ raise 'Unable to find a compatible cbor library.'
49
+ end
50
+ end
51
+
52
+ private
53
+
54
+ def load_engine(name)
55
+ require "aws-sdk-core/rpc_v2/#{name}_engine"
56
+ const_name = name[0].upcase + name[1..-1] + 'Engine'
57
+ const_get(const_name)
58
+ end
59
+
60
+ def try_load_engine(name)
61
+ load_engine(name)
62
+ rescue LoadError
63
+ false
64
+ end
65
+ end
66
+
67
+ set_default_engine
68
+ end
69
+ end
@@ -212,6 +212,8 @@ module Aws
212
212
  :retry_mode,
213
213
  :adaptive_retry_wait_to_fill,
214
214
  :correct_clock_skew,
215
+ :request_checksum_calculation,
216
+ :response_checksum_validation,
215
217
  :csm_client_id,
216
218
  :csm_enabled,
217
219
  :csm_host,
@@ -3,6 +3,7 @@
3
3
  module Aws
4
4
  module Stubbing
5
5
  module Protocols
6
+ # @api private
6
7
  class EC2
7
8
 
8
9
  def stub_data(api, operation, data)
@@ -16,17 +17,17 @@ module Aws
16
17
  end
17
18
 
18
19
  def stub_error(error_code)
19
- http_resp = Seahorse::Client::Http::Response.new
20
- http_resp.status_code = 400
21
- http_resp.body = <<-XML.strip
22
- <ErrorResponse>
23
- <Error>
24
- <Code>#{error_code}</Code>
25
- <Message>stubbed-response-error-message</Message>
26
- </Error>
27
- </ErrorResponse>
20
+ resp = Seahorse::Client::Http::Response.new
21
+ resp.status_code = 400
22
+ resp.body = <<~XML.strip
23
+ <ErrorResponse>
24
+ <Error>
25
+ <Code>#{error_code}</Code>
26
+ <Message>stubbed-response-error-message</Message>
27
+ </Error>
28
+ </ErrorResponse>
28
29
  XML
29
- http_resp
30
+ resp
30
31
  end
31
32
 
32
33
  private
@@ -37,7 +38,7 @@ module Aws
37
38
  xml.shift
38
39
  xml.pop
39
40
  xmlns = "http://ec2.amazonaws.com/doc/#{api.version}/".inspect
40
- xml.unshift(" <requestId>stubbed-request-id</requestId>")
41
+ xml.unshift(' <requestId>stubbed-request-id</requestId>')
41
42
  xml.unshift("<#{operation.name}Response xmlns=#{xmlns}>\n")
42
43
  xml.push("</#{operation.name}Response>\n")
43
44
  xml.join
@@ -3,27 +3,28 @@
3
3
  module Aws
4
4
  module Stubbing
5
5
  module Protocols
6
+ # @api private
6
7
  class Json
7
8
 
8
9
  def stub_data(api, operation, data)
9
10
  resp = Seahorse::Client::Http::Response.new
10
11
  resp.status_code = 200
11
- resp.headers["Content-Type"] = content_type(api)
12
- resp.headers["x-amzn-RequestId"] = "stubbed-request-id"
12
+ resp.headers['Content-Type'] = content_type(api)
13
+ resp.headers['x-amzn-RequestId'] = 'stubbed-request-id'
13
14
  resp.body = build_body(operation, data)
14
15
  resp
15
16
  end
16
17
 
17
18
  def stub_error(error_code)
18
- http_resp = Seahorse::Client::Http::Response.new
19
- http_resp.status_code = 400
20
- http_resp.body = <<-JSON.strip
21
- {
22
- "code": #{error_code.inspect},
23
- "message": "stubbed-response-error-message"
24
- }
19
+ resp = Seahorse::Client::Http::Response.new
20
+ resp.status_code = 400
21
+ resp.body = <<~JSON.strip
22
+ {
23
+ "code": #{error_code.inspect},
24
+ "message": "stubbed-response-error-message"
25
+ }
25
26
  JSON
26
- http_resp
27
+ resp
27
28
  end
28
29
 
29
30
  private
@@ -3,6 +3,7 @@
3
3
  module Aws
4
4
  module Stubbing
5
5
  module Protocols
6
+ # @api private
6
7
  class Query
7
8
 
8
9
  def stub_data(api, operation, data)
@@ -13,10 +14,10 @@ module Aws
13
14
  end
14
15
 
15
16
  def stub_error(error_code)
16
- http_resp = Seahorse::Client::Http::Response.new
17
- http_resp.status_code = 400
18
- http_resp.body = XmlError.new(error_code).to_xml
19
- http_resp
17
+ resp = Seahorse::Client::Http::Response.new
18
+ resp.status_code = 400
19
+ resp.body = XmlError.new(error_code).to_xml
20
+ resp
20
21
  end
21
22
 
22
23
  private
@@ -24,9 +25,9 @@ module Aws
24
25
  def build_body(api, operation, data)
25
26
  xml = []
26
27
  builder = Aws::Xml::DocBuilder.new(target: xml, indent: ' ')
27
- builder.node(operation.name + 'Response', xmlns: xmlns(api)) do
28
+ builder.node("#{operation.name}Response", xmlns: xmlns(api)) do
28
29
  if (rules = operation.output)
29
- rules.location_name = operation.name + 'Result'
30
+ rules.location_name = "#{operation.name}Result"
30
31
  Xml::Builder.new(rules, target: xml, pad:' ').to_xml(data)
31
32
  end
32
33
  builder.node('ResponseMetadata') do
@@ -5,6 +5,7 @@ require 'aws-eventstream'
5
5
  module Aws
6
6
  module Stubbing
7
7
  module Protocols
8
+ # @api private
8
9
  class Rest
9
10
 
10
11
  include Seahorse::Model::Shapes
@@ -22,7 +23,7 @@ module Aws
22
23
  def new_http_response
23
24
  resp = Seahorse::Client::Http::Response.new
24
25
  resp.status_code = 200
25
- resp.headers["x-amzn-RequestId"] = "stubbed-request-id"
26
+ resp.headers['x-amzn-RequestId'] = 'stubbed-request-id'
26
27
  resp
27
28
  end
28
29
 
@@ -3,6 +3,7 @@
3
3
  module Aws
4
4
  module Stubbing
5
5
  module Protocols
6
+ # @api private
6
7
  class RestJson < Rest
7
8
 
8
9
  def body_for(_a, _b, rules, data)
@@ -14,15 +15,15 @@ module Aws
14
15
  end
15
16
 
16
17
  def stub_error(error_code)
17
- http_resp = Seahorse::Client::Http::Response.new
18
- http_resp.status_code = 400
19
- http_resp.body = <<-JSON.strip
20
- {
21
- "code": #{error_code.inspect},
22
- "message": "stubbed-response-error-message"
23
- }
18
+ resp = Seahorse::Client::Http::Response.new
19
+ resp.status_code = 400
20
+ resp.body = <<~JSON.strip
21
+ {
22
+ "code": #{error_code.inspect},
23
+ "message": "stubbed-response-error-message"
24
+ }
24
25
  JSON
25
- http_resp
26
+ resp
26
27
  end
27
28
 
28
29
  end
@@ -3,6 +3,7 @@
3
3
  module Aws
4
4
  module Stubbing
5
5
  module Protocols
6
+ # @api private
6
7
  class RestXml < Rest
7
8
 
8
9
  def body_for(api, operation, rules, data)
@@ -10,7 +11,7 @@ module Aws
10
11
  encode_eventstream_response(rules, data, Xml::Builder)
11
12
  else
12
13
  xml = []
13
- rules.location_name = operation.name + 'Result'
14
+ rules.location_name = "#{operation.name}Result"
14
15
  rules['xmlNamespace'] = { 'uri' => api.metadata['xmlNamespace'] }
15
16
  Xml::Builder.new(rules, target:xml).to_xml(data)
16
17
  xml.join
@@ -18,10 +19,10 @@ module Aws
18
19
  end
19
20
 
20
21
  def stub_error(error_code)
21
- http_resp = Seahorse::Client::Http::Response.new
22
- http_resp.status_code = 400
23
- http_resp.body = XmlError.new(error_code).to_xml
24
- http_resp
22
+ resp = Seahorse::Client::Http::Response.new
23
+ resp.status_code = 400
24
+ resp.body = XmlError.new(error_code).to_xml
25
+ resp
25
26
  end
26
27
 
27
28
  def xmlns(api)
@@ -3,35 +3,33 @@
3
3
  module Aws
4
4
  module Stubbing
5
5
  module Protocols
6
+ # @api private
6
7
  class RpcV2
7
8
 
8
- def stub_data(api, operation, data)
9
+ def stub_data(_api, operation, data)
9
10
  resp = Seahorse::Client::Http::Response.new
10
11
  resp.status_code = 200
11
- resp.headers['Content-Type'] = content_type(api)
12
+ resp.headers['Smithy-Protocol'] = 'rpc-v2-cbor'
13
+ resp.headers['Content-Type'] = 'application/cbor'
12
14
  resp.headers['x-amzn-RequestId'] = 'stubbed-request-id'
13
15
  resp.body = build_body(operation, data)
14
16
  resp
15
17
  end
16
18
 
17
19
  def stub_error(error_code)
18
- http_resp = Seahorse::Client::Http::Response.new
19
- http_resp.status_code = 400
20
- http_resp.body = <<-JSON.strip
21
- {
22
- "code": #{error_code.inspect},
23
- "message": "stubbed-response-error-message"
24
- }
25
- JSON
26
- http_resp
20
+ resp = Seahorse::Client::Http::Response.new
21
+ resp.status_code = 400
22
+ resp.body = Aws::RpcV2.encode(
23
+ {
24
+ 'code' => error_code,
25
+ 'message' => 'stubbed-response-error-message'
26
+ }
27
+ )
28
+ resp
27
29
  end
28
30
 
29
31
  private
30
32
 
31
- def content_type(api)
32
- 'application/cbor'
33
- end
34
-
35
33
  def build_body(operation, data)
36
34
  Aws::RpcV2::Builder.new(operation.output).serialize(data)
37
35
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Aws
4
- # setup autoloading for Stubbing module
4
+ # @api private
5
5
  module Stubbing
6
6
  autoload :EmptyStub, 'aws-sdk-core/stubbing/empty_stub'
7
7
  autoload :DataApplicator, 'aws-sdk-core/stubbing/data_applicator'
@@ -19,4 +19,4 @@ module Aws
19
19
  autoload :ApiGateway, 'aws-sdk-core/stubbing/protocols/api_gateway'
20
20
  end
21
21
  end
22
- end
22
+ end
@@ -257,11 +257,34 @@ module Aws::SSO
257
257
  # Used when loading credentials from the shared credentials file
258
258
  # at HOME/.aws/credentials. When not specified, 'default' is used.
259
259
  #
260
+ # @option options [String] :request_checksum_calculation ("when_supported")
261
+ # Determines when a checksum will be calculated for request payloads. Values are:
262
+ #
263
+ # * `when_supported` - (default) When set, a checksum will be
264
+ # calculated for all request payloads of operations modeled with the
265
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
266
+ # `requestAlgorithmMember` is modeled.
267
+ # * `when_required` - When set, a checksum will only be calculated for
268
+ # request payloads of operations modeled with the `httpChecksum` trait where
269
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
270
+ # is modeled and supplied.
271
+ #
260
272
  # @option options [Integer] :request_min_compression_size_bytes (10240)
261
273
  # The minimum size in bytes that triggers compression for request
262
274
  # bodies. The value must be non-negative integer value between 0
263
275
  # and 10485780 bytes inclusive.
264
276
  #
277
+ # @option options [String] :response_checksum_validation ("when_supported")
278
+ # Determines when checksum validation will be performed on response payloads. Values are:
279
+ #
280
+ # * `when_supported` - (default) When set, checksum validation is performed on all
281
+ # response payloads of operations modeled with the `httpChecksum` trait where
282
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
283
+ # are supported.
284
+ # * `when_required` - When set, checksum validation is not performed on
285
+ # response payloads of operations unless the checksum algorithm is supported and
286
+ # the `requestValidationModeMember` member is set to `ENABLED`.
287
+ #
265
288
  # @option options [Proc] :retry_backoff
266
289
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
290
  # This option is only used in the `legacy` retry mode.
@@ -669,7 +692,7 @@ module Aws::SSO
669
692
  tracer: tracer
670
693
  )
671
694
  context[:gem_name] = 'aws-sdk-core'
672
- context[:gem_version] = '3.210.0'
695
+ context[:gem_version] = '3.217.1'
673
696
  Seahorse::Client::Request.new(handlers, context)
674
697
  end
675
698
 
data/lib/aws-sdk-sso.rb CHANGED
@@ -56,7 +56,7 @@ module Aws::SSO
56
56
  autoload :EndpointProvider, 'aws-sdk-sso/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-sso/endpoints'
58
58
 
59
- GEM_VERSION = '3.210.0'
59
+ GEM_VERSION = '3.217.1'
60
60
 
61
61
  end
62
62
 
@@ -257,11 +257,34 @@ module Aws::SSOOIDC
257
257
  # Used when loading credentials from the shared credentials file
258
258
  # at HOME/.aws/credentials. When not specified, 'default' is used.
259
259
  #
260
+ # @option options [String] :request_checksum_calculation ("when_supported")
261
+ # Determines when a checksum will be calculated for request payloads. Values are:
262
+ #
263
+ # * `when_supported` - (default) When set, a checksum will be
264
+ # calculated for all request payloads of operations modeled with the
265
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
266
+ # `requestAlgorithmMember` is modeled.
267
+ # * `when_required` - When set, a checksum will only be calculated for
268
+ # request payloads of operations modeled with the `httpChecksum` trait where
269
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
270
+ # is modeled and supplied.
271
+ #
260
272
  # @option options [Integer] :request_min_compression_size_bytes (10240)
261
273
  # The minimum size in bytes that triggers compression for request
262
274
  # bodies. The value must be non-negative integer value between 0
263
275
  # and 10485780 bytes inclusive.
264
276
  #
277
+ # @option options [String] :response_checksum_validation ("when_supported")
278
+ # Determines when checksum validation will be performed on response payloads. Values are:
279
+ #
280
+ # * `when_supported` - (default) When set, checksum validation is performed on all
281
+ # response payloads of operations modeled with the `httpChecksum` trait where
282
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
283
+ # are supported.
284
+ # * `when_required` - When set, checksum validation is not performed on
285
+ # response payloads of operations unless the checksum algorithm is supported and
286
+ # the `requestValidationModeMember` member is set to `ENABLED`.
287
+ #
265
288
  # @option options [Proc] :retry_backoff
266
289
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
290
  # This option is only used in the `legacy` retry mode.
@@ -449,7 +472,7 @@ module Aws::SSOOIDC
449
472
 
450
473
  # Creates and returns access and refresh tokens for clients that are
451
474
  # authenticated using client secrets. The access token can be used to
452
- # fetch short-term credentials for the assigned AWS accounts or to
475
+ # fetch short-lived credentials for the assigned AWS accounts or to
453
476
  # access application APIs using `bearer` authentication.
454
477
  #
455
478
  # @option params [required, String] :client_id
@@ -461,30 +484,28 @@ module Aws::SSOOIDC
461
484
  # the persisted result of the RegisterClient API.
462
485
  #
463
486
  # @option params [required, String] :grant_type
464
- # Supports the following OAuth grant types: Device Code and Refresh
465
- # Token. Specify either of the following values, depending on the grant
466
- # type that you want:
487
+ # Supports the following OAuth grant types: Authorization Code, Device
488
+ # Code, and Refresh Token. Specify one of the following values,
489
+ # depending on the grant type that you want:
490
+ #
491
+ # * Authorization Code - `authorization_code`
467
492
  #
468
493
  # * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
469
494
  #
470
495
  # * Refresh Token - `refresh_token`
471
496
  #
472
- # For information about how to obtain the device code, see the
473
- # StartDeviceAuthorization topic.
474
- #
475
497
  # @option params [String] :device_code
476
498
  # Used only when calling this API for the Device Code grant type. This
477
- # short-term code is used to identify this authorization request. This
499
+ # short-lived code is used to identify this authorization request. This
478
500
  # comes from the result of the StartDeviceAuthorization API.
479
501
  #
480
502
  # @option params [String] :code
481
503
  # Used only when calling this API for the Authorization Code grant type.
482
- # The short-term code is used to identify this authorization request.
483
- # This grant type is currently unsupported for the CreateToken API.
504
+ # The short-lived code is used to identify this authorization request.
484
505
  #
485
506
  # @option params [String] :refresh_token
486
507
  # Used only when calling this API for the Refresh Token grant type. This
487
- # token is used to refresh short-term tokens, such as the access token,
508
+ # token is used to refresh short-lived tokens, such as the access token,
488
509
  # that might expire.
489
510
  #
490
511
  # For more information about the features and limitations of the current
@@ -590,7 +611,7 @@ module Aws::SSOOIDC
590
611
 
591
612
  # Creates and returns access and refresh tokens for clients and
592
613
  # applications that are authenticated using IAM entities. The access
593
- # token can be used to fetch short-term credentials for the assigned
614
+ # token can be used to fetch short-lived credentials for the assigned
594
615
  # Amazon Web Services accounts or to access application APIs using
595
616
  # `bearer` authentication.
596
617
  #
@@ -613,14 +634,14 @@ module Aws::SSOOIDC
613
634
  #
614
635
  # @option params [String] :code
615
636
  # Used only when calling this API for the Authorization Code grant type.
616
- # This short-term code is used to identify this authorization request.
637
+ # This short-lived code is used to identify this authorization request.
617
638
  # The code is obtained through a redirect from IAM Identity Center to a
618
639
  # redirect URI persisted in the Authorization Code GrantOptions for the
619
640
  # application.
620
641
  #
621
642
  # @option params [String] :refresh_token
622
643
  # Used only when calling this API for the Refresh Token grant type. This
623
- # token is used to refresh short-term tokens, such as the access token,
644
+ # token is used to refresh short-lived tokens, such as the access token,
624
645
  # that might expire.
625
646
  #
626
647
  # For more information about the features and limitations of the current
@@ -823,9 +844,10 @@ module Aws::SSOOIDC
823
844
  req.send_request(options)
824
845
  end
825
846
 
826
- # Registers a client with IAM Identity Center. This allows clients to
827
- # initiate device authorization. The output should be persisted for
828
- # reuse through many authentication requests.
847
+ # Registers a public client with IAM Identity Center. This allows
848
+ # clients to perform authorization using the authorization
849
+ # code grant with Proof Key for Code Exchange (PKCE) or the device
850
+ # code grant.
829
851
  #
830
852
  # @option params [required, String] :client_name
831
853
  # The friendly name of the client.
@@ -847,7 +869,14 @@ module Aws::SSOOIDC
847
869
  # @option params [Array<String>] :grant_types
848
870
  # The list of OAuth 2.0 grant types that are defined by the client. This
849
871
  # list is used to restrict the token granting flows available to the
850
- # client.
872
+ # client. Supports the following OAuth 2.0 grant types: Authorization
873
+ # Code, Device Code, and Refresh Token.
874
+ #
875
+ # * Authorization Code - `authorization_code`
876
+ #
877
+ # * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
878
+ #
879
+ # * Refresh Token - `refresh_token`
851
880
  #
852
881
  # @option params [String] :issuer_url
853
882
  # The IAM Identity Center Issuer URL associated with an instance of IAM
@@ -1022,7 +1051,7 @@ module Aws::SSOOIDC
1022
1051
  tracer: tracer
1023
1052
  )
1024
1053
  context[:gem_name] = 'aws-sdk-core'
1025
- context[:gem_version] = '3.210.0'
1054
+ context[:gem_version] = '3.217.1'
1026
1055
  Seahorse::Client::Request.new(handlers, context)
1027
1056
  end
1028
1057