aws-sdk-core 3.125.6 → 3.188.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +533 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +4 -4
  5. data/lib/aws-sdk-core/arn.rb +13 -0
  6. data/lib/aws-sdk-core/assume_role_credentials.rb +21 -7
  7. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +14 -10
  8. data/lib/aws-sdk-core/binary/encode_handler.rb +12 -1
  9. data/lib/aws-sdk-core/client_stubs.rb +5 -1
  10. data/lib/aws-sdk-core/credential_provider.rb +3 -0
  11. data/lib/aws-sdk-core/credential_provider_chain.rb +8 -5
  12. data/lib/aws-sdk-core/ec2_metadata.rb +3 -2
  13. data/lib/aws-sdk-core/ecs_credentials.rb +186 -52
  14. data/lib/aws-sdk-core/endpoints/condition.rb +41 -0
  15. data/lib/aws-sdk-core/endpoints/endpoint.rb +17 -0
  16. data/lib/aws-sdk-core/endpoints/endpoint_rule.rb +75 -0
  17. data/lib/aws-sdk-core/endpoints/error_rule.rb +42 -0
  18. data/lib/aws-sdk-core/endpoints/function.rb +80 -0
  19. data/lib/aws-sdk-core/endpoints/matchers.rb +131 -0
  20. data/lib/aws-sdk-core/endpoints/reference.rb +31 -0
  21. data/lib/aws-sdk-core/endpoints/rule.rb +25 -0
  22. data/lib/aws-sdk-core/endpoints/rule_set.rb +52 -0
  23. data/lib/aws-sdk-core/endpoints/rules_provider.rb +37 -0
  24. data/lib/aws-sdk-core/endpoints/templater.rb +58 -0
  25. data/lib/aws-sdk-core/endpoints/tree_rule.rb +45 -0
  26. data/lib/aws-sdk-core/endpoints/url.rb +60 -0
  27. data/lib/aws-sdk-core/endpoints.rb +78 -0
  28. data/lib/aws-sdk-core/errors.rb +14 -1
  29. data/lib/aws-sdk-core/ini_parser.rb +7 -0
  30. data/lib/aws-sdk-core/instance_profile_credentials.rb +124 -31
  31. data/lib/aws-sdk-core/json/error_handler.rb +20 -1
  32. data/lib/aws-sdk-core/json/handler.rb +8 -1
  33. data/lib/aws-sdk-core/json/parser.rb +27 -2
  34. data/lib/aws-sdk-core/log/formatter.rb +6 -0
  35. data/lib/aws-sdk-core/pageable_response.rb +81 -32
  36. data/lib/aws-sdk-core/param_validator.rb +2 -2
  37. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +67 -0
  38. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +340 -0
  39. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +24 -0
  40. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +6 -2
  41. data/lib/aws-sdk-core/plugins/http_checksum.rb +8 -1
  42. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +34 -6
  43. data/lib/aws-sdk-core/plugins/recursion_detection.rb +38 -0
  44. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +111 -30
  45. data/lib/aws-sdk-core/plugins/request_compression.rb +217 -0
  46. data/lib/aws-sdk-core/plugins/response_paging.rb +1 -1
  47. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +3 -2
  48. data/lib/aws-sdk-core/plugins/retry_errors.rb +12 -2
  49. data/lib/aws-sdk-core/plugins/sign.rb +201 -0
  50. data/lib/aws-sdk-core/plugins/signature_v2.rb +1 -0
  51. data/lib/aws-sdk-core/plugins/signature_v4.rb +15 -8
  52. data/lib/aws-sdk-core/plugins/stub_responses.rb +5 -1
  53. data/lib/aws-sdk-core/plugins/user_agent.rb +117 -14
  54. data/lib/aws-sdk-core/process_credentials.rb +9 -11
  55. data/lib/aws-sdk-core/refreshing_credentials.rb +41 -16
  56. data/lib/aws-sdk-core/refreshing_token.rb +71 -0
  57. data/lib/aws-sdk-core/rest/handler.rb +1 -1
  58. data/lib/aws-sdk-core/rest/request/headers.rb +2 -6
  59. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +43 -29
  60. data/lib/aws-sdk-core/shared_config.rb +107 -12
  61. data/lib/aws-sdk-core/sso_credentials.rb +91 -50
  62. data/lib/aws-sdk-core/sso_token_provider.rb +135 -0
  63. data/lib/aws-sdk-core/static_token_provider.rb +14 -0
  64. data/lib/aws-sdk-core/structure.rb +6 -4
  65. data/lib/aws-sdk-core/stubbing/stub_data.rb +11 -0
  66. data/lib/aws-sdk-core/token.rb +31 -0
  67. data/lib/aws-sdk-core/token_provider.rb +15 -0
  68. data/lib/aws-sdk-core/token_provider_chain.rb +51 -0
  69. data/lib/aws-sdk-core/waiters/poller.rb +3 -1
  70. data/lib/aws-sdk-core/xml/error_handler.rb +7 -0
  71. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +2 -0
  72. data/lib/aws-sdk-core.rb +14 -0
  73. data/lib/aws-sdk-sso/client.rb +75 -11
  74. data/lib/aws-sdk-sso/endpoint_parameters.rb +66 -0
  75. data/lib/aws-sdk-sso/endpoint_provider.rb +57 -0
  76. data/lib/aws-sdk-sso/endpoints.rb +72 -0
  77. data/lib/aws-sdk-sso/plugins/endpoints.rb +76 -0
  78. data/lib/aws-sdk-sso/types.rb +8 -43
  79. data/lib/aws-sdk-sso.rb +5 -1
  80. data/lib/aws-sdk-ssooidc/client.rb +935 -0
  81. data/lib/aws-sdk-ssooidc/client_api.rb +271 -0
  82. data/lib/aws-sdk-ssooidc/customizations.rb +1 -0
  83. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +66 -0
  84. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +57 -0
  85. data/lib/aws-sdk-ssooidc/endpoints.rb +72 -0
  86. data/lib/aws-sdk-ssooidc/errors.rb +321 -0
  87. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +76 -0
  88. data/lib/aws-sdk-ssooidc/resource.rb +26 -0
  89. data/lib/aws-sdk-ssooidc/types.rb +755 -0
  90. data/lib/aws-sdk-ssooidc.rb +59 -0
  91. data/lib/aws-sdk-sts/client.rb +330 -262
  92. data/lib/aws-sdk-sts/client_api.rb +12 -1
  93. data/lib/aws-sdk-sts/endpoint_parameters.rb +78 -0
  94. data/lib/aws-sdk-sts/endpoint_provider.rb +112 -0
  95. data/lib/aws-sdk-sts/endpoints.rb +136 -0
  96. data/lib/aws-sdk-sts/plugins/endpoints.rb +84 -0
  97. data/lib/aws-sdk-sts/presigner.rb +14 -16
  98. data/lib/aws-sdk-sts/types.rb +135 -204
  99. data/lib/aws-sdk-sts.rb +5 -1
  100. data/lib/seahorse/client/async_base.rb +0 -1
  101. data/lib/seahorse/client/configuration.rb +1 -5
  102. data/lib/seahorse/client/h2/connection.rb +12 -11
  103. data/lib/seahorse/client/net_http/patches.rb +1 -4
  104. data/lib/seahorse/client/plugins/h2.rb +3 -3
  105. data/lib/seahorse/client/plugins/request_callback.rb +40 -9
  106. data/lib/seahorse/client/response.rb +6 -0
  107. data/lib/seahorse/model/operation.rb +6 -0
  108. data/lib/seahorse/util.rb +4 -0
  109. metadata +59 -9
