aws-sdk-core 3.121.5 → 3.123.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 +28 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-core/plugins/regional_endpoint.rb +47 -1
- data/lib/aws-sdk-core/rest/request/headers.rb +6 -1
- data/lib/aws-sdk-core/rest/response/headers.rb +3 -1
- data/lib/aws-sdk-core/shared_config.rb +2 -0
- data/lib/aws-sdk-core/sso_credentials.rb +1 -1
- data/lib/aws-sdk-core.rb +3 -0
- data/lib/aws-sdk-sso/client.rb +10 -1
- data/lib/aws-sdk-sso.rb +1 -1
- data/lib/aws-sdk-sts/client.rb +80 -110
- data/lib/aws-sdk-sts/presigner.rb +7 -1
- data/lib/aws-sdk-sts/types.rb +33 -23
- data/lib/aws-sdk-sts.rb +1 -1
- data/lib/seahorse/client/configuration.rb +4 -0
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 361f40271ca2518c380ab89eaaab1922d017b3c8a6d35b0492d92e234730b9d4
|
4
|
+
data.tar.gz: 1cc223ef8460881b2d94da8e1f10b4226fbab5419e91ac6c712ab701b0e62a4b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2696936a66a24fc8d5094d5787b0039e974d7a23ba7218d571bda19f090bc836344987121c8ab0d2fca91c7b9b84398a2715674eac9dbb1d6b8fc286ae9e494a
|
7
|
+
data.tar.gz: da67f89367288d43599d1f5b84bfe6a28c3d50da43d7afad5b6f8490744dacda575bd247a2f1642e2be6d6d32bda977e178ab6bf9a5d5dcb9a6ed25c348c53b9
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,34 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
3.123.0 (2021-11-23)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Updated Aws::STS::Client with the latest API changes.
|
8
|
+
|
9
|
+
3.122.1 (2021-11-09)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Issue - Correctly serialize/deserialize header lists.
|
13
|
+
|
14
|
+
3.122.0 (2021-11-04)
|
15
|
+
------------------
|
16
|
+
|
17
|
+
* Feature - Updated Aws::STS::Client with the latest API changes.
|
18
|
+
|
19
|
+
* Feature - Updated Aws::SSO::Client with the latest API changes.
|
20
|
+
|
21
|
+
* Issue - Fix parsing of ISO8601 timestamps with millisecond precision in headers.
|
22
|
+
|
23
|
+
* Feature - Support modeled dualstack endpoints. It can be configured with shared configuration (`use_dualstack_endpoint`), an ENV variable (`AWS_USE_DUALSTACK_ENDPOINT`), and a constructor option (`:use_dualstack_endpoint`). Requests made to services without a dualstack endpoint will fail.
|
24
|
+
|
25
|
+
* Feature - Support modeled fips endpoints. It can be configured with shared configuration (`use_fips_endpoint`), an ENV variable (`AWS_USE_FIPS_ENDPOINT`), and a constructor option (`:use_fips_endpoint`). Requests made to services without a fips endpoint will fail.
|
26
|
+
|
27
|
+
3.121.6 (2021-11-02)
|
28
|
+
------------------
|
29
|
+
|
30
|
+
* Issue - Improve `SSOCredentials` error handling when profile file does not exist (#2605)
|
31
|
+
|
4
32
|
3.121.5 (2021-10-29)
|
5
33
|
------------------
|
6
34
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.123.0
|
@@ -24,6 +24,25 @@ a default `:region` is searched for in the following locations:
|
|
24
24
|
resolve_region(cfg)
|
25
25
|
end
|
26
26
|
|
27
|
+
option(:use_dualstack_endpoint,
|
28
|
+
doc_type: 'Boolean',
|
29
|
+
docstring: <<-DOCS) do |cfg|
|
30
|
+
When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
|
31
|
+
will be used if available.
|
32
|
+
DOCS
|
33
|
+
resolve_use_dualstack_endpoint(cfg)
|
34
|
+
end
|
35
|
+
|
36
|
+
option(:use_fips_endpoint,
|
37
|
+
doc_type: 'Boolean',
|
38
|
+
docstring: <<-DOCS) do |cfg|
|
39
|
+
When set to `true`, fips compatible endpoints will be used if available.
|
40
|
+
When a `fips` region is used, the region is normalized and this config
|
41
|
+
is set to `true`.
|
42
|
+
DOCS
|
43
|
+
resolve_use_fips_endpoint(cfg)
|
44
|
+
end
|
45
|
+
|
27
46
|
option(:regional_endpoint, false)
|
28
47
|
|
29
48
|
option(:endpoint, doc_type: String, docstring: <<-DOCS) do |cfg|
|
@@ -42,10 +61,23 @@ to test or custom endpoints. This should be a valid HTTP(S) URI.
|
|
42
61
|
raise Errors::InvalidRegionError
|
43
62
|
end
|
44
63
|
|
64
|
+
region = cfg.region
|
65
|
+
new_region = region.gsub('fips-', '').gsub('-fips', '')
|
66
|
+
if region != new_region
|
67
|
+
warn("Legacy region #{region} was transformed to #{new_region}."\
|
68
|
+
'`use_fips_endpoint` config was set to true.')
|
69
|
+
cfg.override_config(:use_fips_endpoint, true)
|
70
|
+
cfg.override_config(:region, new_region)
|
71
|
+
end
|
72
|
+
|
45
73
|
Aws::Partitions::EndpointProvider.resolve(
|
46
74
|
cfg.region,
|
47
75
|
endpoint_prefix,
|
48
|
-
sts_regional
|
76
|
+
sts_regional,
|
77
|
+
{
|
78
|
+
dualstack: cfg.use_dualstack_endpoint,
|
79
|
+
fips: cfg.use_fips_endpoint
|
80
|
+
}
|
49
81
|
)
|
50
82
|
end
|
51
83
|
end
|
@@ -66,6 +98,20 @@ to test or custom endpoints. This should be a valid HTTP(S) URI.
|
|
66
98
|
cfg_region = Aws.shared_config.region(profile: cfg.profile)
|
67
99
|
env_region || cfg_region
|
68
100
|
end
|
101
|
+
|
102
|
+
def resolve_use_dualstack_endpoint(cfg)
|
103
|
+
value = ENV['AWS_USE_DUALSTACK_ENDPOINT']
|
104
|
+
value ||= Aws.shared_config.use_dualstack_endpoint(
|
105
|
+
profile: cfg.profile
|
106
|
+
)
|
107
|
+
Aws::Util.str_2_bool(value) || false
|
108
|
+
end
|
109
|
+
|
110
|
+
def resolve_use_fips_endpoint(cfg)
|
111
|
+
value = ENV['AWS_USE_FIPS_ENDPOINT']
|
112
|
+
value ||= Aws.shared_config.use_fips_endpoint(profile: cfg.profile)
|
113
|
+
Aws::Util.str_2_bool(value) || false
|
114
|
+
end
|
69
115
|
end
|
70
116
|
end
|
71
117
|
end
|
@@ -35,6 +35,7 @@ module Aws
|
|
35
35
|
headers[ref.location_name] =
|
36
36
|
case ref.shape
|
37
37
|
when TimestampShape then timestamp(ref, value)
|
38
|
+
when ListShape then list(ref, value)
|
38
39
|
else value.to_s
|
39
40
|
end
|
40
41
|
end
|
@@ -49,6 +50,10 @@ module Aws
|
|
49
50
|
end
|
50
51
|
end
|
51
52
|
|
53
|
+
def list(_ref, value)
|
54
|
+
value.compact.join(",")
|
55
|
+
end
|
56
|
+
|
52
57
|
def apply_header_map(headers, ref, values)
|
53
58
|
prefix = ref.location_name || ''
|
54
59
|
values.each_pair do |name, value|
|
@@ -57,7 +62,7 @@ module Aws
|
|
57
62
|
end
|
58
63
|
|
59
64
|
# With complex headers value in json syntax,
|
60
|
-
# base64 encodes value to
|
65
|
+
# base64 encodes value to avoid weird characters
|
61
66
|
# causing potential issues in headers
|
62
67
|
def apply_json_trait(value)
|
63
68
|
Base64.strict_encode64(value)
|
@@ -40,8 +40,10 @@ module Aws
|
|
40
40
|
when IntegerShape then value.to_i
|
41
41
|
when FloatShape then value.to_f
|
42
42
|
when BooleanShape then value == 'true'
|
43
|
+
when ListShape then
|
44
|
+
value.split(",").map { |v| cast_value(ref.shape.member, v) }
|
43
45
|
when TimestampShape
|
44
|
-
if value =~
|
46
|
+
if value =~ /^\d+(\.\d*)/
|
45
47
|
Time.at(value.to_f)
|
46
48
|
elsif value =~ /^\d+$/
|
47
49
|
Time.at(value.to_i)
|
@@ -100,7 +100,7 @@ module Aws
|
|
100
100
|
raise ArgumentError, 'Cached SSO Token is expired.'
|
101
101
|
end
|
102
102
|
cached_token
|
103
|
-
rescue Aws::Json::ParseError, ArgumentError
|
103
|
+
rescue Errno::ENOENT, Aws::Json::ParseError, ArgumentError
|
104
104
|
raise Errors::InvalidSSOCredentials, SSO_LOGIN_GUIDANCE
|
105
105
|
end
|
106
106
|
|
data/lib/aws-sdk-core.rb
CHANGED
@@ -88,6 +88,9 @@ require_relative 'aws-sdk-core/arn'
|
|
88
88
|
require_relative 'aws-sdk-core/arn_parser'
|
89
89
|
require_relative 'aws-sdk-core/ec2_metadata'
|
90
90
|
|
91
|
+
# plugins
|
92
|
+
# loaded through building STS or SSO ..
|
93
|
+
|
91
94
|
# aws-sdk-sts is included to support Aws::AssumeRoleCredentials
|
92
95
|
require_relative 'aws-sdk-sts'
|
93
96
|
|
data/lib/aws-sdk-sso/client.rb
CHANGED
@@ -275,6 +275,15 @@ module Aws::SSO
|
|
275
275
|
# ** Please note ** When response stubbing is enabled, no HTTP
|
276
276
|
# requests are made, and retries are disabled.
|
277
277
|
#
|
278
|
+
# @option options [Boolean] :use_dualstack_endpoint
|
279
|
+
# When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
|
280
|
+
# will be used if available.
|
281
|
+
#
|
282
|
+
# @option options [Boolean] :use_fips_endpoint
|
283
|
+
# When set to `true`, fips compatible endpoints will be used if available.
|
284
|
+
# When a `fips` region is used, the region is normalized and this config
|
285
|
+
# is set to `true`.
|
286
|
+
#
|
278
287
|
# @option options [Boolean] :validate_params (true)
|
279
288
|
# When `true`, request parameters are validated before
|
280
289
|
# sending the request.
|
@@ -521,7 +530,7 @@ module Aws::SSO
|
|
521
530
|
params: params,
|
522
531
|
config: config)
|
523
532
|
context[:gem_name] = 'aws-sdk-core'
|
524
|
-
context[:gem_version] = '3.
|
533
|
+
context[:gem_version] = '3.123.0'
|
525
534
|
Seahorse::Client::Request.new(handlers, context)
|
526
535
|
end
|
527
536
|
|
data/lib/aws-sdk-sso.rb
CHANGED
data/lib/aws-sdk-sts/client.rb
CHANGED
@@ -282,6 +282,15 @@ module Aws::STS
|
|
282
282
|
# ** Please note ** When response stubbing is enabled, no HTTP
|
283
283
|
# requests are made, and retries are disabled.
|
284
284
|
#
|
285
|
+
# @option options [Boolean] :use_dualstack_endpoint
|
286
|
+
# When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
|
287
|
+
# will be used if available.
|
288
|
+
#
|
289
|
+
# @option options [Boolean] :use_fips_endpoint
|
290
|
+
# When set to `true`, fips compatible endpoints will be used if available.
|
291
|
+
# When a `fips` region is used, the region is normalized and this config
|
292
|
+
# is set to `true`.
|
293
|
+
#
|
285
294
|
# @option options [Boolean] :validate_params (true)
|
286
295
|
# When `true`, request parameters are validated before
|
287
296
|
# sending the request.
|
@@ -341,15 +350,15 @@ module Aws::STS
|
|
341
350
|
# `AssumeRole` within your account or for cross-account access. For a
|
342
351
|
# comparison of `AssumeRole` with other API operations that produce
|
343
352
|
# temporary credentials, see [Requesting Temporary Security
|
344
|
-
# Credentials][1] and [Comparing the
|
345
|
-
# User Guide*.
|
353
|
+
# Credentials][1] and [Comparing the Amazon Web Services STS API
|
354
|
+
# operations][2] in the *IAM User Guide*.
|
346
355
|
#
|
347
356
|
# **Permissions**
|
348
357
|
#
|
349
358
|
# The temporary security credentials created by `AssumeRole` can be used
|
350
359
|
# to make API calls to any Amazon Web Services service with the
|
351
|
-
# following exception: You cannot call the
|
352
|
-
# `GetSessionToken` API operations.
|
360
|
+
# following exception: You cannot call the Amazon Web Services STS
|
361
|
+
# `GetFederationToken` or `GetSessionToken` API operations.
|
353
362
|
#
|
354
363
|
# (Optional) You can pass inline or managed [session policies][3] to
|
355
364
|
# this operation. You can pass a single JSON policy document to use as
|
@@ -366,28 +375,37 @@ module Aws::STS
|
|
366
375
|
# assumed. For more information, see [Session Policies][3] in the *IAM
|
367
376
|
# User Guide*.
|
368
377
|
#
|
369
|
-
#
|
370
|
-
#
|
371
|
-
#
|
372
|
-
#
|
378
|
+
# When you create a role, you create two policies: A role trust policy
|
379
|
+
# that specifies *who* can assume the role and a permissions policy that
|
380
|
+
# specifies *what* can be done with the role. You specify the trusted
|
381
|
+
# principal who is allowed to assume the role in the role trust policy.
|
382
|
+
#
|
383
|
+
# To assume a role from a different account, your Amazon Web Services
|
384
|
+
# account must be trusted by the role. The trust relationship is defined
|
385
|
+
# in the role's trust policy when the role is created. That trust
|
386
|
+
# policy states which accounts are allowed to delegate that access to
|
387
|
+
# users in the account.
|
373
388
|
#
|
374
389
|
# A user who wants to access a role in a different account must also
|
375
390
|
# have permissions that are delegated from the user account
|
376
391
|
# administrator. The administrator must attach a policy that allows the
|
377
392
|
# user to call `AssumeRole` for the ARN of the role in the other
|
378
|
-
# account.
|
379
|
-
#
|
393
|
+
# account.
|
394
|
+
#
|
395
|
+
# To allow a user to assume a role in the same account, you can do
|
396
|
+
# either of the following:
|
380
397
|
#
|
381
|
-
# * Attach a policy to the user
|
382
|
-
#
|
398
|
+
# * Attach a policy to the user that allows the user to call
|
399
|
+
# `AssumeRole` (as long as the role's trust policy trusts the
|
400
|
+
# account).
|
383
401
|
#
|
384
402
|
# * Add the user as a principal directly in the role's trust policy.
|
385
403
|
#
|
386
|
-
#
|
387
|
-
#
|
388
|
-
#
|
389
|
-
#
|
390
|
-
# Guide*.
|
404
|
+
# You can do either because the role’s trust policy acts as an IAM
|
405
|
+
# resource-based policy. When a resource-based policy grants access to a
|
406
|
+
# principal in the same account, no additional identity-based policy is
|
407
|
+
# required. For more information about trust policies and resource-based
|
408
|
+
# policies, see [IAM Policies][4] in the *IAM User Guide*.
|
391
409
|
#
|
392
410
|
# **Tags**
|
393
411
|
#
|
@@ -529,15 +547,25 @@ module Aws::STS
|
|
529
547
|
#
|
530
548
|
# @option params [Integer] :duration_seconds
|
531
549
|
# The duration, in seconds, of the role session. The value specified can
|
532
|
-
#
|
533
|
-
#
|
534
|
-
#
|
535
|
-
#
|
536
|
-
#
|
537
|
-
#
|
538
|
-
#
|
539
|
-
#
|
540
|
-
#
|
550
|
+
# range from 900 seconds (15 minutes) up to the maximum session duration
|
551
|
+
# set for the role. The maximum session duration setting can have a
|
552
|
+
# value from 1 hour to 12 hours. If you specify a value higher than this
|
553
|
+
# setting or the administrator setting (whichever is lower), the
|
554
|
+
# operation fails. For example, if you specify a session duration of 12
|
555
|
+
# hours, but your administrator set the maximum session duration to 6
|
556
|
+
# hours, your operation fails.
|
557
|
+
#
|
558
|
+
# Role chaining limits your Amazon Web Services CLI or Amazon Web
|
559
|
+
# Services API role session to a maximum of one hour. When you use the
|
560
|
+
# `AssumeRole` API operation to assume a role, you can specify the
|
561
|
+
# duration of your role session with the `DurationSeconds` parameter.
|
562
|
+
# You can specify a parameter value of up to 43200 seconds (12 hours),
|
563
|
+
# depending on the maximum session duration setting for your role.
|
564
|
+
# However, if you assume a role using role chaining and provide a
|
565
|
+
# `DurationSeconds` parameter value greater than one hour, the operation
|
566
|
+
# fails. To learn how to view the maximum value for your role, see [View
|
567
|
+
# the Maximum Session Duration Setting for a Role][1] in the *IAM User
|
568
|
+
# Guide*.
|
541
569
|
#
|
542
570
|
# By default, the value is set to `3600` seconds.
|
543
571
|
#
|
@@ -546,8 +574,8 @@ module Aws::STS
|
|
546
574
|
# The request to the federation endpoint for a console sign-in token
|
547
575
|
# takes a `SessionDuration` parameter that specifies the maximum length
|
548
576
|
# of the console session. For more information, see [Creating a URL that
|
549
|
-
# Enables Federated Users to Access the
|
550
|
-
# *IAM User Guide*.
|
577
|
+
# Enables Federated Users to Access the Amazon Web Services Management
|
578
|
+
# Console][2] in the *IAM User Guide*.
|
551
579
|
#
|
552
580
|
# </note>
|
553
581
|
#
|
@@ -559,8 +587,8 @@ module Aws::STS
|
|
559
587
|
# @option params [Array<Types::Tag>] :tags
|
560
588
|
# A list of session tags that you want to pass. Each session tag
|
561
589
|
# consists of a key name and an associated value. For more information
|
562
|
-
# about session tags, see [Tagging STS Sessions][1]
|
563
|
-
# Guide*.
|
590
|
+
# about session tags, see [Tagging Amazon Web Services STS Sessions][1]
|
591
|
+
# in the *IAM User Guide*.
|
564
592
|
#
|
565
593
|
# This parameter is optional. You can pass up to 50 session tags. The
|
566
594
|
# plaintext session tag keys can’t exceed 128 characters, and the values
|
@@ -789,8 +817,8 @@ module Aws::STS
|
|
789
817
|
# user-specific credentials or configuration. For a comparison of
|
790
818
|
# `AssumeRoleWithSAML` with the other API operations that produce
|
791
819
|
# temporary credentials, see [Requesting Temporary Security
|
792
|
-
# Credentials][1] and [Comparing the
|
793
|
-
# User Guide*.
|
820
|
+
# Credentials][1] and [Comparing the Amazon Web Services STS API
|
821
|
+
# operations][2] in the *IAM User Guide*.
|
794
822
|
#
|
795
823
|
# The temporary security credentials returned by this operation consist
|
796
824
|
# of an access key ID, a secret access key, and a security token.
|
@@ -1042,8 +1070,8 @@ module Aws::STS
|
|
1042
1070
|
# The request to the federation endpoint for a console sign-in token
|
1043
1071
|
# takes a `SessionDuration` parameter that specifies the maximum length
|
1044
1072
|
# of the console session. For more information, see [Creating a URL that
|
1045
|
-
# Enables Federated Users to Access the
|
1046
|
-
# *IAM User Guide*.
|
1073
|
+
# Enables Federated Users to Access the Amazon Web Services Management
|
1074
|
+
# Console][2] in the *IAM User Guide*.
|
1047
1075
|
#
|
1048
1076
|
# </note>
|
1049
1077
|
#
|
@@ -1163,8 +1191,8 @@ module Aws::STS
|
|
1163
1191
|
# a token from the web identity provider. For a comparison of
|
1164
1192
|
# `AssumeRoleWithWebIdentity` with the other API operations that produce
|
1165
1193
|
# temporary credentials, see [Requesting Temporary Security
|
1166
|
-
# Credentials][5] and [Comparing the
|
1167
|
-
# User Guide*.
|
1194
|
+
# Credentials][5] and [Comparing the Amazon Web Services STS API
|
1195
|
+
# operations][6] in the *IAM User Guide*.
|
1168
1196
|
#
|
1169
1197
|
# The temporary security credentials returned by this API consist of an
|
1170
1198
|
# access key ID, a secret access key, and a security token. Applications
|
@@ -1424,8 +1452,8 @@ module Aws::STS
|
|
1424
1452
|
# The request to the federation endpoint for a console sign-in token
|
1425
1453
|
# takes a `SessionDuration` parameter that specifies the maximum length
|
1426
1454
|
# of the console session. For more information, see [Creating a URL that
|
1427
|
-
# Enables Federated Users to Access the
|
1428
|
-
# *IAM User Guide*.
|
1455
|
+
# Enables Federated Users to Access the Amazon Web Services Management
|
1456
|
+
# Console][2] in the *IAM User Guide*.
|
1429
1457
|
#
|
1430
1458
|
# </note>
|
1431
1459
|
#
|
@@ -1531,17 +1559,17 @@ module Aws::STS
|
|
1531
1559
|
# </note>
|
1532
1560
|
#
|
1533
1561
|
# The message is encoded because the details of the authorization status
|
1534
|
-
# can
|
1562
|
+
# can contain privileged information that the user who requested the
|
1535
1563
|
# operation should not see. To decode an authorization status message, a
|
1536
|
-
# user must be granted permissions
|
1537
|
-
# `DecodeAuthorizationMessage` (`sts:DecodeAuthorizationMessage`)
|
1564
|
+
# user must be granted permissions through an IAM [policy][1] to request
|
1565
|
+
# the `DecodeAuthorizationMessage` (`sts:DecodeAuthorizationMessage`)
|
1538
1566
|
# action.
|
1539
1567
|
#
|
1540
1568
|
# The decoded message includes the following type of information:
|
1541
1569
|
#
|
1542
1570
|
# * Whether the request was denied due to an explicit deny or due to the
|
1543
1571
|
# absence of an explicit allow. For more information, see [Determining
|
1544
|
-
# Whether a Request is Allowed or Denied][
|
1572
|
+
# Whether a Request is Allowed or Denied][2] in the *IAM User Guide*.
|
1545
1573
|
#
|
1546
1574
|
# * The principal who made the request.
|
1547
1575
|
#
|
@@ -1553,7 +1581,8 @@ module Aws::STS
|
|
1553
1581
|
#
|
1554
1582
|
#
|
1555
1583
|
#
|
1556
|
-
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
1584
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html
|
1585
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-denyallow
|
1557
1586
|
#
|
1558
1587
|
# @option params [required, String] :encoded_message
|
1559
1588
|
# The encoded message that was returned with the response.
|
@@ -1748,8 +1777,8 @@ module Aws::STS
|
|
1748
1777
|
# can be safely stored, usually in a server-based application. For a
|
1749
1778
|
# comparison of `GetFederationToken` with the other API operations that
|
1750
1779
|
# produce temporary credentials, see [Requesting Temporary Security
|
1751
|
-
# Credentials][1] and [Comparing the
|
1752
|
-
# User Guide*.
|
1780
|
+
# Credentials][1] and [Comparing the Amazon Web Services STS API
|
1781
|
+
# operations][2] in the *IAM User Guide*.
|
1753
1782
|
#
|
1754
1783
|
# <note markdown="1"> You can create a mobile-based or browser-based app that can
|
1755
1784
|
# authenticate users using a web identity provider like Login with
|
@@ -1773,7 +1802,7 @@ module Aws::STS
|
|
1773
1802
|
# The temporary credentials are valid for the specified duration, from
|
1774
1803
|
# 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36
|
1775
1804
|
# hours). The default session duration is 43,200 seconds (12 hours).
|
1776
|
-
# Temporary credentials
|
1805
|
+
# Temporary credentials obtained by using the Amazon Web Services
|
1777
1806
|
# account root user credentials have a maximum duration of 3,600 seconds
|
1778
1807
|
# (1 hour).
|
1779
1808
|
#
|
@@ -1828,65 +1857,6 @@ module Aws::STS
|
|
1828
1857
|
#
|
1829
1858
|
# </note>
|
1830
1859
|
#
|
1831
|
-
# You can also call `GetFederationToken` using the security credentials
|
1832
|
-
# of an Amazon Web Services account root user, but we do not recommend
|
1833
|
-
# it. Instead, we recommend that you create an IAM user for the purpose
|
1834
|
-
# of the proxy application. Then attach a policy to the IAM user that
|
1835
|
-
# limits federated users to only the actions and resources that they
|
1836
|
-
# need to access. For more information, see [IAM Best Practices][5] in
|
1837
|
-
# the *IAM User Guide*.
|
1838
|
-
#
|
1839
|
-
# **Session duration**
|
1840
|
-
#
|
1841
|
-
# The temporary credentials are valid for the specified duration, from
|
1842
|
-
# 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36
|
1843
|
-
# hours). The default session duration is 43,200 seconds (12 hours).
|
1844
|
-
# Temporary credentials that are obtained by using Amazon Web Services
|
1845
|
-
# account root user credentials have a maximum duration of 3,600 seconds
|
1846
|
-
# (1 hour).
|
1847
|
-
#
|
1848
|
-
# **Permissions**
|
1849
|
-
#
|
1850
|
-
# You can use the temporary credentials created by `GetFederationToken`
|
1851
|
-
# in any Amazon Web Services service except the following:
|
1852
|
-
#
|
1853
|
-
# * You cannot call any IAM operations using the CLI or the Amazon Web
|
1854
|
-
# Services API.
|
1855
|
-
#
|
1856
|
-
# * You cannot call any STS operations except `GetCallerIdentity`.
|
1857
|
-
#
|
1858
|
-
# You must pass an inline or managed [session policy][6] to this
|
1859
|
-
# operation. You can pass a single JSON policy document to use as an
|
1860
|
-
# inline session policy. You can also specify up to 10 managed policies
|
1861
|
-
# to use as managed session policies. The plain text that you use for
|
1862
|
-
# both inline and managed session policies can't exceed 2,048
|
1863
|
-
# characters.
|
1864
|
-
#
|
1865
|
-
# Though the session policy parameters are optional, if you do not pass
|
1866
|
-
# a policy, then the resulting federated user session has no
|
1867
|
-
# permissions. When you pass session policies, the session permissions
|
1868
|
-
# are the intersection of the IAM user policies and the session policies
|
1869
|
-
# that you pass. This gives you a way to further restrict the
|
1870
|
-
# permissions for a federated user. You cannot use session policies to
|
1871
|
-
# grant more permissions than those that are defined in the permissions
|
1872
|
-
# policy of the IAM user. For more information, see [Session
|
1873
|
-
# Policies][6] in the *IAM User Guide*. For information about using
|
1874
|
-
# `GetFederationToken` to create temporary security credentials, see
|
1875
|
-
# [GetFederationToken—Federation Through a Custom Identity Broker][7].
|
1876
|
-
#
|
1877
|
-
# You can use the credentials to access a resource that has a
|
1878
|
-
# resource-based policy. If that policy specifically references the
|
1879
|
-
# federated user session in the `Principal` element of the policy, the
|
1880
|
-
# session has the permissions allowed by the policy. These permissions
|
1881
|
-
# are granted in addition to the permissions granted by the session
|
1882
|
-
# policies.
|
1883
|
-
#
|
1884
|
-
# **Tags**
|
1885
|
-
#
|
1886
|
-
# (Optional) You can pass tag key-value pairs to your session. These are
|
1887
|
-
# called session tags. For more information about session tags, see
|
1888
|
-
# [Passing Session Tags in STS][8] in the *IAM User Guide*.
|
1889
|
-
#
|
1890
1860
|
# An administrator must grant you the permissions necessary to pass
|
1891
1861
|
# session tags. The administrator can also create granular permissions
|
1892
1862
|
# to allow you to pass only specific session tags. For more information,
|
@@ -2155,8 +2125,8 @@ module Aws::STS
|
|
2155
2125
|
# correct MFA code, then the API returns an access denied error. For a
|
2156
2126
|
# comparison of `GetSessionToken` with the other API operations that
|
2157
2127
|
# produce temporary credentials, see [Requesting Temporary Security
|
2158
|
-
# Credentials][1] and [Comparing the
|
2159
|
-
# User Guide*.
|
2128
|
+
# Credentials][1] and [Comparing the Amazon Web Services STS API
|
2129
|
+
# operations][2] in the *IAM User Guide*.
|
2160
2130
|
#
|
2161
2131
|
# **Session Duration**
|
2162
2132
|
#
|
@@ -2224,8 +2194,8 @@ module Aws::STS
|
|
2224
2194
|
# The value is either the serial number for a hardware device (such as
|
2225
2195
|
# `GAHT12345678`) or an Amazon Resource Name (ARN) for a virtual device
|
2226
2196
|
# (such as `arn:aws:iam::123456789012:mfa/user`). You can find the
|
2227
|
-
# device for an IAM user by going to the
|
2228
|
-
# the user's security credentials.
|
2197
|
+
# device for an IAM user by going to the Amazon Web Services Management
|
2198
|
+
# Console and viewing the user's security credentials.
|
2229
2199
|
#
|
2230
2200
|
# The regex used to validate this parameter is a string of characters
|
2231
2201
|
# consisting of upper- and lower-case alphanumeric characters with no
|
@@ -2303,7 +2273,7 @@ module Aws::STS
|
|
2303
2273
|
params: params,
|
2304
2274
|
config: config)
|
2305
2275
|
context[:gem_name] = 'aws-sdk-core'
|
2306
|
-
context[:gem_version] = '3.
|
2276
|
+
context[:gem_version] = '3.123.0'
|
2307
2277
|
Seahorse::Client::Request.new(handlers, context)
|
2308
2278
|
end
|
2309
2279
|
|
@@ -53,7 +53,13 @@ module Aws
|
|
53
53
|
)
|
54
54
|
|
55
55
|
url = Aws::Partitions::EndpointProvider.resolve(
|
56
|
-
req.context.config.region,
|
56
|
+
req.context.config.region,
|
57
|
+
'sts',
|
58
|
+
req.context.config.sts_regional_endpoints,
|
59
|
+
{
|
60
|
+
dualstack: req.context.config.use_dualstack_endpoint,
|
61
|
+
fips: req.context.config.use_fips_endpoint
|
62
|
+
}
|
57
63
|
)
|
58
64
|
url += "/?#{param_list}"
|
59
65
|
|
data/lib/aws-sdk-sts/types.rb
CHANGED
@@ -132,16 +132,25 @@ module Aws::STS
|
|
132
132
|
#
|
133
133
|
# @!attribute [rw] duration_seconds
|
134
134
|
# The duration, in seconds, of the role session. The value specified
|
135
|
-
# can
|
136
|
-
#
|
137
|
-
#
|
138
|
-
#
|
139
|
-
#
|
140
|
-
#
|
141
|
-
#
|
142
|
-
#
|
143
|
-
#
|
144
|
-
#
|
135
|
+
# can range from 900 seconds (15 minutes) up to the maximum session
|
136
|
+
# duration set for the role. The maximum session duration setting can
|
137
|
+
# have a value from 1 hour to 12 hours. If you specify a value higher
|
138
|
+
# than this setting or the administrator setting (whichever is lower),
|
139
|
+
# the operation fails. For example, if you specify a session duration
|
140
|
+
# of 12 hours, but your administrator set the maximum session duration
|
141
|
+
# to 6 hours, your operation fails.
|
142
|
+
#
|
143
|
+
# Role chaining limits your Amazon Web Services CLI or Amazon Web
|
144
|
+
# Services API role session to a maximum of one hour. When you use the
|
145
|
+
# `AssumeRole` API operation to assume a role, you can specify the
|
146
|
+
# duration of your role session with the `DurationSeconds` parameter.
|
147
|
+
# You can specify a parameter value of up to 43200 seconds (12 hours),
|
148
|
+
# depending on the maximum session duration setting for your role.
|
149
|
+
# However, if you assume a role using role chaining and provide a
|
150
|
+
# `DurationSeconds` parameter value greater than one hour, the
|
151
|
+
# operation fails. To learn how to view the maximum value for your
|
152
|
+
# role, see [View the Maximum Session Duration Setting for a Role][1]
|
153
|
+
# in the *IAM User Guide*.
|
145
154
|
#
|
146
155
|
# By default, the value is set to `3600` seconds.
|
147
156
|
#
|
@@ -150,8 +159,8 @@ module Aws::STS
|
|
150
159
|
# credentials. The request to the federation endpoint for a console
|
151
160
|
# sign-in token takes a `SessionDuration` parameter that specifies the
|
152
161
|
# maximum length of the console session. For more information, see
|
153
|
-
# [Creating a URL that Enables Federated Users to Access the
|
154
|
-
# Management Console][2] in the *IAM User Guide*.
|
162
|
+
# [Creating a URL that Enables Federated Users to Access the Amazon
|
163
|
+
# Web Services Management Console][2] in the *IAM User Guide*.
|
155
164
|
#
|
156
165
|
# </note>
|
157
166
|
#
|
@@ -164,8 +173,8 @@ module Aws::STS
|
|
164
173
|
# @!attribute [rw] tags
|
165
174
|
# A list of session tags that you want to pass. Each session tag
|
166
175
|
# consists of a key name and an associated value. For more information
|
167
|
-
# about session tags, see [Tagging
|
168
|
-
# Guide*.
|
176
|
+
# about session tags, see [Tagging Amazon Web Services STS
|
177
|
+
# Sessions][1] in the *IAM User Guide*.
|
169
178
|
#
|
170
179
|
# This parameter is optional. You can pass up to 50 session tags. The
|
171
180
|
# plaintext session tag keys can’t exceed 128 characters, and the
|
@@ -516,8 +525,8 @@ module Aws::STS
|
|
516
525
|
# credentials. The request to the federation endpoint for a console
|
517
526
|
# sign-in token takes a `SessionDuration` parameter that specifies the
|
518
527
|
# maximum length of the console session. For more information, see
|
519
|
-
# [Creating a URL that Enables Federated Users to Access the
|
520
|
-
# Management Console][2] in the *IAM User Guide*.
|
528
|
+
# [Creating a URL that Enables Federated Users to Access the Amazon
|
529
|
+
# Web Services Management Console][2] in the *IAM User Guide*.
|
521
530
|
#
|
522
531
|
# </note>
|
523
532
|
#
|
@@ -802,8 +811,8 @@ module Aws::STS
|
|
802
811
|
# credentials. The request to the federation endpoint for a console
|
803
812
|
# sign-in token takes a `SessionDuration` parameter that specifies the
|
804
813
|
# maximum length of the console session. For more information, see
|
805
|
-
# [Creating a URL that Enables Federated Users to Access the
|
806
|
-
# Management Console][2] in the *IAM User Guide*.
|
814
|
+
# [Creating a URL that Enables Federated Users to Access the Amazon
|
815
|
+
# Web Services Management Console][2] in the *IAM User Guide*.
|
807
816
|
#
|
808
817
|
# </note>
|
809
818
|
#
|
@@ -1012,7 +1021,7 @@ module Aws::STS
|
|
1012
1021
|
# returned in response to an Amazon Web Services request.
|
1013
1022
|
#
|
1014
1023
|
# @!attribute [rw] decoded_message
|
1015
|
-
#
|
1024
|
+
# The API returns a response with the decoded message.
|
1016
1025
|
# @return [String]
|
1017
1026
|
#
|
1018
1027
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/DecodeAuthorizationMessageResponse AWS API Documentation
|
@@ -1396,8 +1405,8 @@ module Aws::STS
|
|
1396
1405
|
# The value is either the serial number for a hardware device (such as
|
1397
1406
|
# `GAHT12345678`) or an Amazon Resource Name (ARN) for a virtual
|
1398
1407
|
# device (such as `arn:aws:iam::123456789012:mfa/user`). You can find
|
1399
|
-
# the device for an IAM user by going to the
|
1400
|
-
# viewing the user's security credentials.
|
1408
|
+
# the device for an IAM user by going to the Amazon Web Services
|
1409
|
+
# Management Console and viewing the user's security credentials.
|
1401
1410
|
#
|
1402
1411
|
# The regex used to validate this parameter is a string of characters
|
1403
1412
|
# consisting of upper- and lower-case alphanumeric characters with no
|
@@ -1546,7 +1555,7 @@ module Aws::STS
|
|
1546
1555
|
#
|
1547
1556
|
#
|
1548
1557
|
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
|
1549
|
-
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/
|
1558
|
+
# [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-limits-entity-length
|
1550
1559
|
#
|
1551
1560
|
# @!attribute [rw] message
|
1552
1561
|
# @return [String]
|
@@ -1612,7 +1621,8 @@ module Aws::STS
|
|
1612
1621
|
# You can pass custom key-value pair attributes when you assume a role
|
1613
1622
|
# or federate a user. These are called session tags. You can then use
|
1614
1623
|
# the session tags to control access to resources. For more information,
|
1615
|
-
# see [Tagging STS Sessions][1] in the *IAM User
|
1624
|
+
# see [Tagging Amazon Web Services STS Sessions][1] in the *IAM User
|
1625
|
+
# Guide*.
|
1616
1626
|
#
|
1617
1627
|
#
|
1618
1628
|
#
|
data/lib/aws-sdk-sts.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.123.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jmespath
|
@@ -33,7 +33,7 @@ dependencies:
|
|
33
33
|
version: '1'
|
34
34
|
- - ">="
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 1.
|
36
|
+
version: 1.525.0
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '1'
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 1.
|
46
|
+
version: 1.525.0
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: aws-sigv4
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|