aws-sdk-core 3.214.0 → 3.222.2
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +113 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-core/arn.rb +1 -3
- data/lib/aws-sdk-core/assume_role_credentials.rb +1 -0
- data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +1 -0
- data/lib/aws-sdk-core/cbor/decoder.rb +0 -2
- data/lib/aws-sdk-core/cbor/encoder.rb +2 -2
- data/lib/aws-sdk-core/client_stubs.rb +22 -48
- data/lib/aws-sdk-core/credential_provider.rb +4 -0
- data/lib/aws-sdk-core/credential_provider_chain.rb +27 -7
- data/lib/aws-sdk-core/credentials.rb +6 -0
- data/lib/aws-sdk-core/ecs_credentials.rb +1 -0
- data/lib/aws-sdk-core/errors.rb +2 -2
- data/lib/aws-sdk-core/instance_profile_credentials.rb +1 -0
- data/lib/aws-sdk-core/log/param_formatter.rb +7 -3
- data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +332 -170
- data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +0 -1
- data/lib/aws-sdk-core/plugins/http_checksum.rb +2 -8
- data/lib/aws-sdk-core/plugins/sign.rb +16 -2
- data/lib/aws-sdk-core/plugins/stub_responses.rb +24 -8
- data/lib/aws-sdk-core/plugins/user_agent.rb +32 -2
- data/lib/aws-sdk-core/process_credentials.rb +1 -1
- data/lib/aws-sdk-core/rest/request/headers.rb +1 -1
- data/lib/aws-sdk-core/shared_config.rb +73 -21
- data/lib/aws-sdk-core/shared_credentials.rb +1 -0
- data/lib/aws-sdk-core/sso_credentials.rb +2 -0
- data/lib/aws-sdk-sso/client.rb +52 -29
- data/lib/aws-sdk-sso/endpoint_provider.rb +14 -18
- data/lib/aws-sdk-sso.rb +1 -1
- data/lib/aws-sdk-ssooidc/client.rb +89 -49
- data/lib/aws-sdk-ssooidc/client_api.rb +6 -0
- data/lib/aws-sdk-ssooidc/endpoint_provider.rb +14 -18
- data/lib/aws-sdk-ssooidc/types.rb +48 -16
- data/lib/aws-sdk-ssooidc.rb +1 -1
- data/lib/aws-sdk-sts/client.rb +64 -42
- data/lib/aws-sdk-sts/endpoint_provider.rb +33 -38
- data/lib/aws-sdk-sts/errors.rb +16 -0
- data/lib/aws-sdk-sts/types.rb +5 -6
- data/lib/aws-sdk-sts.rb +1 -1
- data/lib/seahorse/client/async_base.rb +4 -5
- data/lib/seahorse/client/h2/connection.rb +18 -28
- data/lib/seahorse/client/net_http/connection_pool.rb +2 -0
- data/lib/seahorse/client/networking_error.rb +1 -1
- data/lib/seahorse/client/plugins/h2.rb +4 -4
- data/lib/seahorse/client/response.rb +2 -0
- metadata +36 -8
@@ -7,34 +7,34 @@
|
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
10
|
-
require 'seahorse/client/plugins/content_length
|
11
|
-
require 'aws-sdk-core/plugins/credentials_configuration
|
12
|
-
require 'aws-sdk-core/plugins/logging
|
13
|
-
require 'aws-sdk-core/plugins/param_converter
|
14
|
-
require 'aws-sdk-core/plugins/param_validator
|
15
|
-
require 'aws-sdk-core/plugins/user_agent
|
16
|
-
require 'aws-sdk-core/plugins/helpful_socket_errors
|
17
|
-
require 'aws-sdk-core/plugins/retry_errors
|
18
|
-
require 'aws-sdk-core/plugins/global_configuration
|
19
|
-
require 'aws-sdk-core/plugins/regional_endpoint
|
20
|
-
require 'aws-sdk-core/plugins/endpoint_discovery
|
21
|
-
require 'aws-sdk-core/plugins/endpoint_pattern
|
22
|
-
require 'aws-sdk-core/plugins/response_paging
|
23
|
-
require 'aws-sdk-core/plugins/stub_responses
|
24
|
-
require 'aws-sdk-core/plugins/idempotency_token
|
25
|
-
require 'aws-sdk-core/plugins/invocation_id
|
26
|
-
require 'aws-sdk-core/plugins/jsonvalue_converter
|
27
|
-
require 'aws-sdk-core/plugins/client_metrics_plugin
|
28
|
-
require 'aws-sdk-core/plugins/client_metrics_send_plugin
|
29
|
-
require 'aws-sdk-core/plugins/transfer_encoding
|
30
|
-
require 'aws-sdk-core/plugins/http_checksum
|
31
|
-
require 'aws-sdk-core/plugins/checksum_algorithm
|
32
|
-
require 'aws-sdk-core/plugins/request_compression
|
33
|
-
require 'aws-sdk-core/plugins/defaults_mode
|
34
|
-
require 'aws-sdk-core/plugins/recursion_detection
|
35
|
-
require 'aws-sdk-core/plugins/telemetry
|
36
|
-
require 'aws-sdk-core/plugins/sign
|
37
|
-
require 'aws-sdk-core/plugins/protocols/rest_json
|
10
|
+
require 'seahorse/client/plugins/content_length'
|
11
|
+
require 'aws-sdk-core/plugins/credentials_configuration'
|
12
|
+
require 'aws-sdk-core/plugins/logging'
|
13
|
+
require 'aws-sdk-core/plugins/param_converter'
|
14
|
+
require 'aws-sdk-core/plugins/param_validator'
|
15
|
+
require 'aws-sdk-core/plugins/user_agent'
|
16
|
+
require 'aws-sdk-core/plugins/helpful_socket_errors'
|
17
|
+
require 'aws-sdk-core/plugins/retry_errors'
|
18
|
+
require 'aws-sdk-core/plugins/global_configuration'
|
19
|
+
require 'aws-sdk-core/plugins/regional_endpoint'
|
20
|
+
require 'aws-sdk-core/plugins/endpoint_discovery'
|
21
|
+
require 'aws-sdk-core/plugins/endpoint_pattern'
|
22
|
+
require 'aws-sdk-core/plugins/response_paging'
|
23
|
+
require 'aws-sdk-core/plugins/stub_responses'
|
24
|
+
require 'aws-sdk-core/plugins/idempotency_token'
|
25
|
+
require 'aws-sdk-core/plugins/invocation_id'
|
26
|
+
require 'aws-sdk-core/plugins/jsonvalue_converter'
|
27
|
+
require 'aws-sdk-core/plugins/client_metrics_plugin'
|
28
|
+
require 'aws-sdk-core/plugins/client_metrics_send_plugin'
|
29
|
+
require 'aws-sdk-core/plugins/transfer_encoding'
|
30
|
+
require 'aws-sdk-core/plugins/http_checksum'
|
31
|
+
require 'aws-sdk-core/plugins/checksum_algorithm'
|
32
|
+
require 'aws-sdk-core/plugins/request_compression'
|
33
|
+
require 'aws-sdk-core/plugins/defaults_mode'
|
34
|
+
require 'aws-sdk-core/plugins/recursion_detection'
|
35
|
+
require 'aws-sdk-core/plugins/telemetry'
|
36
|
+
require 'aws-sdk-core/plugins/sign'
|
37
|
+
require 'aws-sdk-core/plugins/protocols/rest_json'
|
38
38
|
|
39
39
|
module Aws::SSOOIDC
|
40
40
|
# An API client for SSOOIDC. To construct a client, you need to configure a `:region` and `:credentials`.
|
@@ -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-
|
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:
|
465
|
-
# Token. Specify
|
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-
|
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-
|
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-
|
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-
|
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-
|
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-
|
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
|
@@ -687,6 +708,7 @@ module Aws::SSOOIDC
|
|
687
708
|
# * {Types::CreateTokenWithIAMResponse#id_token #id_token} => String
|
688
709
|
# * {Types::CreateTokenWithIAMResponse#issued_token_type #issued_token_type} => String
|
689
710
|
# * {Types::CreateTokenWithIAMResponse#scope #scope} => Array<String>
|
711
|
+
# * {Types::CreateTokenWithIAMResponse#aws_additional_details #aws_additional_details} => Types::AwsAdditionalDetails
|
690
712
|
#
|
691
713
|
#
|
692
714
|
# @example Example: Call OAuth/OIDC /token endpoint for Authorization Code grant with IAM authentication
|
@@ -706,6 +728,9 @@ module Aws::SSOOIDC
|
|
706
728
|
# resp.to_h outputs the following:
|
707
729
|
# {
|
708
730
|
# access_token: "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN",
|
731
|
+
# aws_additional_details: {
|
732
|
+
# identity_context: "EXAMPLEIDENTITYCONTEXT",
|
733
|
+
# },
|
709
734
|
# expires_in: 1579729529,
|
710
735
|
# id_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0",
|
711
736
|
# issued_token_type: "urn:ietf:params:oauth:token-type:refresh_token",
|
@@ -751,6 +776,9 @@ module Aws::SSOOIDC
|
|
751
776
|
# resp.to_h outputs the following:
|
752
777
|
# {
|
753
778
|
# access_token: "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN",
|
779
|
+
# aws_additional_details: {
|
780
|
+
# identity_context: "EXAMPLEIDENTITYCONTEXT",
|
781
|
+
# },
|
754
782
|
# expires_in: 1579729529,
|
755
783
|
# id_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0",
|
756
784
|
# issued_token_type: "urn:ietf:params:oauth:token-type:refresh_token",
|
@@ -776,6 +804,9 @@ module Aws::SSOOIDC
|
|
776
804
|
# resp.to_h outputs the following:
|
777
805
|
# {
|
778
806
|
# access_token: "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN",
|
807
|
+
# aws_additional_details: {
|
808
|
+
# identity_context: "EXAMPLEIDENTITYCONTEXT",
|
809
|
+
# },
|
779
810
|
# expires_in: 1579729529,
|
780
811
|
# id_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.5SYiW1kMsuUr7nna-l5tlakM0GNbMHvIM2_n0QD23jM",
|
781
812
|
# issued_token_type: "urn:ietf:params:oauth:token-type:access_token",
|
@@ -813,6 +844,7 @@ module Aws::SSOOIDC
|
|
813
844
|
# resp.issued_token_type #=> String
|
814
845
|
# resp.scope #=> Array
|
815
846
|
# resp.scope[0] #=> String
|
847
|
+
# resp.aws_additional_details.identity_context #=> String
|
816
848
|
#
|
817
849
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAM AWS API Documentation
|
818
850
|
#
|
@@ -823,9 +855,10 @@ module Aws::SSOOIDC
|
|
823
855
|
req.send_request(options)
|
824
856
|
end
|
825
857
|
|
826
|
-
# Registers a client with IAM Identity Center. This allows
|
827
|
-
#
|
828
|
-
#
|
858
|
+
# Registers a public client with IAM Identity Center. This allows
|
859
|
+
# clients to perform authorization using the authorization
|
860
|
+
# code grant with Proof Key for Code Exchange (PKCE) or the device
|
861
|
+
# code grant.
|
829
862
|
#
|
830
863
|
# @option params [required, String] :client_name
|
831
864
|
# The friendly name of the client.
|
@@ -847,7 +880,14 @@ module Aws::SSOOIDC
|
|
847
880
|
# @option params [Array<String>] :grant_types
|
848
881
|
# The list of OAuth 2.0 grant types that are defined by the client. This
|
849
882
|
# list is used to restrict the token granting flows available to the
|
850
|
-
# client.
|
883
|
+
# client. Supports the following OAuth 2.0 grant types: Authorization
|
884
|
+
# Code, Device Code, and Refresh Token.
|
885
|
+
#
|
886
|
+
# * Authorization Code - `authorization_code`
|
887
|
+
#
|
888
|
+
# * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
|
889
|
+
#
|
890
|
+
# * Refresh Token - `refresh_token`
|
851
891
|
#
|
852
892
|
# @option params [String] :issuer_url
|
853
893
|
# The IAM Identity Center Issuer URL associated with an instance of IAM
|
@@ -974,8 +1014,8 @@ module Aws::SSOOIDC
|
|
974
1014
|
# expires_in: 1579729529,
|
975
1015
|
# interval: 1,
|
976
1016
|
# user_code: "makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE",
|
977
|
-
# verification_uri: "https://
|
978
|
-
# verification_uri_complete: "https://
|
1017
|
+
# verification_uri: "https://directory-alias-example.awsapps.com/start/#/device",
|
1018
|
+
# verification_uri_complete: "https://directory-alias-example.awsapps.com/start/#/device?user_code=makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE",
|
979
1019
|
# }
|
980
1020
|
#
|
981
1021
|
# @example Request syntax with placeholder values
|
@@ -1022,7 +1062,7 @@ module Aws::SSOOIDC
|
|
1022
1062
|
tracer: tracer
|
1023
1063
|
)
|
1024
1064
|
context[:gem_name] = 'aws-sdk-core'
|
1025
|
-
context[:gem_version] = '3.
|
1065
|
+
context[:gem_version] = '3.222.2'
|
1026
1066
|
Seahorse::Client::Request.new(handlers, context)
|
1027
1067
|
end
|
1028
1068
|
|
@@ -20,6 +20,7 @@ module Aws::SSOOIDC
|
|
20
20
|
Assertion = Shapes::StringShape.new(name: 'Assertion')
|
21
21
|
AuthCode = Shapes::StringShape.new(name: 'AuthCode')
|
22
22
|
AuthorizationPendingException = Shapes::StructureShape.new(name: 'AuthorizationPendingException')
|
23
|
+
AwsAdditionalDetails = Shapes::StructureShape.new(name: 'AwsAdditionalDetails')
|
23
24
|
ClientId = Shapes::StringShape.new(name: 'ClientId')
|
24
25
|
ClientName = Shapes::StringShape.new(name: 'ClientName')
|
25
26
|
ClientSecret = Shapes::StringShape.new(name: 'ClientSecret')
|
@@ -37,6 +38,7 @@ module Aws::SSOOIDC
|
|
37
38
|
GrantType = Shapes::StringShape.new(name: 'GrantType')
|
38
39
|
GrantTypes = Shapes::ListShape.new(name: 'GrantTypes')
|
39
40
|
IdToken = Shapes::StringShape.new(name: 'IdToken')
|
41
|
+
IdentityContext = Shapes::StringShape.new(name: 'IdentityContext')
|
40
42
|
InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
|
41
43
|
IntervalInSeconds = Shapes::IntegerShape.new(name: 'IntervalInSeconds')
|
42
44
|
InvalidClientException = Shapes::StructureShape.new(name: 'InvalidClientException')
|
@@ -74,6 +76,9 @@ module Aws::SSOOIDC
|
|
74
76
|
AuthorizationPendingException.add_member(:error_description, Shapes::ShapeRef.new(shape: ErrorDescription, location_name: "error_description"))
|
75
77
|
AuthorizationPendingException.struct_class = Types::AuthorizationPendingException
|
76
78
|
|
79
|
+
AwsAdditionalDetails.add_member(:identity_context, Shapes::ShapeRef.new(shape: IdentityContext, location_name: "identityContext"))
|
80
|
+
AwsAdditionalDetails.struct_class = Types::AwsAdditionalDetails
|
81
|
+
|
77
82
|
CreateTokenRequest.add_member(:client_id, Shapes::ShapeRef.new(shape: ClientId, required: true, location_name: "clientId"))
|
78
83
|
CreateTokenRequest.add_member(:client_secret, Shapes::ShapeRef.new(shape: ClientSecret, required: true, location_name: "clientSecret"))
|
79
84
|
CreateTokenRequest.add_member(:grant_type, Shapes::ShapeRef.new(shape: GrantType, required: true, location_name: "grantType"))
|
@@ -112,6 +117,7 @@ module Aws::SSOOIDC
|
|
112
117
|
CreateTokenWithIAMResponse.add_member(:id_token, Shapes::ShapeRef.new(shape: IdToken, location_name: "idToken"))
|
113
118
|
CreateTokenWithIAMResponse.add_member(:issued_token_type, Shapes::ShapeRef.new(shape: TokenTypeURI, location_name: "issuedTokenType"))
|
114
119
|
CreateTokenWithIAMResponse.add_member(:scope, Shapes::ShapeRef.new(shape: Scopes, location_name: "scope"))
|
120
|
+
CreateTokenWithIAMResponse.add_member(:aws_additional_details, Shapes::ShapeRef.new(shape: AwsAdditionalDetails, location_name: "awsAdditionalDetails"))
|
115
121
|
CreateTokenWithIAMResponse.struct_class = Types::CreateTokenWithIAMResponse
|
116
122
|
|
117
123
|
ExpiredTokenException.add_member(:error, Shapes::ShapeRef.new(shape: Error, location_name: "error"))
|
@@ -10,43 +10,39 @@
|
|
10
10
|
module Aws::SSOOIDC
|
11
11
|
class EndpointProvider
|
12
12
|
def resolve_endpoint(parameters)
|
13
|
-
|
14
|
-
|
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"
|
@@ -53,6 +53,25 @@ module Aws::SSOOIDC
|
|
53
53
|
include Aws::Structure
|
54
54
|
end
|
55
55
|
|
56
|
+
# This structure contains Amazon Web Services-specific parameter
|
57
|
+
# extensions for the token endpoint responses and includes the identity
|
58
|
+
# context.
|
59
|
+
#
|
60
|
+
# @!attribute [rw] identity_context
|
61
|
+
# STS context assertion that carries a user identifier to the Amazon
|
62
|
+
# Web Services service that it calls and can be used to obtain an
|
63
|
+
# identity-enhanced IAM role session. This value corresponds to the
|
64
|
+
# `sts:identity_context` claim in the ID token.
|
65
|
+
# @return [String]
|
66
|
+
#
|
67
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AwsAdditionalDetails AWS API Documentation
|
68
|
+
#
|
69
|
+
class AwsAdditionalDetails < Struct.new(
|
70
|
+
:identity_context)
|
71
|
+
SENSITIVE = []
|
72
|
+
include Aws::Structure
|
73
|
+
end
|
74
|
+
|
56
75
|
# @!attribute [rw] client_id
|
57
76
|
# The unique identifier string for the client or application. This
|
58
77
|
# value comes from the result of the RegisterClient API.
|
@@ -64,34 +83,32 @@ module Aws::SSOOIDC
|
|
64
83
|
# @return [String]
|
65
84
|
#
|
66
85
|
# @!attribute [rw] grant_type
|
67
|
-
# Supports the following OAuth grant types:
|
68
|
-
# Token. Specify
|
69
|
-
# grant type that you want:
|
86
|
+
# Supports the following OAuth grant types: Authorization Code, Device
|
87
|
+
# Code, and Refresh Token. Specify one of the following values,
|
88
|
+
# depending on the grant type that you want:
|
89
|
+
#
|
90
|
+
# * Authorization Code - `authorization_code`
|
70
91
|
#
|
71
92
|
# * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
|
72
93
|
#
|
73
94
|
# * Refresh Token - `refresh_token`
|
74
|
-
#
|
75
|
-
# For information about how to obtain the device code, see the
|
76
|
-
# StartDeviceAuthorization topic.
|
77
95
|
# @return [String]
|
78
96
|
#
|
79
97
|
# @!attribute [rw] device_code
|
80
98
|
# Used only when calling this API for the Device Code grant type. This
|
81
|
-
# short-
|
82
|
-
# comes from the result of the StartDeviceAuthorization API.
|
99
|
+
# short-lived code is used to identify this authorization request.
|
100
|
+
# This comes from the result of the StartDeviceAuthorization API.
|
83
101
|
# @return [String]
|
84
102
|
#
|
85
103
|
# @!attribute [rw] code
|
86
104
|
# Used only when calling this API for the Authorization Code grant
|
87
|
-
# type. The short-
|
88
|
-
# request.
|
89
|
-
# CreateToken API.
|
105
|
+
# type. The short-lived code is used to identify this authorization
|
106
|
+
# request.
|
90
107
|
# @return [String]
|
91
108
|
#
|
92
109
|
# @!attribute [rw] refresh_token
|
93
110
|
# Used only when calling this API for the Refresh Token grant type.
|
94
|
-
# This token is used to refresh short-
|
111
|
+
# This token is used to refresh short-lived tokens, such as the access
|
95
112
|
# token, that might expire.
|
96
113
|
#
|
97
114
|
# For more information about the features and limitations of the
|
@@ -217,7 +234,7 @@ module Aws::SSOOIDC
|
|
217
234
|
#
|
218
235
|
# @!attribute [rw] code
|
219
236
|
# Used only when calling this API for the Authorization Code grant
|
220
|
-
# type. This short-
|
237
|
+
# type. This short-lived code is used to identify this authorization
|
221
238
|
# request. The code is obtained through a redirect from IAM Identity
|
222
239
|
# Center to a redirect URI persisted in the Authorization Code
|
223
240
|
# GrantOptions for the application.
|
@@ -225,7 +242,7 @@ module Aws::SSOOIDC
|
|
225
242
|
#
|
226
243
|
# @!attribute [rw] refresh_token
|
227
244
|
# Used only when calling this API for the Refresh Token grant type.
|
228
|
-
# This token is used to refresh short-
|
245
|
+
# This token is used to refresh short-lived tokens, such as the access
|
229
246
|
# token, that might expire.
|
230
247
|
#
|
231
248
|
# For more information about the features and limitations of the
|
@@ -358,6 +375,13 @@ module Aws::SSOOIDC
|
|
358
375
|
# token that is issued is limited to the scopes that are granted.
|
359
376
|
# @return [Array<String>]
|
360
377
|
#
|
378
|
+
# @!attribute [rw] aws_additional_details
|
379
|
+
# A structure containing information from the `idToken`. Only the
|
380
|
+
# `identityContext` is in it, which is a value extracted from the
|
381
|
+
# `idToken`. This provides direct access to identity information
|
382
|
+
# without requiring JWT parsing.
|
383
|
+
# @return [Types::AwsAdditionalDetails]
|
384
|
+
#
|
361
385
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMResponse AWS API Documentation
|
362
386
|
#
|
363
387
|
class CreateTokenWithIAMResponse < Struct.new(
|
@@ -367,7 +391,8 @@ module Aws::SSOOIDC
|
|
367
391
|
:refresh_token,
|
368
392
|
:id_token,
|
369
393
|
:issued_token_type,
|
370
|
-
:scope
|
394
|
+
:scope,
|
395
|
+
:aws_additional_details)
|
371
396
|
SENSITIVE = [:access_token, :refresh_token, :id_token]
|
372
397
|
include Aws::Structure
|
373
398
|
end
|
@@ -606,7 +631,14 @@ module Aws::SSOOIDC
|
|
606
631
|
# @!attribute [rw] grant_types
|
607
632
|
# The list of OAuth 2.0 grant types that are defined by the client.
|
608
633
|
# This list is used to restrict the token granting flows available to
|
609
|
-
# the client.
|
634
|
+
# the client. Supports the following OAuth 2.0 grant types:
|
635
|
+
# Authorization Code, Device Code, and Refresh Token.
|
636
|
+
#
|
637
|
+
# * Authorization Code - `authorization_code`
|
638
|
+
#
|
639
|
+
# * Device Code - `urn:ietf:params:oauth:grant-type:device_code`
|
640
|
+
#
|
641
|
+
# * Refresh Token - `refresh_token`
|
610
642
|
# @return [Array<String>]
|
611
643
|
#
|
612
644
|
# @!attribute [rw] issuer_url
|