@@ -10,32 +10,6 @@
10
10
  module Aws::STS
11
11
  module Types
12
12
 
13
- # @note When making an API call, you may pass AssumeRoleRequest
14
- # data as a hash:
15
- #
16
- # {
17
- # role_arn: "arnType", # required
18
- # role_session_name: "roleSessionNameType", # required
19
- # policy_arns: [
20
- # {
21
- # arn: "arnType",
22
- # },
23
- # ],
24
- # policy: "sessionPolicyDocumentType",
25
- # duration_seconds: 1,
26
- # tags: [
27
- # {
28
- # key: "tagKeyType", # required
29
- # value: "tagValueType", # required
30
- # },
31
- # ],
32
- # transitive_tag_keys: ["tagKeyType"],
33
- # external_id: "externalIdType",
34
- # serial_number: "serialNumberType",
35
- # token_code: "tokenCodeType",
36
- # source_identity: "sourceIdentityType",
37
- # }
38
- #
39
13
  # @!attribute [rw] role_arn
40
14
  # The Amazon Resource Name (ARN) of the role to assume.
41
15
  # @return [String]
@@ -70,12 +44,13 @@ module Aws::STS
70
44
  # Web Services Service Namespaces][1] in the Amazon Web Services
71
45
  # General Reference.
72
46
  #
