aws-sdk-core 3.211.0 → 3.225.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +161 -0
- data/VERSION +1 -1
- data/lib/aws-defaults/default_configuration.rb +1 -2
- 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/endpoint_pattern.rb +40 -32
- 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 +74 -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 +53 -31
- 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 +90 -51
- 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 +261 -83
- data/lib/aws-sdk-sts/client_api.rb +31 -8
- data/lib/aws-sdk-sts/endpoint_provider.rb +50 -55
- data/lib/aws-sdk-sts/errors.rb +16 -0
- data/lib/aws-sdk-sts/types.rb +170 -28
- data/lib/aws-sdk-sts.rb +1 -1
- data/lib/seahorse/client/async_base.rb +4 -5
- data/lib/seahorse/client/base.rb +0 -14
- data/lib/seahorse/client/h2/connection.rb +18 -28
- data/lib/seahorse/client/http/response.rb +1 -1
- 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
- data/sig/aws-sdk-core/async_client_stubs.rbs +21 -0
- data/sig/seahorse/client/async_base.rbs +18 -0
- metadata +40 -14
data/lib/aws-sdk-sts/client.rb
CHANGED
@@ -7,35 +7,35 @@
|
|
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/query
|
38
|
-
require 'aws-sdk-sts/plugins/sts_regional_endpoints
|
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/query'
|
38
|
+
require 'aws-sdk-sts/plugins/sts_regional_endpoints'
|
39
39
|
|
40
40
|
module Aws::STS
|
41
41
|
# An API client for STS. To construct a client, you need to configure a `:region` and `:credentials`.
|
@@ -202,8 +202,7 @@ module Aws::STS
|
|
202
202
|
# accepted modes and the configuration defaults that are included.
|
203
203
|
#
|
204
204
|
# @option options [Boolean] :disable_host_prefix_injection (false)
|
205
|
-
#
|
206
|
-
# to default service endpoint when available.
|
205
|
+
# When `true`, the SDK will not prepend the modeled host prefix to the endpoint.
|
207
206
|
#
|
208
207
|
# @option options [Boolean] :disable_request_compression (false)
|
209
208
|
# When set to 'true' the request body will not be compressed
|
@@ -259,11 +258,34 @@ module Aws::STS
|
|
259
258
|
# Used when loading credentials from the shared credentials file
|
260
259
|
# at HOME/.aws/credentials. When not specified, 'default' is used.
|
261
260
|
#
|
261
|
+
# @option options [String] :request_checksum_calculation ("when_supported")
|
262
|
+
# Determines when a checksum will be calculated for request payloads. Values are:
|
263
|
+
#
|
264
|
+
# * `when_supported` - (default) When set, a checksum will be
|
265
|
+
# calculated for all request payloads of operations modeled with the
|
266
|
+
# `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
|
267
|
+
# `requestAlgorithmMember` is modeled.
|
268
|
+
# * `when_required` - When set, a checksum will only be calculated for
|
269
|
+
# request payloads of operations modeled with the `httpChecksum` trait where
|
270
|
+
# `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
|
271
|
+
# is modeled and supplied.
|
272
|
+
#
|
262
273
|
# @option options [Integer] :request_min_compression_size_bytes (10240)
|
263
274
|
# The minimum size in bytes that triggers compression for request
|
264
275
|
# bodies. The value must be non-negative integer value between 0
|
265
276
|
# and 10485780 bytes inclusive.
|
266
277
|
#
|
278
|
+
# @option options [String] :response_checksum_validation ("when_supported")
|
279
|
+
# Determines when checksum validation will be performed on response payloads. Values are:
|
280
|
+
#
|
281
|
+
# * `when_supported` - (default) When set, checksum validation is performed on all
|
282
|
+
# response payloads of operations modeled with the `httpChecksum` trait where
|
283
|
+
# `responseAlgorithms` is modeled, except when no modeled checksum algorithms
|
284
|
+
# are supported.
|
285
|
+
# * `when_required` - When set, checksum validation is not performed on
|
286
|
+
# response payloads of operations unless the checksum algorithm is supported and
|
287
|
+
# the `requestValidationModeMember` member is set to `ENABLED`.
|
288
|
+
#
|
267
289
|
# @option options [Proc] :retry_backoff
|
268
290
|
# A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
|
269
291
|
# This option is only used in the `legacy` retry mode.
|
@@ -460,8 +482,8 @@ module Aws::STS
|
|
460
482
|
# token. Typically, you use `AssumeRole` within your account or for
|
461
483
|
# cross-account access. For a comparison of `AssumeRole` with other API
|
462
484
|
# operations that produce temporary credentials, see [Requesting
|
463
|
-
# Temporary Security Credentials][1] and [
|
464
|
-
#
|
485
|
+
# Temporary Security Credentials][1] and [Compare STS credentials][2] in
|
486
|
+
# the *IAM User Guide*.
|
465
487
|
#
|
466
488
|
# **Permissions**
|
467
489
|
#
|
@@ -470,9 +492,9 @@ module Aws::STS
|
|
470
492
|
# following exception: You cannot call the Amazon Web Services STS
|
471
493
|
# `GetFederationToken` or `GetSessionToken` API operations.
|
472
494
|
#
|
473
|
-
# (Optional) You can pass inline or managed
|
474
|
-
#
|
475
|
-
#
|
495
|
+
# (Optional) You can pass inline or managed session policies to this
|
496
|
+
# operation. You can pass a single JSON policy document to use as an
|
497
|
+
# inline session policy. You can also specify up to 10 managed policy
|
476
498
|
# Amazon Resource Names (ARNs) to use as managed session policies. The
|
477
499
|
# plaintext that you use for both inline and managed session policies
|
478
500
|
# can't exceed 2,048 characters. Passing policies to this operation
|
@@ -545,7 +567,7 @@ module Aws::STS
|
|
545
567
|
# denied. The condition in a trust policy that tests for MFA
|
546
568
|
# authentication might look like the following example.
|
547
569
|
#
|
548
|
-
# `"Condition":
|
570
|
+
# `"Condition": {"Bool": {"aws:MultiFactorAuthPresent": true}}`
|
549
571
|
#
|
550
572
|
# For more information, see [Configuring MFA-Protected API Access][8] in
|
551
573
|
# the *IAM User Guide* guide.
|
@@ -558,7 +580,7 @@ module Aws::STS
|
|
558
580
|
#
|
559
581
|
#
|
560
582
|
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
|
561
|
-
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
583
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html
|
562
584
|
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session
|
563
585
|
# [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html
|
564
586
|
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
|
@@ -581,11 +603,22 @@ module Aws::STS
|
|
581
603
|
# credentials will expose the role session name to the external account
|
582
604
|
# in their CloudTrail logs.
|
583
605
|
#
|
606
|
+
# For security purposes, administrators can view this field in
|
607
|
+
# [CloudTrail logs][1] to help identify who performed an action in
|
608
|
+
# Amazon Web Services. Your administrator might require that you specify
|
609
|
+
# your user name as the session name when you assume the role. For more
|
610
|
+
# information, see [ `sts:RoleSessionName` ][2].
|
611
|
+
#
|
584
612
|
# The regex used to validate this parameter is a string of characters
|
585
613
|
# consisting of upper- and lower-case alphanumeric characters with no
|
586
614
|
# spaces. You can also include underscores or any of the following
|
587
615
|
# characters: =,.@-
|
588
616
|
#
|
617
|
+
#
|
618
|
+
#
|
619
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html#cloudtrail-integration_signin-tempcreds
|
620
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_iam-condition-keys.html#ck_rolesessionname
|
621
|
+
#
|
589
622
|
# @option params [Array<Types::PolicyDescriptorType>] :policy_arns
|
590
623
|
# The Amazon Resource Names (ARNs) of the IAM managed policies that you
|
591
624
|
# want to use as managed session policies. The policies must exist in
|
@@ -651,6 +684,9 @@ module Aws::STS
|
|
651
684
|
#
|
652
685
|
# </note>
|
653
686
|
#
|
687
|
+
# For more information about role session permissions, see [Session
|
688
|
+
# policies][1].
|
689
|
+
#
|
654
690
|
#
|
655
691
|
#
|
656
692
|
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session
|
@@ -673,9 +709,8 @@ module Aws::STS
|
|
673
709
|
# depending on the maximum session duration setting for your role.
|
674
710
|
# However, if you assume a role using role chaining and provide a
|
675
711
|
# `DurationSeconds` parameter value greater than one hour, the operation
|
676
|
-
# fails. To learn how to view the maximum value for your role, see
|
677
|
-
# the
|
678
|
-
# Guide*.
|
712
|
+
# fails. To learn how to view the maximum value for your role, see
|
713
|
+
# [Update the maximum session duration for a role][1].
|
679
714
|
#
|
680
715
|
# By default, the value is set to `3600` seconds.
|
681
716
|
#
|
@@ -691,7 +726,7 @@ module Aws::STS
|
|
691
726
|
#
|
692
727
|
#
|
693
728
|
#
|
694
|
-
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
729
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-settings.html#id_roles_update-session-duration
|
695
730
|
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
|
696
731
|
#
|
697
732
|
# @option params [Array<Types::Tag>] :tags
|
@@ -744,9 +779,8 @@ module Aws::STS
|
|
744
779
|
# passes to subsequent sessions in a role chain. For more information,
|
745
780
|
# see [Chaining Roles with Session Tags][1] in the *IAM User Guide*.
|
746
781
|
#
|
747
|
-
# This parameter is optional.
|
748
|
-
#
|
749
|
-
# affected.
|
782
|
+
# This parameter is optional. The transitive status of a session tag
|
783
|
+
# does not impact its packed binary size.
|
750
784
|
#
|
751
785
|
# If you choose not to specify a transitive tag key, then no tags are
|
752
786
|
# passed from this session to any subsequent sessions.
|
@@ -804,26 +838,29 @@ module Aws::STS
|
|
804
838
|
#
|
805
839
|
# @option params [String] :source_identity
|
806
840
|
# The source identity specified by the principal that is calling the
|
807
|
-
# `AssumeRole` operation.
|
841
|
+
# `AssumeRole` operation. The source identity value persists across
|
842
|
+
# [chained role][1] sessions.
|
808
843
|
#
|
809
844
|
# You can require users to specify a source identity when they assume a
|
810
|
-
# role. You do this by using the `sts:SourceIdentity` condition
|
811
|
-
# role trust policy. You can use source identity information in
|
845
|
+
# role. You do this by using the [ `sts:SourceIdentity` ][2] condition
|
846
|
+
# key in a role trust policy. You can use source identity information in
|
812
847
|
# CloudTrail logs to determine who took actions with a role. You can use
|
813
848
|
# the `aws:SourceIdentity` condition key to further control access to
|
814
849
|
# Amazon Web Services resources based on the value of source identity.
|
815
850
|
# For more information about using source identity, see [Monitor and
|
816
|
-
# control actions taken with assumed roles][
|
851
|
+
# control actions taken with assumed roles][3] in the *IAM User Guide*.
|
817
852
|
#
|
818
853
|
# The regex used to validate this parameter is a string of characters
|
819
854
|
# consisting of upper- and lower-case alphanumeric characters with no
|
820
855
|
# spaces. You can also include underscores or any of the following
|
821
|
-
# characters:
|
856
|
+
# characters: +=,.@-. You cannot use a value that begins with the text
|
822
857
|
# `aws:`. This prefix is reserved for Amazon Web Services internal use.
|
823
858
|
#
|
824
859
|
#
|
825
860
|
#
|
826
|
-
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
861
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-role-chaining
|
862
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceidentity
|
863
|
+
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html
|
827
864
|
#
|
828
865
|
# @option params [Array<Types::ProvidedContext>] :provided_contexts
|
829
866
|
# A list of previously acquired trusted context assertions in the format
|
@@ -834,7 +871,7 @@ module Aws::STS
|
|
834
871
|
# a single trusted context assertion and the ARN of the context provider
|
835
872
|
# from which the trusted context assertion was generated.
|
836
873
|
#
|
837
|
-
# `[
|
874
|
+
# `[{"ProviderArn":"arn:aws:iam::aws:contextProvider/IdentityCenter","ContextAssertion":"trusted-context-assertion"}]`
|
838
875
|
#
|
839
876
|
# @return [Types::AssumeRoleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
840
877
|
#
|
@@ -944,8 +981,8 @@ module Aws::STS
|
|
944
981
|
# user-specific credentials or configuration. For a comparison of
|
945
982
|
# `AssumeRoleWithSAML` with the other API operations that produce
|
946
983
|
# temporary credentials, see [Requesting Temporary Security
|
947
|
-
# Credentials][1] and [
|
948
|
-
#
|
984
|
+
# Credentials][1] and [Compare STS credentials][2] in the *IAM User
|
985
|
+
# Guide*.
|
949
986
|
#
|
950
987
|
# The temporary security credentials returned by this operation consist
|
951
988
|
# of an access key ID, a secret access key, and a security token.
|
@@ -1075,7 +1112,7 @@ module Aws::STS
|
|
1075
1112
|
#
|
1076
1113
|
#
|
1077
1114
|
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
|
1078
|
-
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
1115
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html
|
1079
1116
|
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
|
1080
1117
|
# [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
|
1081
1118
|
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-role-chaining
|
@@ -1163,6 +1200,9 @@ module Aws::STS
|
|
1163
1200
|
# the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)
|
1164
1201
|
# characters.
|
1165
1202
|
#
|
1203
|
+
# For more information about role session permissions, see [Session
|
1204
|
+
# policies][1].
|
1205
|
+
#
|
1166
1206
|
# <note markdown="1"> An Amazon Web Services conversion compresses the passed inline session
|
1167
1207
|
# policy, managed policy ARNs, and session tags into a packed binary
|
1168
1208
|
# format that has a separate limit. Your request can fail for this limit
|
@@ -1317,8 +1357,8 @@ module Aws::STS
|
|
1317
1357
|
# a token from the web identity provider. For a comparison of
|
1318
1358
|
# `AssumeRoleWithWebIdentity` with the other API operations that produce
|
1319
1359
|
# temporary credentials, see [Requesting Temporary Security
|
1320
|
-
# Credentials][4] and [
|
1321
|
-
#
|
1360
|
+
# Credentials][4] and [Compare STS credentials][5] in the *IAM User
|
1361
|
+
# Guide*.
|
1322
1362
|
#
|
1323
1363
|
# The temporary security credentials returned by this API consist of an
|
1324
1364
|
# access key ID, a secret access key, and a security token. Applications
|
@@ -1333,9 +1373,9 @@ module Aws::STS
|
|
1333
1373
|
# your session. You can provide a value from 900 seconds (15 minutes) up
|
1334
1374
|
# to the maximum session duration setting for the role. This setting can
|
1335
1375
|
# have a value from 1 hour to 12 hours. To learn how to view the maximum
|
1336
|
-
# value for your role, see [
|
1337
|
-
#
|
1338
|
-
#
|
1376
|
+
# value for your role, see [Update the maximum session duration for a
|
1377
|
+
# role ][6] in the *IAM User Guide*. The maximum session duration limit
|
1378
|
+
# applies when you use the `AssumeRole*` API operations or the
|
1339
1379
|
# `assume-role*` CLI commands. However the limit does not apply when you
|
1340
1380
|
# use those operations to create a console URL. For more information,
|
1341
1381
|
# see [Using IAM Roles][7] in the *IAM User Guide*.
|
@@ -1413,35 +1453,26 @@ module Aws::STS
|
|
1413
1453
|
# instead use a GUID or a pairwise identifier, as [suggested in the OIDC
|
1414
1454
|
# specification][14].
|
1415
1455
|
#
|
1416
|
-
# For more information about how to use
|
1456
|
+
# For more information about how to use OIDC federation and the
|
1417
1457
|
# `AssumeRoleWithWebIdentity` API, see the following resources:
|
1418
1458
|
#
|
1419
1459
|
# * [Using Web Identity Federation API Operations for Mobile Apps][15]
|
1420
1460
|
# and [Federation Through a Web-based Identity Provider][16].
|
1421
1461
|
#
|
1422
|
-
# * [ Web Identity Federation Playground][17]. Walk through the process
|
1423
|
-
# of authenticating through Login with Amazon, Facebook, or Google,
|
1424
|
-
# getting temporary security credentials, and then using those
|
1425
|
-
# credentials to make a request to Amazon Web Services.
|
1426
|
-
#
|
1427
1462
|
# * [Amazon Web Services SDK for iOS Developer Guide][2] and [Amazon Web
|
1428
1463
|
# Services SDK for Android Developer Guide][3]. These toolkits contain
|
1429
1464
|
# sample apps that show how to invoke the identity providers. The
|
1430
1465
|
# toolkits then show how to use the information from these providers
|
1431
1466
|
# to get and use temporary security credentials.
|
1432
1467
|
#
|
1433
|
-
# * [Web Identity Federation with Mobile Applications][18]. This article
|
1434
|
-
# discusses web identity federation and shows an example of how to use
|
1435
|
-
# web identity federation to get access to content in Amazon S3.
|
1436
|
-
#
|
1437
1468
|
#
|
1438
1469
|
#
|
1439
1470
|
# [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html
|
1440
1471
|
# [2]: http://aws.amazon.com/sdkforios/
|
1441
1472
|
# [3]: http://aws.amazon.com/sdkforandroid/
|
1442
1473
|
# [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
|
1443
|
-
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
1444
|
-
# [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
1474
|
+
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html
|
1475
|
+
# [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-settings.html#id_roles_update-session-duration
|
1445
1476
|
# [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
|
1446
1477
|
# [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session
|
1447
1478
|
# [9]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
|
@@ -1452,13 +1483,29 @@ module Aws::STS
|
|
1452
1483
|
# [14]: http://openid.net/specs/openid-connect-core-1_0.html#SubjectIDTypes
|
1453
1484
|
# [15]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_manual.html
|
1454
1485
|
# [16]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
|
1455
|
-
# [17]: https://aws.amazon.com/blogs/aws/the-aws-web-identity-federation-playground/
|
1456
|
-
# [18]: http://aws.amazon.com/articles/web-identity-federation-with-mobile-applications
|
1457
1486
|
#
|
1458
1487
|
# @option params [required, String] :role_arn
|
1459
1488
|
# The Amazon Resource Name (ARN) of the role that the caller is
|
1460
1489
|
# assuming.
|
1461
1490
|
#
|
1491
|
+
# <note markdown="1"> Additional considerations apply to Amazon Cognito identity pools that
|
1492
|
+
# assume [cross-account IAM roles][1]. The trust policies of these roles
|
1493
|
+
# must accept the `cognito-identity.amazonaws.com` service principal and
|
1494
|
+
# must contain the `cognito-identity.amazonaws.com:aud` condition key to
|
1495
|
+
# restrict role assumption to users from your intended identity pools. A
|
1496
|
+
# policy that trusts Amazon Cognito identity pools without this
|
1497
|
+
# condition creates a risk that a user from an unintended identity pool
|
1498
|
+
# can assume the role. For more information, see [ Trust policies for
|
1499
|
+
# IAM roles in Basic (Classic) authentication ][2] in the *Amazon
|
1500
|
+
# Cognito Developer Guide*.
|
1501
|
+
#
|
1502
|
+
# </note>
|
1503
|
+
#
|
1504
|
+
#
|
1505
|
+
#
|
1506
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html
|
1507
|
+
# [2]: https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#trust-policies
|
1508
|
+
#
|
1462
1509
|
# @option params [required, String] :role_session_name
|
1463
1510
|
# An identifier for the assumed role session. Typically, you pass the
|
1464
1511
|
# name or identifier that is associated with the user who is using your
|
@@ -1467,18 +1514,31 @@ module Aws::STS
|
|
1467
1514
|
# is included as part of the ARN and assumed role ID in the
|
1468
1515
|
# `AssumedRoleUser` response element.
|
1469
1516
|
#
|
1517
|
+
# For security purposes, administrators can view this field in
|
1518
|
+
# [CloudTrail logs][1] to help identify who performed an action in
|
1519
|
+
# Amazon Web Services. Your administrator might require that you specify
|
1520
|
+
# your user name as the session name when you assume the role. For more
|
1521
|
+
# information, see [ `sts:RoleSessionName` ][2].
|
1522
|
+
#
|
1470
1523
|
# The regex used to validate this parameter is a string of characters
|
1471
1524
|
# consisting of upper- and lower-case alphanumeric characters with no
|
1472
1525
|
# spaces. You can also include underscores or any of the following
|
1473
1526
|
# characters: =,.@-
|
1474
1527
|
#
|
1528
|
+
#
|
1529
|
+
#
|
1530
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html#cloudtrail-integration_signin-tempcreds
|
1531
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_iam-condition-keys.html#ck_rolesessionname
|
1532
|
+
#
|
1475
1533
|
# @option params [required, String] :web_identity_token
|
1476
1534
|
# The OAuth 2.0 access token or OpenID Connect ID token that is provided
|
1477
1535
|
# by the identity provider. Your application must get this token by
|
1478
1536
|
# authenticating the user who is using your application with a web
|
1479
1537
|
# identity provider before the application makes an
|
1480
|
-
# `AssumeRoleWithWebIdentity` call.
|
1481
|
-
#
|
1538
|
+
# `AssumeRoleWithWebIdentity` call. Timestamps in the token must be
|
1539
|
+
# formatted as either an integer or a long integer. Tokens must be
|
1540
|
+
# signed using either RSA keys (RS256, RS384, or RS512) or ECDSA keys
|
1541
|
+
# (ES256, ES384, or ES512).
|
1482
1542
|
#
|
1483
1543
|
# @option params [String] :provider_id
|
1484
1544
|
# The fully qualified host component of the domain name of the OAuth 2.0
|
@@ -1547,6 +1607,9 @@ module Aws::STS
|
|
1547
1607
|
# the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)
|
1548
1608
|
# characters.
|
1549
1609
|
#
|
1610
|
+
# For more information about role session permissions, see [Session
|
1611
|
+
# policies][1].
|
1612
|
+
#
|
1550
1613
|
# <note markdown="1"> An Amazon Web Services conversion compresses the passed inline session
|
1551
1614
|
# policy, managed policy ARNs, and session tags into a packed binary
|
1552
1615
|
# format that has a separate limit. Your request can fail for this limit
|
@@ -1667,6 +1730,121 @@ module Aws::STS
|
|
1667
1730
|
req.send_request(options)
|
1668
1731
|
end
|
1669
1732
|
|
1733
|
+
# Returns a set of short term credentials you can use to perform
|
1734
|
+
# privileged tasks on a member account in your organization.
|
1735
|
+
#
|
1736
|
+
# Before you can launch a privileged session, you must have centralized
|
1737
|
+
# root access in your organization. For steps to enable this feature,
|
1738
|
+
# see [Centralize root access for member accounts][1] in the *IAM User
|
1739
|
+
# Guide*.
|
1740
|
+
#
|
1741
|
+
# <note markdown="1"> The STS global endpoint is not supported for AssumeRoot. You must send
|
1742
|
+
# this request to a Regional STS endpoint. For more information, see
|
1743
|
+
# [Endpoints][2].
|
1744
|
+
#
|
1745
|
+
# </note>
|
1746
|
+
#
|
1747
|
+
# You can track AssumeRoot in CloudTrail logs to determine what actions
|
1748
|
+
# were performed in a session. For more information, see [Track
|
1749
|
+
# privileged tasks in CloudTrail][3] in the *IAM User Guide*.
|
1750
|
+
#
|
1751
|
+
#
|
1752
|
+
#
|
1753
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-enable-root-access.html
|
1754
|
+
# [2]: https://docs.aws.amazon.com/STS/latest/APIReference/welcome.html#sts-endpoints
|
1755
|
+
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-track-privileged-tasks.html
|
1756
|
+
#
|
1757
|
+
# @option params [required, String] :target_principal
|
1758
|
+
# The member account principal ARN or account ID.
|
1759
|
+
#
|
1760
|
+
# @option params [required, Types::PolicyDescriptorType] :task_policy_arn
|
1761
|
+
# The identity based policy that scopes the session to the privileged
|
1762
|
+
# tasks that can be performed. You can use one of following Amazon Web
|
1763
|
+
# Services managed policies to scope root session actions.
|
1764
|
+
#
|
1765
|
+
# * [IAMAuditRootUserCredentials][1]
|
1766
|
+
#
|
1767
|
+
# * [IAMCreateRootUserPassword][2]
|
1768
|
+
#
|
1769
|
+
# * [IAMDeleteRootUserCredentials][3]
|
1770
|
+
#
|
1771
|
+
# * [S3UnlockBucketPolicy][4]
|
1772
|
+
#
|
1773
|
+
# * [SQSUnlockQueuePolicy][5]
|
1774
|
+
#
|
1775
|
+
#
|
1776
|
+
#
|
1777
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/security-iam-awsmanpol.html#security-iam-awsmanpol-IAMAuditRootUserCredentials
|
1778
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/security-iam-awsmanpol.html#security-iam-awsmanpol-IAMCreateRootUserPassword
|
1779
|
+
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/security-iam-awsmanpol.html#security-iam-awsmanpol-IAMDeleteRootUserCredentials
|
1780
|
+
# [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/security-iam-awsmanpol.html#security-iam-awsmanpol-S3UnlockBucketPolicy
|
1781
|
+
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/security-iam-awsmanpol.html#security-iam-awsmanpol-SQSUnlockQueuePolicy
|
1782
|
+
#
|
1783
|
+
# @option params [Integer] :duration_seconds
|
1784
|
+
# The duration, in seconds, of the privileged session. The value can
|
1785
|
+
# range from 0 seconds up to the maximum session duration of 900 seconds
|
1786
|
+
# (15 minutes). If you specify a value higher than this setting, the
|
1787
|
+
# operation fails.
|
1788
|
+
#
|
1789
|
+
# By default, the value is set to `900` seconds.
|
1790
|
+
#
|
1791
|
+
# @return [Types::AssumeRootResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1792
|
+
#
|
1793
|
+
# * {Types::AssumeRootResponse#credentials #credentials} => Types::Credentials
|
1794
|
+
# * {Types::AssumeRootResponse#source_identity #source_identity} => String
|
1795
|
+
#
|
1796
|
+
#
|
1797
|
+
# @example Example: To launch a privileged session
|
1798
|
+
#
|
1799
|
+
# # The following command retrieves a set of short-term credentials you can use to unlock an S3 bucket for a member account
|
1800
|
+
# # by removing the bucket policy.
|
1801
|
+
#
|
1802
|
+
# resp = client.assume_root({
|
1803
|
+
# duration_seconds: 900,
|
1804
|
+
# target_principal: "111122223333",
|
1805
|
+
# task_policy_arn: {
|
1806
|
+
# arn: "arn:aws:iam::aws:policy/root-task/S3UnlockBucketPolicy",
|
1807
|
+
# },
|
1808
|
+
# })
|
1809
|
+
#
|
1810
|
+
# resp.to_h outputs the following:
|
1811
|
+
# {
|
1812
|
+
# credentials: {
|
1813
|
+
# access_key_id: "ASIAJEXAMPLEXEG2JICEA",
|
1814
|
+
# expiration: Time.parse("2024-11-15T00:05:07Z"),
|
1815
|
+
# secret_access_key: "9drTJvcXLB89EXAMPLELB8923FB892xMFI",
|
1816
|
+
# session_token: "AQoXdzELDDY//////////wEaoAK1wvxJY12r2IrDFT2IvAzTCn3zHoZ7YNtpiQLF0MqZye/qwjzP2iEXAMPLEbw/m3hsj8VBTkPORGvr9jM5sgP+w9IZWZnU+LWhmg+a5fDi2oTGUYcdg9uexQ4mtCHIHfi4citgqZTgco40Yqr4lIlo4V2b2Dyauk0eYFNebHtYlFVgAUj+7Indz3LU0aTWk1WKIjHmmMCIoTkyYp/k7kUG7moeEYKSitwQIi6Gjn+nyzM+PtoA3685ixzv0R7i5rjQi0YE0lf1oeie3bDiNHncmzosRM6SFiPzSvp6h/32xQuZsjcypmwsPSDtTPYcs0+YN/8BRi2/IcrxSpnWEXAMPLEXSDFTAQAM6Dl9zR0tXoybnlrZIwMLlMi1Kcgo5OytwU=",
|
1817
|
+
# },
|
1818
|
+
# source_identity: "Alice",
|
1819
|
+
# }
|
1820
|
+
#
|
1821
|
+
# @example Request syntax with placeholder values
|
1822
|
+
#
|
1823
|
+
# resp = client.assume_root({
|
1824
|
+
# target_principal: "TargetPrincipalType", # required
|
1825
|
+
# task_policy_arn: { # required
|
1826
|
+
# arn: "arnType",
|
1827
|
+
# },
|
1828
|
+
# duration_seconds: 1,
|
1829
|
+
# })
|
1830
|
+
#
|
1831
|
+
# @example Response structure
|
1832
|
+
#
|
1833
|
+
# resp.credentials.access_key_id #=> String
|
1834
|
+
# resp.credentials.secret_access_key #=> String
|
1835
|
+
# resp.credentials.session_token #=> String
|
1836
|
+
# resp.credentials.expiration #=> Time
|
1837
|
+
# resp.source_identity #=> String
|
1838
|
+
#
|
1839
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/AssumeRoot AWS API Documentation
|
1840
|
+
#
|
1841
|
+
# @overload assume_root(params = {})
|
1842
|
+
# @param [Hash] params ({})
|
1843
|
+
def assume_root(params = {}, options = {})
|
1844
|
+
req = build_request(:assume_root, params)
|
1845
|
+
req.send_request(options)
|
1846
|
+
end
|
1847
|
+
|
1670
1848
|
# Decodes additional information about the authorization status of a
|
1671
1849
|
# request from an encoded message returned in response to an Amazon Web
|
1672
1850
|
# Services request.
|
@@ -1905,8 +2083,8 @@ module Aws::STS
|
|
1905
2083
|
# usually in a server-based application. For a comparison of
|
1906
2084
|
# `GetFederationToken` with the other API operations that produce
|
1907
2085
|
# temporary credentials, see [Requesting Temporary Security
|
1908
|
-
# Credentials][1] and [
|
1909
|
-
#
|
2086
|
+
# Credentials][1] and [Compare STS credentials][2] in the *IAM User
|
2087
|
+
# Guide*.
|
1910
2088
|
#
|
1911
2089
|
# Although it is possible to call `GetFederationToken` using the
|
1912
2090
|
# security credentials of an Amazon Web Services account root user
|
@@ -2003,7 +2181,7 @@ module Aws::STS
|
|
2003
2181
|
#
|
2004
2182
|
#
|
2005
2183
|
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
|
2006
|
-
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
2184
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html
|
2007
2185
|
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#lock-away-credentials
|
2008
2186
|
# [4]: http://aws.amazon.com/cognito/
|
2009
2187
|
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
|
@@ -2255,8 +2433,8 @@ module Aws::STS
|
|
2255
2433
|
# An incorrect MFA code causes the API to return an access denied error.
|
2256
2434
|
# For a comparison of `GetSessionToken` with the other API operations
|
2257
2435
|
# that produce temporary credentials, see [Requesting Temporary Security
|
2258
|
-
# Credentials][1] and [
|
2259
|
-
#
|
2436
|
+
# Credentials][1] and [Compare STS credentials][2] in the *IAM User
|
2437
|
+
# Guide*.
|
2260
2438
|
#
|
2261
2439
|
# <note markdown="1"> No permissions are required for users to perform this operation. The
|
2262
2440
|
# purpose of the `sts:GetSessionToken` operation is to authenticate the
|
@@ -2311,7 +2489,7 @@ module Aws::STS
|
|
2311
2489
|
#
|
2312
2490
|
#
|
2313
2491
|
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
|
2314
|
-
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
2492
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html
|
2315
2493
|
# [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getsessiontoken.html
|
2316
2494
|
# [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#lock-away-credentials
|
2317
2495
|
# [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getsessiontoken
|
@@ -2416,7 +2594,7 @@ module Aws::STS
|
|
2416
2594
|
tracer: tracer
|
2417
2595
|
)
|
2418
2596
|
context[:gem_name] = 'aws-sdk-core'
|
2419
|
-
context[:gem_version] = '3.
|
2597
|
+
context[:gem_version] = '3.225.0'
|
2420
2598
|
Seahorse::Client::Request.new(handlers, context)
|
2421
2599
|
end
|
2422
2600
|
|