aws-sdk-core 3.209.1 → 3.240.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 (112) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +331 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-core/arn.rb +1 -3
  5. data/lib/aws-sdk-core/assume_role_credentials.rb +9 -8
  6. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +3 -2
  7. data/lib/aws-sdk-core/cbor/decoder.rb +0 -2
  8. data/lib/aws-sdk-core/cbor/encoder.rb +2 -2
  9. data/lib/aws-sdk-core/cbor.rb +3 -56
  10. data/lib/aws-sdk-core/client_stubs.rb +35 -55
  11. data/lib/aws-sdk-core/credential_provider.rb +4 -0
  12. data/lib/aws-sdk-core/credential_provider_chain.rb +91 -22
  13. data/lib/aws-sdk-core/credentials.rb +6 -0
  14. data/lib/aws-sdk-core/ecs_credentials.rb +14 -13
  15. data/lib/aws-sdk-core/endpoints/matchers.rb +3 -9
  16. data/lib/aws-sdk-core/endpoints.rb +37 -13
  17. data/lib/aws-sdk-core/error_handler.rb +5 -0
  18. data/lib/aws-sdk-core/errors.rb +5 -2
  19. data/lib/aws-sdk-core/event_emitter.rb +1 -1
  20. data/lib/aws-sdk-core/instance_profile_credentials.rb +147 -157
  21. data/lib/aws-sdk-core/json/error_handler.rb +14 -3
  22. data/lib/aws-sdk-core/json/handler.rb +1 -0
  23. data/lib/aws-sdk-core/log/param_formatter.rb +7 -3
  24. data/lib/aws-sdk-core/login_credentials.rb +229 -0
  25. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +347 -171
  26. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +0 -1
  27. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +75 -59
  28. data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +40 -32
  29. data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -8
  30. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +44 -25
  31. data/lib/aws-sdk-core/plugins/sign.rb +30 -21
  32. data/lib/aws-sdk-core/plugins/stub_responses.rb +30 -8
  33. data/lib/aws-sdk-core/plugins/user_agent.rb +35 -2
  34. data/lib/aws-sdk-core/process_credentials.rb +1 -1
  35. data/lib/aws-sdk-core/refreshing_credentials.rb +8 -11
  36. data/lib/aws-sdk-core/rest/request/headers.rb +3 -3
  37. data/lib/aws-sdk-core/rpc_v2/builder.rb +1 -1
  38. data/lib/aws-sdk-core/{cbor → rpc_v2}/cbor_engine.rb +4 -5
  39. data/lib/aws-sdk-core/rpc_v2/content_type_handler.rb +3 -1
  40. data/lib/aws-sdk-core/rpc_v2/error_handler.rb +27 -16
  41. data/lib/aws-sdk-core/rpc_v2/handler.rb +2 -1
  42. data/lib/aws-sdk-core/rpc_v2/parser.rb +9 -1
  43. data/lib/aws-sdk-core/rpc_v2.rb +65 -2
  44. data/lib/aws-sdk-core/shared_config.rb +104 -21
  45. data/lib/aws-sdk-core/shared_credentials.rb +1 -0
  46. data/lib/aws-sdk-core/sso_credentials.rb +3 -1
  47. data/lib/aws-sdk-core/static_token_provider.rb +1 -2
  48. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +12 -11
  49. data/lib/aws-sdk-core/stubbing/protocols/json.rb +11 -10
  50. data/lib/aws-sdk-core/stubbing/protocols/query.rb +7 -6
  51. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +2 -1
  52. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +9 -8
  53. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +6 -5
  54. data/lib/aws-sdk-core/stubbing/protocols/rpc_v2.rb +13 -15
  55. data/lib/aws-sdk-core/stubbing.rb +2 -2
  56. data/lib/aws-sdk-core/token.rb +3 -3
  57. data/lib/aws-sdk-core/token_provider.rb +4 -0
  58. data/lib/aws-sdk-core/token_provider_chain.rb +2 -6
  59. data/lib/aws-sdk-core/util.rb +2 -1
  60. data/lib/aws-sdk-core/xml/error_handler.rb +3 -1
  61. data/lib/aws-sdk-core.rb +4 -0
  62. data/lib/aws-sdk-signin/client.rb +604 -0
  63. data/lib/aws-sdk-signin/client_api.rb +119 -0
  64. data/lib/aws-sdk-signin/customizations.rb +1 -0
  65. data/lib/aws-sdk-signin/endpoint_parameters.rb +69 -0
  66. data/lib/aws-sdk-signin/endpoint_provider.rb +59 -0
  67. data/lib/aws-sdk-signin/endpoints.rb +20 -0
  68. data/lib/aws-sdk-signin/errors.rb +122 -0
  69. data/lib/aws-sdk-signin/plugins/endpoints.rb +77 -0
  70. data/lib/aws-sdk-signin/resource.rb +26 -0
  71. data/lib/aws-sdk-signin/types.rb +299 -0
  72. data/lib/aws-sdk-signin.rb +63 -0
  73. data/lib/aws-sdk-sso/client.rb +76 -47
  74. data/lib/aws-sdk-sso/endpoint_parameters.rb +13 -10
  75. data/lib/aws-sdk-sso/endpoint_provider.rb +16 -20
  76. data/lib/aws-sdk-sso/endpoints.rb +2 -42
  77. data/lib/aws-sdk-sso/plugins/endpoints.rb +1 -14
  78. data/lib/aws-sdk-sso.rb +1 -1
  79. data/lib/aws-sdk-ssooidc/client.rb +132 -73
  80. data/lib/aws-sdk-ssooidc/client_api.rb +11 -0
  81. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +13 -10
  82. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +14 -18
  83. data/lib/aws-sdk-ssooidc/endpoints.rb +2 -42
  84. data/lib/aws-sdk-ssooidc/errors.rb +10 -0
  85. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +1 -14
  86. data/lib/aws-sdk-ssooidc/types.rb +65 -21
  87. data/lib/aws-sdk-ssooidc.rb +1 -1
  88. data/lib/aws-sdk-sts/client.rb +416 -107
  89. data/lib/aws-sdk-sts/client_api.rb +105 -8
  90. data/lib/aws-sdk-sts/customizations.rb +0 -1
  91. data/lib/aws-sdk-sts/endpoint_parameters.rb +15 -14
  92. data/lib/aws-sdk-sts/endpoint_provider.rb +50 -55
  93. data/lib/aws-sdk-sts/endpoints.rb +2 -94
  94. data/lib/aws-sdk-sts/errors.rb +79 -0
  95. data/lib/aws-sdk-sts/plugins/endpoints.rb +1 -22
  96. data/lib/aws-sdk-sts/presigner.rb +2 -6
  97. data/lib/aws-sdk-sts/types.rb +343 -32
  98. data/lib/aws-sdk-sts.rb +1 -1
  99. data/lib/seahorse/client/async_base.rb +4 -5
  100. data/lib/seahorse/client/base.rb +0 -14
  101. data/lib/seahorse/client/h2/connection.rb +18 -28
  102. data/lib/seahorse/client/h2/handler.rb +6 -1
  103. data/lib/seahorse/client/http/response.rb +1 -1
  104. data/lib/seahorse/client/net_http/connection_pool.rb +4 -1
  105. data/lib/seahorse/client/networking_error.rb +1 -1
  106. data/lib/seahorse/client/plugins/h2.rb +4 -4
  107. data/lib/seahorse/client/request_context.rb +2 -2
  108. data/lib/seahorse/client/response.rb +2 -0
  109. data/lib/seahorse/util.rb +2 -1
  110. data/sig/aws-sdk-core/async_client_stubs.rbs +21 -0
  111. data/sig/seahorse/client/async_base.rbs +18 -0
  112. metadata +69 -17