73
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
74
- # policies and session tags into a packed binary format that has a
75
- # separate limit. Your request can fail for this limit even if your
76
- # plaintext meets the other requirements. The `PackedPolicySize`
77
- # response element indicates by percentage how close the policies and
78
- # tags for your request are to the upper size limit.
47
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
48
+ # session policy, managed policy ARNs, and session tags into a packed
49
+ # binary format that has a separate limit. Your request can fail for
50
+ # this limit even if your plaintext meets the other requirements. The
51
+ # `PackedPolicySize` response element indicates by percentage how
52
+ # close the policies and tags for your request are to the upper size
53
+ # limit.
79
54
  #
80
55
  # </note>
81
56
  #
@@ -116,12 +91,13 @@ module Aws::STS
116
91
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
117
92
  # (\\u000D) characters.
118
93
  #
119
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
120
- # policies and session tags into a packed binary format that has a
121
- # separate limit. Your request can fail for this limit even if your
122
- # plaintext meets the other requirements. The `PackedPolicySize`
123
- # response element indicates by percentage how close the policies and
124
- # tags for your request are to the upper size limit.
94
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
95
+ # session policy, managed policy ARNs, and session tags into a packed
96
+ # binary format that has a separate limit. Your request can fail for
97
+ # this limit even if your plaintext meets the other requirements. The
98
+ # `PackedPolicySize` response element indicates by percentage how
99
+ # close the policies and tags for your request are to the upper size
100
+ # limit.
125
101
  #
126
102
  # </note>
127
103
  #
@@ -181,12 +157,13 @@ module Aws::STS
181
157
  # values can’t exceed 256 characters. For these and additional limits,
182
158
  # see [IAM and STS Character Limits][2] in the *IAM User Guide*.
183
159
  #
184
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
185
- # policies and session tags into a packed binary format that has a
186
- # separate limit. Your request can fail for this limit even if your
187
- # plaintext meets the other requirements. The `PackedPolicySize`
188
- # response element indicates by percentage how close the policies and
189
- # tags for your request are to the upper size limit.
160
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
161
+ # session policy, managed policy ARNs, and session tags into a packed
162
+ # binary format that has a separate limit. Your request can fail for
163
+ # this limit even if your plaintext meets the other requirements. The
164
+ # `PackedPolicySize` response element indicates by percentage how
165
+ # close the policies and tags for your request are to the upper size
166
+ # limit.
190
167
  #
191
168
  # </note>
192
169
  #
@@ -213,7 +190,7 @@ module Aws::STS
213
190
  #
214
191
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
215
192
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-entity-length
216
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/session-tags.html#id_session-tags_ctlogs
193
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_ctlogs
217
194
  # @return [Array<Types::Tag>]
218
195
  #
219
196
  # @!attribute [rw] transitive_tag_keys
@@ -310,6 +287,19 @@ module Aws::STS
310
287
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_monitor.html
311
288
  # @return [String]
312
289
  #
290
+ # @!attribute [rw] provided_contexts
291
+ # A list of previously acquired trusted context assertions in the
292
+ # format of a JSON array. The trusted context assertion is signed and
293
+ # encrypted by Amazon Web Services STS.
294
+ #
295
+ # The following is an example of a `ProvidedContext` value that
296
+ # includes a single trusted context assertion and the ARN of the
297
+ # context provider from which the trusted context assertion was
298
+ # generated.
299
+ #
300
+ # `[\{"ProviderArn":"arn:aws:iam::aws:contextProvider/identitycenter","ContextAssertion":"trusted-context-assertion"\}]`
301
+ # @return [Array<Types::ProvidedContext>]
302
+ #
313
303
  # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/AssumeRoleRequest AWS API Documentation
314
304
  #
315
305
  class AssumeRoleRequest < Struct.new(
@@ -323,7 +313,8 @@ module Aws::STS
323
313
  :external_id,
324
314
  :serial_number,
325
315
  :token_code,
326
- :source_identity)
316
+ :source_identity,
317
+ :provided_contexts)
327
318
  SENSITIVE = []
328
319
  include Aws::Structure
329
320
  end
@@ -394,22 +385,6 @@ module Aws::STS
394
385
  include Aws::Structure
395
386
  end
396
387
 
397
- # @note When making an API call, you may pass AssumeRoleWithSAMLRequest
398
- # data as a hash:
399
- #
400
- # {
401
- # role_arn: "arnType", # required
402
- # principal_arn: "arnType", # required
403
- # saml_assertion: "SAMLAssertionType", # required
404
- # policy_arns: [
405
- # {
406
- # arn: "arnType",
407
- # },
408
- # ],
409
- # policy: "sessionPolicyDocumentType",
410
- # duration_seconds: 1,
411
- # }
412
- #
413
388
  # @!attribute [rw] role_arn
414
389
  # The Amazon Resource Name (ARN) of the role that the caller is
415
390
  # assuming.
@@ -443,12 +418,13 @@ module Aws::STS
443
418
  # Web Services Service Namespaces][1] in the Amazon Web Services
444
419
  # General Reference.
445
420
  #
446
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
447
- # policies and session tags into a packed binary format that has a
448
- # separate limit. Your request can fail for this limit even if your
449
- # plaintext meets the other requirements. The `PackedPolicySize`
450
- # response element indicates by percentage how close the policies and
451
- # tags for your request are to the upper size limit.
421
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
422
+ # session policy, managed policy ARNs, and session tags into a packed
423
+ # binary format that has a separate limit. Your request can fail for
424
+ # this limit even if your plaintext meets the other requirements. The
425
+ # `PackedPolicySize` response element indicates by percentage how
426
+ # close the policies and tags for your request are to the upper size
427
+ # limit.
452
428
  #
453
429
  # </note>
454
430
  #
@@ -489,12 +465,13 @@ module Aws::STS
489
465
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
490
466
  # (\\u000D) characters.
491
467
  #
492
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
493
- # policies and session tags into a packed binary format that has a
494
- # separate limit. Your request can fail for this limit even if your
495
- # plaintext meets the other requirements. The `PackedPolicySize`
496
- # response element indicates by percentage how close the policies and
497
- # tags for your request are to the upper size limit.
468
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
469
+ # session policy, managed policy ARNs, and session tags into a packed
470
+ # binary format that has a separate limit. Your request can fail for
471
+ # this limit even if your plaintext meets the other requirements. The
472
+ # `PackedPolicySize` response element indicates by percentage how
473
+ # close the policies and tags for your request are to the upper size
474
+ # limit.
498
475
  #
499
476
  # </note>
500
477
  #
@@ -545,7 +522,7 @@ module Aws::STS
545
522
  :policy_arns,
546
523
  :policy,
547
524
  :duration_seconds)
548
- SENSITIVE = []
525
+ SENSITIVE = [:saml_assertion]
549
526
  include Aws::Structure
550
527
  end
551
528
 
@@ -613,7 +590,7 @@ module Aws::STS
613
590
  # in IAM.
614
591
  #
615
592
  # The combination of `NameQualifier` and `Subject` can be used to
616
- # uniquely identify a federated user.
593
+ # uniquely identify a user.
617
594
  #
618
595
  # The following pseudocode shows how the hash value is calculated:
619
596
  #
@@ -665,23 +642,6 @@ module Aws::STS
665
642
  include Aws::Structure
666
643
  end
667
644
 
668
- # @note When making an API call, you may pass AssumeRoleWithWebIdentityRequest
669
- # data as a hash:
670
- #
671
- # {
672
- # role_arn: "arnType", # required
673
- # role_session_name: "roleSessionNameType", # required
674
- # web_identity_token: "clientTokenType", # required
675
- # provider_id: "urlType",
676
- # policy_arns: [
677
- # {
678
- # arn: "arnType",
679
- # },
680
- # ],
681
- # policy: "sessionPolicyDocumentType",
682
- # duration_seconds: 1,
683
- # }
684
- #
685
645
  # @!attribute [rw] role_arn
686
646
  # The Amazon Resource Name (ARN) of the role that the caller is
687
647
  # assuming.
@@ -706,17 +666,18 @@ module Aws::STS
706
666
  # provided by the identity provider. Your application must get this
707
667
  # token by authenticating the user who is using your application with
708
668
  # a web identity provider before the application makes an
709
- # `AssumeRoleWithWebIdentity` call.
669
+ # `AssumeRoleWithWebIdentity` call. Only tokens with RSA algorithms
670
+ # (RS256) are supported.
710
671
  # @return [String]
711
672
  #
712
673
  # @!attribute [rw] provider_id
713
- # The fully qualified host component of the domain name of the
714
- # identity provider.
674
+ # The fully qualified host component of the domain name of the OAuth
675
+ # 2.0 identity provider. Do not specify this value for an OpenID
676
+ # Connect identity provider.
715
677
  #
716
- # Specify this value only for OAuth 2.0 access tokens. Currently
717
- # `www.amazon.com` and `graph.facebook.com` are the only supported
718
- # identity providers for OAuth 2.0 access tokens. Do not include URL
719
- # schemes and port numbers.
678
+ # Currently `www.amazon.com` and `graph.facebook.com` are the only
679
+ # supported identity providers for OAuth 2.0 access tokens. Do not
680
+ # include URL schemes and port numbers.
720
681
  #