@@ -10,43 +10,39 @@
10
10
  module Aws::SSOOIDC
11
11
  class EndpointProvider
12
12
  def resolve_endpoint(parameters)
13
- region = parameters.region
14
- use_dual_stack = parameters.use_dual_stack
15
- use_fips = parameters.use_fips
16
- endpoint = parameters.endpoint
17
- if Aws::Endpoints::Matchers.set?(endpoint)
18
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
13
+ if Aws::Endpoints::Matchers.set?(parameters.endpoint)
14
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
19
15
  raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
16
  end
21
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
17
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
22
18
  raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
19
  end
24
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
20
+ return Aws::Endpoints::Endpoint.new(url: parameters.endpoint, headers: {}, properties: {})
25
21
  end
26
- if Aws::Endpoints::Matchers.set?(region)
27
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ if Aws::Endpoints::Matchers.set?(parameters.region)
23
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(parameters.region))
24
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
29
25
  if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
- return Aws::Endpoints::Endpoint.new(url: "https://oidc-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
26
+ return Aws::Endpoints::Endpoint.new(url: "https://oidc-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
27
  end
32
28
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
29
  end
34
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
30
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
35
31
  if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
32
  if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
37
- return Aws::Endpoints::Endpoint.new(url: "https://oidc.#{region}.amazonaws.com", headers: {}, properties: {})
33
+ return Aws::Endpoints::Endpoint.new(url: "https://oidc.#{parameters.region}.amazonaws.com", headers: {}, properties: {})
38
34
  end
39
- return Aws::Endpoints::Endpoint.new(url: "https://oidc-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
35
+ return Aws::Endpoints::Endpoint.new(url: "https://oidc-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
40
36
  end
41
37
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
42
38
  end
43
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
39
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
44
40
  if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
45
- return Aws::Endpoints::Endpoint.new(url: "https://oidc.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
41
+ return Aws::Endpoints::Endpoint.new(url: "https://oidc.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
46
42
  end
47
43
  raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
48
44
  end
49
- return Aws::Endpoints::Endpoint.new(url: "https://oidc.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
45
+ return Aws::Endpoints::Endpoint.new(url: "https://oidc.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
50
46
  end
51
47
  end
52
48
  raise ArgumentError, "Invalid Configuration: Missing Region"
@@ -12,49 +12,9 @@ module Aws::SSOOIDC
12
12
  # @api private
13
13
  module Endpoints
14
14
 
15
- class CreateToken
16
- def self.build(context)
17
- Aws::SSOOIDC::EndpointParameters.new(
18
- region: context.config.region,
19
- use_dual_stack: context.config.use_dualstack_endpoint,
20
- use_fips: context.config.use_fips_endpoint,
21
- endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
22
- )
23
- end
24
- end
25
-
26
- class CreateTokenWithIAM
27
- def self.build(context)
28
- Aws::SSOOIDC::EndpointParameters.new(
29
- region: context.config.region,
30
- use_dual_stack: context.config.use_dualstack_endpoint,
31
- use_fips: context.config.use_fips_endpoint,
32
- endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
33
- )
34
- end
35
- end
36
15
 
37
- class RegisterClient
38
- def self.build(context)
39
- Aws::SSOOIDC::EndpointParameters.new(
40
- region: context.config.region,
41
- use_dual_stack: context.config.use_dualstack_endpoint,
42
- use_fips: context.config.use_fips_endpoint,
43
- endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
44
- )
45
- end
16
+ def self.parameters_for_operation(context)
17
+ Aws::SSOOIDC::EndpointParameters.create(context.config)
46
18
  end
47
-
48
- class StartDeviceAuthorization
49
- def self.build(context)
50
- Aws::SSOOIDC::EndpointParameters.new(
51
- region: context.config.region,
52
- use_dual_stack: context.config.use_dualstack_endpoint,
53
- use_fips: context.config.use_fips_endpoint,
54
- endpoint: context.config.regional_endpoint ? nil : context.config.endpoint.to_s,
55
- )
56
- end
57
- end
58
-
59
19
  end
60
20
  end
@@ -62,6 +62,11 @@ module Aws::SSOOIDC
62
62
  @data[:error]
63
63
  end
64
64
 
65
+ # @return [String]
66
+ def reason
67
+ @data[:reason]
68
+ end
69
+
65
70
  # @return [String]
66
71
  def error_description
67
72
  @data[:error_description]
@@ -222,6 +227,11 @@ module Aws::SSOOIDC
222
227
  @data[:error]
223
228
  end
224
229
 
230
+ # @return [String]
231
+ def reason
232
+ @data[:reason]
233
+ end
234
+
225
235
  # @return [String]
226
236
  def error_description
227
237
  @data[:error_description]
@@ -27,7 +27,7 @@ The endpoint provider used to resolve endpoints. Any object that responds to
27
27
  class Handler < Seahorse::Client::Handler
28
28
  def call(context)
29
29
  unless context[:discovered_endpoint]
30
- params = parameters_for_operation(context)
30
+ params = Aws::SSOOIDC::Endpoints.parameters_for_operation(context)
31
31
  endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
32
 
33
33
  context.http_request.endpoint = endpoint.url
@@ -67,19 +67,6 @@ The endpoint provider used to resolve endpoints. Any object that responds to
67
67
  context.http_request.headers[key] = value
68
68
  end
69
69
  end
70
-
71
- def parameters_for_operation(context)
72
- case context.operation_name
73
- when :create_token
74
- Aws::SSOOIDC::Endpoints::CreateToken.build(context)
75
- when :create_token_with_iam
76
- Aws::SSOOIDC::Endpoints::CreateTokenWithIAM.build(context)
77
- when :register_client
78
- Aws::SSOOIDC::Endpoints::RegisterClient.build(context)
79
- when :start_device_authorization
80
- Aws::SSOOIDC::Endpoints::StartDeviceAuthorization.build(context)
81
- end
82
- end
83
70
  end
84
71
 
85
72
  def add_handlers(handlers, _config)
@@ -17,6 +17,10 @@ module Aws::SSOOIDC
17
17
  # `access_denied`.
18
18
  # @return [String]
19
19
  #
20
+ # @!attribute [rw] reason
21
+ # A string that uniquely identifies a reason for the error.
22
+ # @return [String]
23
+ #
20
24
  # @!attribute [rw] error_description
21
25
  # Human-readable text providing additional information, used to assist
22
26
  # the client developer in understanding the error that occurred.
@@ -26,6 +30,7 @@ module Aws::SSOOIDC
26
30
  #
27
31
  class AccessDeniedException < Struct.new(
28
32
  :error,
33
+ :reason,
29
34
  :error_description)
30
35
  SENSITIVE = []
31
36
  include Aws::Structure
@@ -53,6 +58,31 @@ module Aws::SSOOIDC
53
58
  include Aws::Structure
54
59
  end
55
60
 
61
+ # This structure contains Amazon Web Services-specific parameter
62
+ # extensions and the [identity context][1].
63
+ #
64
+ #
65
+ #
66
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/trustedidentitypropagation-overview.html
67
+ #
68
+ # @!attribute [rw] identity_context
69
+ # The trusted context assertion is signed and encrypted by STS. It
70
+ # provides access to `sts:identity_context` claim in the `idToken`
71
+ # without JWT parsing
72
+ #
73
+ # Identity context comprises information that Amazon Web Services
74
+ # services use to make authorization decisions when they receive
75
+ # requests.
76
+ # @return [String]
77
+ #
78
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AwsAdditionalDetails AWS API Documentation
79
+ #
80
+ class AwsAdditionalDetails < Struct.new(
81
+ :identity_context)
82
+ SENSITIVE = []
83
+ include Aws::Structure
84
+ end
85
+
56
86
  # @!attribute [rw] client_id
57
87
  # The unique identifier string for the client or application. This
58
88
  # value comes from the result of the RegisterClient API.
@@ -64,34 +94,32 @@ module Aws::SSOOIDC
64
94
  # @return [String]
65
95
  #
66
96
  # @!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:
97
+ # Supports the following OAuth grant types: Authorization Code, Device
98
+ # Code, and Refresh Token. Specify one of the following values,
99
+ # depending on the grant type that you want:
100
+ #
101
+ # * Authorization Code - `authorization_code`
70
102
  #
71
103
  # * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
72
104
  #
73
105
  # * Refresh Token - `refresh_token`
74
- #
75
- # For information about how to obtain the device code, see the
76
- # StartDeviceAuthorization topic.
77
106
  # @return [String]
78
107
  #
79
108
  # @!attribute [rw] device_code
80
109
  # 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.
110
+ # short-lived code is used to identify this authorization request.
111
+ # This comes from the result of the StartDeviceAuthorization API.
83
112
  # @return [String]
84
113
  #
85
114
  # @!attribute [rw] code
86
115
  # 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.
116
+ # type. The short-lived code is used to identify this authorization
117
+ # request.
90
118
  # @return [String]
91
119
  #
92
120
  # @!attribute [rw] refresh_token
93
121
  # 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
122
+ # This token is used to refresh short-lived tokens, such as the access
95
123
  # token, that might expire.
96
124
  #
97
125
  # For more information about the features and limitations of the
@@ -105,11 +133,9 @@ module Aws::SSOOIDC
105
133
  # @return [String]
106
134
  #
107
135
  # @!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.
136
+ # The list of scopes for which authorization is requested. This
137
+ # parameter has no effect; the access token will always include all
138
+ # scopes configured during client registration.
113
139
  # @return [Array<String>]
114
140
  #
115
141
  # @!attribute [rw] redirect_uri
@@ -217,7 +243,7 @@ module Aws::SSOOIDC
217
243
  #
218
244
  # @!attribute [rw] code
219
245
  # Used only when calling this API for the Authorization Code grant
220
- # type. This short-term code is used to identify this authorization
246
+ # type. This short-lived code is used to identify this authorization
221
247
  # request. The code is obtained through a redirect from IAM Identity
222
248
  # Center to a redirect URI persisted in the Authorization Code
223
249
  # GrantOptions for the application.
@@ -225,7 +251,7 @@ module Aws::SSOOIDC
225
251
  #
226
252
  # @!attribute [rw] refresh_token
227
253
  # 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
254
+ # This token is used to refresh short-lived tokens, such as the access
229
255
  # token, that might expire.
230
256
  #
231
257
  # For more information about the features and limitations of the
@@ -358,6 +384,11 @@ module Aws::SSOOIDC
358
384
  # token that is issued is limited to the scopes that are granted.
359
385
  # @return [Array<String>]
360
386
  #
387
+ # @!attribute [rw] aws_additional_details
388
+ # A structure containing information from IAM Identity Center managed
389
+ # user and group information.
390
+ # @return [Types::AwsAdditionalDetails]
391
+ #
361
392
  # @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMResponse AWS API Documentation
362
393
  #
363
394
  class CreateTokenWithIAMResponse < Struct.new(
@@ -367,7 +398,8 @@ module Aws::SSOOIDC
367
398
  :refresh_token,
368
399
  :id_token,
369
400
  :issued_token_type,
370
- :scope)
401
+ :scope,
402
+ :aws_additional_details)
371
403
  SENSITIVE = [:access_token, :refresh_token, :id_token]
372
404
  include Aws::Structure
373
405
  end
@@ -513,6 +545,10 @@ module Aws::SSOOIDC
513
545
  # `invalid_request`.
514
546
  # @return [String]
515
547
  #
548
+ # @!attribute [rw] reason
549
+ # A string that uniquely identifies a reason for the error.
550
+ # @return [String]
551
+ #
516
552
  # @!attribute [rw] error_description
517
553
  # Human-readable text providing additional information, used to assist
518
554
  # the client developer in understanding the error that occurred.
@@ -522,6 +558,7 @@ module Aws::SSOOIDC
522
558
  #
523
559
  class InvalidRequestException < Struct.new(
524
560
  :error,
561
+ :reason,
525
562
  :error_description)
526
563
  SENSITIVE = []
527
564
  include Aws::Structure
@@ -606,7 +643,14 @@ module Aws::SSOOIDC
606
643
  # @!attribute [rw] grant_types
607
644
  # The list of OAuth 2.0 grant types that are defined by the client.
608
645
  # This list is used to restrict the token granting flows available to
609
- # the client.
646
+ # the client. Supports the following OAuth 2.0 grant types:
647
+ # Authorization Code, Device Code, and Refresh Token.
648
+ #
649
+ # * Authorization Code - `authorization_code`
650
+ #
651
+ # * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
652
+ #
653
+ # * Refresh Token - `refresh_token`
610
654
  # @return [Array<String>]
611
655
  #
612
656
  # @!attribute [rw] issuer_url
@@ -56,7 +56,7 @@ module Aws::SSOOIDC
56
56
  autoload :EndpointProvider, 'aws-sdk-ssooidc/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-ssooidc/endpoints'
58
58
 
59
- GEM_VERSION = '3.209.1'
59
+ GEM_VERSION = '3.240.0'
60
60
 
61
61
  end
62
62