721
682
  # Do not specify this value for OpenID Connect ID tokens.
722
683
  # @return [String]
@@ -733,12 +694,13 @@ module Aws::STS
733
694
  # Web Services Service Namespaces][1] in the Amazon Web Services
734
695
  # General Reference.
735
696
  #
736
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
737
- # policies and session tags into a packed binary format that has a
738
- # separate limit. Your request can fail for this limit even if your
739
- # plaintext meets the other requirements. The `PackedPolicySize`
740
- # response element indicates by percentage how close the policies and
741
- # tags for your request are to the upper size limit.
697
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
698
+ # session policy, managed policy ARNs, and session tags into a packed
699
+ # binary format that has a separate limit. Your request can fail for
700
+ # this limit even if your plaintext meets the other requirements. The
701
+ # `PackedPolicySize` response element indicates by percentage how
702
+ # close the policies and tags for your request are to the upper size
703
+ # limit.
742
704
  #
743
705
  # </note>
744
706
  #
@@ -779,12 +741,13 @@ module Aws::STS
779
741
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
780
742
  # (\\u000D) characters.
781
743
  #
782
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
783
- # policies and session tags into a packed binary format that has a
784
- # separate limit. Your request can fail for this limit even if your
785
- # plaintext meets the other requirements. The `PackedPolicySize`
786
- # response element indicates by percentage how close the policies and
787
- # tags for your request are to the upper size limit.
744
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
745
+ # session policy, managed policy ARNs, and session tags into a packed
746
+ # binary format that has a separate limit. Your request can fail for
747
+ # this limit even if your plaintext meets the other requirements. The
748
+ # `PackedPolicySize` response element indicates by percentage how
749
+ # close the policies and tags for your request are to the upper size
750
+ # limit.
788
751
  #
789
752
  # </note>
790
753
  #
@@ -832,7 +795,7 @@ module Aws::STS
832
795
  :policy_arns,
833
796
  :policy,
834
797
  :duration_seconds)
835
- SENSITIVE = []
798
+ SENSITIVE = [:web_identity_token]
836
799
  include Aws::Structure
837
800
  end
838
801
 
@@ -993,17 +956,10 @@ module Aws::STS
993
956
  :secret_access_key,
994
957
  :session_token,
995
958
  :expiration)
996
- SENSITIVE = []
959
+ SENSITIVE = [:secret_access_key]
997
960
  include Aws::Structure
998
961
  end
999
962
 
1000
- # @note When making an API call, you may pass DecodeAuthorizationMessageRequest
1001
- # data as a hash:
1002
- #
1003
- # {
1004
- # encoded_message: "encodedMessageType", # required
1005
- # }
1006
- #
1007
963
  # @!attribute [rw] encoded_message
1008
964
  # The encoded message that was returned with the response.
1009
965
  # @return [String]
@@ -1074,13 +1030,6 @@ module Aws::STS
1074
1030
  include Aws::Structure
1075
1031
  end
1076
1032
 
1077
- # @note When making an API call, you may pass GetAccessKeyInfoRequest
1078
- # data as a hash:
1079
- #
1080
- # {
1081
- # access_key_id: "accessKeyIdType", # required
1082
- # }
1083
- #
1084
1033
  # @!attribute [rw] access_key_id
1085
1034
  # The identifier of an access key.
1086
1035
  #
@@ -1149,26 +1098,6 @@ module Aws::STS
1149
1098
  include Aws::Structure
1150
1099
  end
1151
1100
 
1152
- # @note When making an API call, you may pass GetFederationTokenRequest
1153
- # data as a hash:
1154
- #
1155
- # {
1156
- # name: "userNameType", # required
1157
- # policy: "sessionPolicyDocumentType",
1158
- # policy_arns: [
1159
- # {
1160
- # arn: "arnType",
1161
- # },
1162
- # ],
1163
- # duration_seconds: 1,
1164
- # tags: [
1165
- # {
1166
- # key: "tagKeyType", # required
1167
- # value: "tagValueType", # required
1168
- # },
1169
- # ],
1170
- # }
1171
- #
1172
1101
  # @!attribute [rw] name
1173
1102
  # The name of the federated user. The name is used as an identifier
1174
1103
  # for the temporary security credentials (such as `Bob`). For example,
@@ -1187,8 +1116,8 @@ module Aws::STS
1187
1116
  #
1188
1117
  # You must pass an inline or managed [session policy][1] to this
1189
1118
  # operation. You can pass a single JSON policy document to use as an
1190
- # inline session policy. You can also specify up to 10 managed
1191
- # policies to use as managed session policies.
1119
+ # inline session policy. You can also specify up to 10 managed policy
1120
+ # Amazon Resource Names (ARNs) to use as managed session policies.
1192
1121
  #
1193
1122
  # This parameter is optional. However, if you do not pass any session
1194
1123
  # policies, then the resulting federated user session has no
@@ -1216,12 +1145,13 @@ module Aws::STS
1216
1145
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
1217
1146
  # (\\u000D) characters.
1218
1147
  #
1219
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
1220
- # policies and session tags into a packed binary format that has a
1221
- # separate limit. Your request can fail for this limit even if your
1222
- # plaintext meets the other requirements. The `PackedPolicySize`
1223
- # response element indicates by percentage how close the policies and
1224
- # tags for your request are to the upper size limit.
1148
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1149
+ # session policy, managed policy ARNs, and session tags into a packed
1150
+ # binary format that has a separate limit. Your request can fail for
1151
+ # this limit even if your plaintext meets the other requirements. The
1152
+ # `PackedPolicySize` response element indicates by percentage how
1153
+ # close the policies and tags for your request are to the upper size
1154
+ # limit.
1225
1155
  #
1226
1156
  # </note>
1227
1157
  #
@@ -1238,13 +1168,13 @@ module Aws::STS
1238
1168
  #
1239
1169
  # You must pass an inline or managed [session policy][1] to this
1240
1170
  # operation. You can pass a single JSON policy document to use as an
1241
- # inline session policy. You can also specify up to 10 managed
1242
- # policies to use as managed session policies. The plaintext that you
1243
- # use for both inline and managed session policies can't exceed 2,048
1244
- # characters. You can provide up to 10 managed policy ARNs. For more
1245
- # information about ARNs, see [Amazon Resource Names (ARNs) and Amazon
1246
- # Web Services Service Namespaces][2] in the Amazon Web Services
1247
- # General Reference.
1171
+ # inline session policy. You can also specify up to 10 managed policy
1172
+ # Amazon Resource Names (ARNs) to use as managed session policies. The
1173
+ # plaintext that you use for both inline and managed session policies
1174
+ # can't exceed 2,048 characters. You can provide up to 10 managed
1175
+ # policy ARNs. For more information about ARNs, see [Amazon Resource
1176
+ # Names (ARNs) and Amazon Web Services Service Namespaces][2] in the
1177
+ # Amazon Web Services General Reference.
1248
1178
  #
1249
1179
  # This parameter is optional. However, if you do not pass any session
1250
1180
  # policies, then the resulting federated user session has no
@@ -1265,12 +1195,13 @@ module Aws::STS
1265
1195
  # are granted in addition to the permissions that are granted by the
1266
1196
  # session policies.
1267
1197
  #
1268
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
1269
- # policies and session tags into a packed binary format that has a
1270
- # separate limit. Your request can fail for this limit even if your
1271
- # plaintext meets the other requirements. The `PackedPolicySize`
1272
- # response element indicates by percentage how close the policies and
1273
- # tags for your request are to the upper size limit.
1198
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1199
+ # session policy, managed policy ARNs, and session tags into a packed
1200
+ # binary format that has a separate limit. Your request can fail for
1201
+ # this limit even if your plaintext meets the other requirements. The
1202
+ # `PackedPolicySize` response element indicates by percentage how
1203
+ # close the policies and tags for your request are to the upper size
1204
+ # limit.
1274
1205
  #
1275
1206
  # </note>
1276
1207
  #
@@ -1284,11 +1215,10 @@ module Aws::STS
1284
1215
  # The duration, in seconds, that the session should last. Acceptable
1285
1216
  # durations for federation sessions range from 900 seconds (15
1286
1217
  # minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12
1287
- # hours) as the default. Sessions obtained using Amazon Web Services
1288
- # account root user credentials are restricted to a maximum of 3,600
1289
- # seconds (one hour). If the specified duration is longer than one
1290
- # hour, the session obtained by using root user credentials defaults
1291
- # to one hour.
1218
+ # hours) as the default. Sessions obtained using root user credentials
1219
+ # are restricted to a maximum of 3,600 seconds (one hour). If the
1220
+ # specified duration is longer than one hour, the session obtained by
1221
+ # using root user credentials defaults to one hour.
1292
1222
  # @return [Integer]
1293
1223
  #
1294
1224
  # @!attribute [rw] tags
@@ -1301,12 +1231,13 @@ module Aws::STS
1301
1231
  # values can’t exceed 256 characters. For these and additional limits,
1302
1232
  # see [IAM and STS Character Limits][2] in the *IAM User Guide*.
1303
1233
  #
1304
- # <note markdown="1"> An Amazon Web Services conversion compresses the passed session
1305
- # policies and session tags into a packed binary format that has a
1306
- # separate limit. Your request can fail for this limit even if your
1307
- # plaintext meets the other requirements. The `PackedPolicySize`
1308
- # response element indicates by percentage how close the policies and
1309
- # tags for your request are to the upper size limit.
1234
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1235
+ # session policy, managed policy ARNs, and session tags into a packed
1236
+ # binary format that has a separate limit. Your request can fail for
1237
+ # this limit even if your plaintext meets the other requirements. The
1238
+ # `PackedPolicySize` response element indicates by percentage how
1239
+ # close the policies and tags for your request are to the upper size
1240
+ # limit.
1310
1241
  #
1311
1242
  # </note>
1312
1243
  #
@@ -1379,15 +1310,6 @@ module Aws::STS
1379
1310
  include Aws::Structure
1380
1311
  end
1381
1312
 
1382
- # @note When making an API call, you may pass GetSessionTokenRequest
1383
- # data as a hash:
1384
- #
1385
- # {
1386
- # duration_seconds: 1,
1387
- # serial_number: "serialNumberType",
1388
- # token_code: "tokenCodeType",
1389
- # }
1390
- #
1391
1313
  # @!attribute [rw] duration_seconds
1392
1314
  # The duration, in seconds, that the credentials should remain valid.
1393
1315
  # Acceptable durations for IAM user sessions range from 900 seconds
@@ -1571,13 +1493,6 @@ module Aws::STS
1571
1493
  # A reference to the IAM managed policy that is passed as a session
1572
1494
  # policy for a role session or a federated user session.
1573
1495
  #
1574
- # @note When making an API call, you may pass PolicyDescriptorType
1575
- # data as a hash:
1576
- #
1577
- # {
1578
- # arn: "arnType",
1579
- # }
1580
- #
1581
1496
  # @!attribute [rw] arn
1582
1497
  # The Amazon Resource Name (ARN) of the IAM managed policy to use as a
1583
1498
  # session policy for the role. For more information about ARNs, see
@@ -1597,6 +1512,30 @@ module Aws::STS
1597
1512
  include Aws::Structure
1598
1513
  end
1599
1514
 
1515
+ # Contains information about the provided context. This includes the
1516
+ # signed and encrypted trusted context assertion and the context
1517
+ # provider ARN from which the trusted context assertion was generated.
1518
+ #
1519
+ # @!attribute [rw] provider_arn
1520
+ # The context provider ARN from which the trusted context assertion
1521
+ # was generated.
1522
+ # @return [String]
1523
+ #
1524
+ # @!attribute [rw] context_assertion
1525
+ # The signed and encrypted trusted context assertion generated by the
1526
+ # context provider. The trusted context assertion is signed and
1527
+ # encrypted by Amazon Web Services STS.
1528
+ # @return [String]
1529
+ #
1530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/ProvidedContext AWS API Documentation
1531
+ #
1532
+ class ProvidedContext < Struct.new(
1533
+ :provider_arn,
1534
+ :context_assertion)
1535
+ SENSITIVE = []
1536
+ include Aws::Structure
1537
+ end
1538
+
1600
1539
  # STS is not activated in the requested region for the account that is
1601
1540
  # being asked to generate credentials. The account administrator must
1602
1541
  # use the IAM console to activate STS in that region. For more
@@ -1628,14 +1567,6 @@ module Aws::STS
1628
1567
  #
1629
1568
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
1630
1569
  #
1631
- # @note When making an API call, you may pass Tag
1632
- # data as a hash:
1633
- #
1634
- # {
1635
- # key: "tagKeyType", # required
1636
- # value: "tagValueType", # required
1637
- # }
1638
- #
1639
1570
  # @!attribute [rw] key
1640
1571
  # The key for a session tag.
1641
1572
  #
data/lib/aws-sdk-sts.rb CHANGED
@@ -15,9 +15,13 @@ end
15
15
 
16
16
  require_relative 'aws-sdk-sts/types'
17
17
  require_relative 'aws-sdk-sts/client_api'
18
+ require_relative 'aws-sdk-sts/plugins/endpoints.rb'
18
19
  require_relative 'aws-sdk-sts/client'
19
20
  require_relative 'aws-sdk-sts/errors'
20
21
  require_relative 'aws-sdk-sts/resource'
22
+ require_relative 'aws-sdk-sts/endpoint_parameters'
23
+ require_relative 'aws-sdk-sts/endpoint_provider'
24
+ require_relative 'aws-sdk-sts/endpoints'
21
25
  require_relative 'aws-sdk-sts/customizations'
22
26
 
23
27
  # This module provides support for AWS Security Token Service. This module is available in the
@@ -50,6 +54,6 @@ require_relative 'aws-sdk-sts/customizations'
50
54
  # @!group service
51
55
  module Aws::STS
52
56
 
53
- GEM_VERSION = '3.125.6'
57
+ GEM_VERSION = '3.188.0'
54
58
 
55
59
  end
@@ -49,4 +49,3 @@ module Seahorse
49
49
  end
50
50
  end
51
51
  end
52
-
@@ -68,7 +68,7 @@ module Seahorse
68
68
  @block = block
69
69
  end
70
70
 
71
- def call(*args)
71
+ def call(*args)
72
72
  @block.call(*args)
73
73
  end
74
74
  end
@@ -204,10 +204,6 @@ module Seahorse
204
204
  def value_at(opt_name)
205
205
  value = @struct[opt_name]
206
206
  if value.is_a?(Defaults)
207
- # this config value is used by endpoint discovery
208
- if opt_name == :endpoint && @struct.members.include?(:regional_endpoint)
209
- @struct[:regional_endpoint] = true
210
- end
211
207
  resolve_defaults(opt_name, value)
212
208
  else
213
209
  value
@@ -43,7 +43,9 @@ module Seahorse
43
43
  @h2_client = HTTP2::Client.new(
44
44
  settings_max_concurrent_streams: max_concurrent_streams
45
45
  )
46
- @logger = options[:logger] || Logger.new($stdout) if @http_wire_trace
46
+ @logger = if @http_wire_trace
47
+ options[:logger] || Logger.new($stdout)
48
+ end
47
49
  @chunk_size = options[:read_chunk_size] || CHUNKSIZE
48
50
  @errors = []
49
51
  @status = :ready
@@ -104,7 +106,7 @@ module Seahorse
104
106
  @mutex.synchronize {
105
107
  return if @socket_thread
106
108
  @socket_thread = Thread.new do
107
- while !@socket.closed?
109
+ while @socket && !@socket.closed?
108
110
  begin
109
111
  data = @socket.read_nonblock(@chunk_size)
110
112
  @h2_client << data
@@ -130,6 +132,7 @@ module Seahorse
130
132
  self.close!
131
133
  end
132
134
  end
135
+ @socket_thread = nil
133
136
  end
134
137
  @socket_thread.abort_on_exception = true
135
138
  }
@@ -142,10 +145,6 @@ module Seahorse
142
145
  @socket.close
143
146
  @socket = nil
144
147
  end
145
- if @socket_thread
146
- Thread.kill(@socket_thread)
147
- @socket_thread = nil
148
- end
149
148
  @status = :closed
150
149
  }
151
150
  end
@@ -183,11 +182,13 @@ module Seahorse
183
182
  @socket.flush
184
183
  end
185
184
  end
186
- @h2_client.on(:frame_sent) do |frame|
187
- debug_output("frame: #{frame.inspect}", :send)
188
- end
189
- @h2_client.on(:frame_received) do |frame|
190
- debug_output("frame: #{frame.inspect}", :receive)
185
+ if @http_wire_trace
186
+ @h2_client.on(:frame_sent) do |frame|
187
+ debug_output("frame: #{frame.inspect}", :send)
188
+ end
189
+ @h2_client.on(:frame_received) do |frame|
190
+ debug_output("frame: #{frame.inspect}", :receive)
191
+ end
191
192
  end
192
193
  end
193
194
 
@@ -12,12 +12,9 @@ module Seahorse
12
12
 
13
13
  def self.apply!
14
14
  Net::HTTPGenericRequest.prepend(PatchDefaultContentType)
15
- return unless RUBY_VERSION < '2.5'
16
-
17
- Net::HTTP::IDEMPOTENT_METHODS_.clear
18
15
  end
19
16
 
20
- # For requests with bodys, Net::HTTP sets a default content type of:
17
+ # For requests with bodies, Net::HTTP sets a default content type of:
21
18
  # 'application/x-www-form-urlencoded'
22
19
  # There are cases where we should not send content type at all.
23
20
  # Even when no body is supplied, Net::HTTP uses a default empty body