aws-sdk-core 3.124.0 → 3.186.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +552 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults/default_configuration.rb +153 -0
  5. data/lib/aws-defaults/defaults_mode_config_resolver.rb +107 -0
  6. data/lib/aws-defaults.rb +3 -0
  7. data/lib/aws-sdk-core/arn.rb +13 -0
  8. data/lib/aws-sdk-core/assume_role_credentials.rb +21 -7
  9. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +14 -10
  10. data/lib/aws-sdk-core/binary/encode_handler.rb +12 -1
  11. data/lib/aws-sdk-core/client_stubs.rb +5 -1
  12. data/lib/aws-sdk-core/credential_provider.rb +3 -0
  13. data/lib/aws-sdk-core/credential_provider_chain.rb +8 -5
  14. data/lib/aws-sdk-core/ec2_metadata.rb +3 -2
  15. data/lib/aws-sdk-core/ecs_credentials.rb +121 -53
  16. data/lib/aws-sdk-core/endpoints/condition.rb +41 -0
  17. data/lib/aws-sdk-core/endpoints/endpoint.rb +17 -0
  18. data/lib/aws-sdk-core/endpoints/endpoint_rule.rb +75 -0
  19. data/lib/aws-sdk-core/endpoints/error_rule.rb +42 -0
  20. data/lib/aws-sdk-core/endpoints/function.rb +80 -0
  21. data/lib/aws-sdk-core/endpoints/matchers.rb +131 -0
  22. data/lib/aws-sdk-core/endpoints/reference.rb +31 -0
  23. data/lib/aws-sdk-core/endpoints/rule.rb +25 -0
  24. data/lib/aws-sdk-core/endpoints/rule_set.rb +52 -0
  25. data/lib/aws-sdk-core/endpoints/rules_provider.rb +37 -0
  26. data/lib/aws-sdk-core/endpoints/templater.rb +58 -0
  27. data/lib/aws-sdk-core/endpoints/tree_rule.rb +45 -0
  28. data/lib/aws-sdk-core/endpoints/url.rb +60 -0
  29. data/lib/aws-sdk-core/endpoints.rb +78 -0
  30. data/lib/aws-sdk-core/errors.rb +15 -2
  31. data/lib/aws-sdk-core/ini_parser.rb +7 -0
  32. data/lib/aws-sdk-core/instance_profile_credentials.rb +124 -31
  33. data/lib/aws-sdk-core/json/error_handler.rb +20 -1
  34. data/lib/aws-sdk-core/json/parser.rb +1 -1
  35. data/lib/aws-sdk-core/log/formatter.rb +6 -0
  36. data/lib/aws-sdk-core/pageable_response.rb +81 -32
  37. data/lib/aws-sdk-core/param_validator.rb +2 -2
  38. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +67 -0
  39. data/lib/aws-sdk-core/plugins/checksum_algorithm.rb +340 -0
  40. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +24 -0
  41. data/lib/aws-sdk-core/plugins/defaults_mode.rb +40 -0
  42. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +6 -2
  43. data/lib/aws-sdk-core/plugins/http_checksum.rb +8 -1
  44. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +34 -6
  45. data/lib/aws-sdk-core/plugins/recursion_detection.rb +38 -0
  46. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +111 -30
  47. data/lib/aws-sdk-core/plugins/request_compression.rb +217 -0
  48. data/lib/aws-sdk-core/plugins/response_paging.rb +1 -1
  49. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +7 -4
  50. data/lib/aws-sdk-core/plugins/retry_errors.rb +21 -5
  51. data/lib/aws-sdk-core/plugins/sign.rb +201 -0
  52. data/lib/aws-sdk-core/plugins/signature_v2.rb +1 -0
  53. data/lib/aws-sdk-core/plugins/signature_v4.rb +15 -8
  54. data/lib/aws-sdk-core/plugins/stub_responses.rb +5 -1
  55. data/lib/aws-sdk-core/plugins/user_agent.rb +117 -14
  56. data/lib/aws-sdk-core/process_credentials.rb +9 -11
  57. data/lib/aws-sdk-core/refreshing_credentials.rb +41 -16
  58. data/lib/aws-sdk-core/refreshing_token.rb +71 -0
  59. data/lib/aws-sdk-core/rest/handler.rb +1 -1
  60. data/lib/aws-sdk-core/rest/request/headers.rb +11 -8
  61. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +43 -29
  62. data/lib/aws-sdk-core/shared_config.rb +108 -12
  63. data/lib/aws-sdk-core/sso_credentials.rb +91 -50
  64. data/lib/aws-sdk-core/sso_token_provider.rb +135 -0
  65. data/lib/aws-sdk-core/static_token_provider.rb +14 -0
  66. data/lib/aws-sdk-core/structure.rb +6 -4
  67. data/lib/aws-sdk-core/stubbing/stub_data.rb +11 -0
  68. data/lib/aws-sdk-core/token.rb +31 -0
  69. data/lib/aws-sdk-core/token_provider.rb +15 -0
  70. data/lib/aws-sdk-core/token_provider_chain.rb +51 -0
  71. data/lib/aws-sdk-core/waiters/poller.rb +3 -1
  72. data/lib/aws-sdk-core/xml/error_handler.rb +7 -0
  73. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +2 -0
  74. data/lib/aws-sdk-core/xml/parser/engines/ox.rb +1 -1
  75. data/lib/aws-sdk-core.rb +17 -0
  76. data/lib/aws-sdk-sso/client.rb +85 -12
  77. data/lib/aws-sdk-sso/endpoint_parameters.rb +66 -0
  78. data/lib/aws-sdk-sso/endpoint_provider.rb +57 -0
  79. data/lib/aws-sdk-sso/endpoints.rb +72 -0
  80. data/lib/aws-sdk-sso/plugins/endpoints.rb +76 -0
  81. data/lib/aws-sdk-sso/types.rb +8 -43
  82. data/lib/aws-sdk-sso.rb +5 -1
  83. data/lib/aws-sdk-ssooidc/client.rb +626 -0
  84. data/lib/aws-sdk-ssooidc/client_api.rb +216 -0
  85. data/lib/aws-sdk-ssooidc/customizations.rb +1 -0
  86. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +66 -0
  87. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +57 -0
  88. data/lib/aws-sdk-ssooidc/endpoints.rb +58 -0
  89. data/lib/aws-sdk-ssooidc/errors.rb +290 -0
  90. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +74 -0
  91. data/lib/aws-sdk-ssooidc/resource.rb +26 -0
  92. data/lib/aws-sdk-ssooidc/types.rb +502 -0
  93. data/lib/aws-sdk-ssooidc.rb +59 -0
  94. data/lib/aws-sdk-sts/client.rb +332 -263
  95. data/lib/aws-sdk-sts/client_api.rb +12 -1
  96. data/lib/aws-sdk-sts/endpoint_parameters.rb +78 -0
  97. data/lib/aws-sdk-sts/endpoint_provider.rb +112 -0
  98. data/lib/aws-sdk-sts/endpoints.rb +136 -0
  99. data/lib/aws-sdk-sts/plugins/endpoints.rb +84 -0
  100. data/lib/aws-sdk-sts/plugins/sts_regional_endpoints.rb +5 -1
  101. data/lib/aws-sdk-sts/presigner.rb +13 -15
  102. data/lib/aws-sdk-sts/types.rb +121 -204
  103. data/lib/aws-sdk-sts.rb +5 -1
  104. data/lib/seahorse/client/async_base.rb +0 -1
  105. data/lib/seahorse/client/configuration.rb +1 -5
  106. data/lib/seahorse/client/h2/connection.rb +12 -11
  107. data/lib/seahorse/client/net_http/connection_pool.rb +7 -0
  108. data/lib/seahorse/client/plugins/net_http.rb +33 -2
  109. data/lib/seahorse/client/plugins/request_callback.rb +40 -9
  110. data/lib/seahorse/client/response.rb +6 -0
  111. data/lib/seahorse/model/operation.rb +6 -0
  112. data/lib/seahorse/util.rb +4 -0
  113. metadata +62 -8
@@ -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,10 @@ 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
+ # Reserved for future use.
292
+ # @return [Array<Types::ProvidedContext>]
293
+ #
313
294
  # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/AssumeRoleRequest AWS API Documentation
314
295
  #
315
296
  class AssumeRoleRequest < Struct.new(
@@ -323,7 +304,8 @@ module Aws::STS
323
304
  :external_id,
324
305
  :serial_number,
325
306
  :token_code,
326
- :source_identity)
307
+ :source_identity,
308
+ :provided_contexts)
327
309
  SENSITIVE = []
328
310
  include Aws::Structure
329
311
  end
@@ -394,22 +376,6 @@ module Aws::STS
394
376
  include Aws::Structure
395
377
  end
396
378
 
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
379
  # @!attribute [rw] role_arn
414
380
  # The Amazon Resource Name (ARN) of the role that the caller is
415
381
  # assuming.
@@ -443,12 +409,13 @@ module Aws::STS
443
409
  # Web Services Service Namespaces][1] in the Amazon Web Services
444
410
  # General Reference.
445
411
  #
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.
412
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
413
+ # session policy, managed policy ARNs, and session tags into a packed
414
+ # binary format that has a separate limit. Your request can fail for
415
+ # this limit even if your plaintext meets the other requirements. The
416
+ # `PackedPolicySize` response element indicates by percentage how
417
+ # close the policies and tags for your request are to the upper size
418
+ # limit.
452
419
  #
453
420
  # </note>
454
421
  #
@@ -489,12 +456,13 @@ module Aws::STS
489
456
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
490
457
  # (\\u000D) characters.
491
458
  #
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.
459
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
460
+ # session policy, managed policy ARNs, and session tags into a packed
461
+ # binary format that has a separate limit. Your request can fail for
462
+ # this limit even if your plaintext meets the other requirements. The
463
+ # `PackedPolicySize` response element indicates by percentage how
464
+ # close the policies and tags for your request are to the upper size
465
+ # limit.
498
466
  #
499
467
  # </note>
500
468
  #
@@ -545,7 +513,7 @@ module Aws::STS
545
513
  :policy_arns,
546
514
  :policy,
547
515
  :duration_seconds)
548
- SENSITIVE = []
516
+ SENSITIVE = [:saml_assertion]
549
517
  include Aws::Structure
550
518
  end
551
519
 
@@ -613,7 +581,7 @@ module Aws::STS
613
581
  # in IAM.
614
582
  #
615
583
  # The combination of `NameQualifier` and `Subject` can be used to
616
- # uniquely identify a federated user.
584
+ # uniquely identify a user.
617
585
  #
618
586
  # The following pseudocode shows how the hash value is calculated:
619
587
  #
@@ -665,23 +633,6 @@ module Aws::STS
665
633
  include Aws::Structure
666
634
  end
667
635
 
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
636
  # @!attribute [rw] role_arn
686
637
  # The Amazon Resource Name (ARN) of the role that the caller is
687
638
  # assuming.
@@ -706,17 +657,18 @@ module Aws::STS
706
657
  # provided by the identity provider. Your application must get this
707
658
  # token by authenticating the user who is using your application with
708
659
  # a web identity provider before the application makes an
709
- # `AssumeRoleWithWebIdentity` call.
660
+ # `AssumeRoleWithWebIdentity` call. Only tokens with RSA algorithms
661
+ # (RS256) are supported.
710
662
  # @return [String]
711
663
  #
712
664
  # @!attribute [rw] provider_id
713
- # The fully qualified host component of the domain name of the
714
- # identity provider.
665
+ # The fully qualified host component of the domain name of the OAuth
666
+ # 2.0 identity provider. Do not specify this value for an OpenID
667
+ # Connect identity provider.
715
668
  #
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.
669
+ # Currently `www.amazon.com` and `graph.facebook.com` are the only
670
+ # supported identity providers for OAuth 2.0 access tokens. Do not
671
+ # include URL schemes and port numbers.
720
672
  #
721
673
  # Do not specify this value for OpenID Connect ID tokens.
722
674
  # @return [String]
@@ -733,12 +685,13 @@ module Aws::STS
733
685
  # Web Services Service Namespaces][1] in the Amazon Web Services
734
686
  # General Reference.
735
687
  #
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.
688
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
689
+ # session policy, managed policy ARNs, and session tags into a packed
690
+ # binary format that has a separate limit. Your request can fail for
691
+ # this limit even if your plaintext meets the other requirements. The
692
+ # `PackedPolicySize` response element indicates by percentage how
693
+ # close the policies and tags for your request are to the upper size
694
+ # limit.
742
695
  #
743
696
  # </note>
744
697
  #
@@ -779,12 +732,13 @@ module Aws::STS
779
732
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
780
733
  # (\\u000D) characters.
781
734
  #
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.
735
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
736
+ # session policy, managed policy ARNs, and session tags into a packed
737
+ # binary format that has a separate limit. Your request can fail for
738
+ # this limit even if your plaintext meets the other requirements. The
739
+ # `PackedPolicySize` response element indicates by percentage how
740
+ # close the policies and tags for your request are to the upper size
741
+ # limit.
788
742
  #
789
743
  # </note>
790
744
  #
@@ -832,7 +786,7 @@ module Aws::STS
832
786
  :policy_arns,
833
787
  :policy,
834
788
  :duration_seconds)
835
- SENSITIVE = []
789
+ SENSITIVE = [:web_identity_token]
836
790
  include Aws::Structure
837
791
  end
838
792
 
@@ -993,17 +947,10 @@ module Aws::STS
993
947
  :secret_access_key,
994
948
  :session_token,
995
949
  :expiration)
996
- SENSITIVE = []
950
+ SENSITIVE = [:secret_access_key]
997
951
  include Aws::Structure
998
952
  end
999
953
 
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
954
  # @!attribute [rw] encoded_message
1008
955
  # The encoded message that was returned with the response.
1009
956
  # @return [String]
@@ -1074,13 +1021,6 @@ module Aws::STS
1074
1021
  include Aws::Structure
1075
1022
  end
1076
1023
 
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
1024
  # @!attribute [rw] access_key_id
1085
1025
  # The identifier of an access key.
1086
1026
  #
@@ -1149,26 +1089,6 @@ module Aws::STS
1149
1089
  include Aws::Structure
1150
1090
  end
1151
1091
 
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
1092
  # @!attribute [rw] name
1173
1093
  # The name of the federated user. The name is used as an identifier
1174
1094
  # for the temporary security credentials (such as `Bob`). For example,
@@ -1187,8 +1107,8 @@ module Aws::STS
1187
1107
  #
1188
1108
  # You must pass an inline or managed [session policy][1] to this
1189
1109
  # 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.
1110
+ # inline session policy. You can also specify up to 10 managed policy
1111
+ # Amazon Resource Names (ARNs) to use as managed session policies.
1192
1112
  #
1193
1113
  # This parameter is optional. However, if you do not pass any session
1194
1114
  # policies, then the resulting federated user session has no
@@ -1216,12 +1136,13 @@ module Aws::STS
1216
1136
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
1217
1137
  # (\\u000D) characters.
1218
1138
  #
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.
1139
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1140
+ # session policy, managed policy ARNs, and session tags into a packed
1141
+ # binary format that has a separate limit. Your request can fail for
1142
+ # this limit even if your plaintext meets the other requirements. The
1143
+ # `PackedPolicySize` response element indicates by percentage how
1144
+ # close the policies and tags for your request are to the upper size
1145
+ # limit.
1225
1146
  #
1226
1147
  # </note>
1227
1148
  #
@@ -1238,13 +1159,13 @@ module Aws::STS
1238
1159
  #
1239
1160
  # You must pass an inline or managed [session policy][1] to this
1240
1161
  # 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.
1162
+ # inline session policy. You can also specify up to 10 managed policy
1163
+ # Amazon Resource Names (ARNs) to use as managed session policies. The
1164
+ # plaintext that you use for both inline and managed session policies
1165
+ # can't exceed 2,048 characters. You can provide up to 10 managed
1166
+ # policy ARNs. For more information about ARNs, see [Amazon Resource
1167
+ # Names (ARNs) and Amazon Web Services Service Namespaces][2] in the
1168
+ # Amazon Web Services General Reference.
1248
1169
  #
1249
1170
  # This parameter is optional. However, if you do not pass any session
1250
1171
  # policies, then the resulting federated user session has no
@@ -1265,12 +1186,13 @@ module Aws::STS
1265
1186
  # are granted in addition to the permissions that are granted by the
1266
1187
  # session policies.
1267
1188
  #
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.
1189
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1190
+ # session policy, managed policy ARNs, and session tags into a packed
1191
+ # binary format that has a separate limit. Your request can fail for
1192
+ # this limit even if your plaintext meets the other requirements. The
1193
+ # `PackedPolicySize` response element indicates by percentage how
1194
+ # close the policies and tags for your request are to the upper size
1195
+ # limit.
1274
1196
  #
1275
1197
  # </note>
1276
1198
  #
@@ -1284,11 +1206,10 @@ module Aws::STS
1284
1206
  # The duration, in seconds, that the session should last. Acceptable
1285
1207
  # durations for federation sessions range from 900 seconds (15
1286
1208
  # 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.
1209
+ # hours) as the default. Sessions obtained using root user credentials
1210
+ # are restricted to a maximum of 3,600 seconds (one hour). If the
1211
+ # specified duration is longer than one hour, the session obtained by
1212
+ # using root user credentials defaults to one hour.
1292
1213
  # @return [Integer]
1293
1214
  #
1294
1215
  # @!attribute [rw] tags
@@ -1301,12 +1222,13 @@ module Aws::STS
1301
1222
  # values can’t exceed 256 characters. For these and additional limits,
1302
1223
  # see [IAM and STS Character Limits][2] in the *IAM User Guide*.
1303
1224
  #
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.
1225
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1226
+ # session policy, managed policy ARNs, and session tags into a packed
1227
+ # binary format that has a separate limit. Your request can fail for
1228
+ # this limit even if your plaintext meets the other requirements. The
1229
+ # `PackedPolicySize` response element indicates by percentage how
1230
+ # close the policies and tags for your request are to the upper size
1231
+ # limit.
1310
1232
  #
1311
1233
  # </note>
1312
1234
  #
@@ -1379,15 +1301,6 @@ module Aws::STS
1379
1301
  include Aws::Structure
1380
1302
  end
1381
1303
 
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
1304
  # @!attribute [rw] duration_seconds
1392
1305
  # The duration, in seconds, that the credentials should remain valid.
1393
1306
  # Acceptable durations for IAM user sessions range from 900 seconds
@@ -1571,13 +1484,6 @@ module Aws::STS
1571
1484
  # A reference to the IAM managed policy that is passed as a session
1572
1485
  # policy for a role session or a federated user session.
1573
1486
  #
1574
- # @note When making an API call, you may pass PolicyDescriptorType
1575
- # data as a hash:
1576
- #
1577
- # {
1578
- # arn: "arnType",
1579
- # }
1580
- #
1581
1487
  # @!attribute [rw] arn
1582
1488
  # The Amazon Resource Name (ARN) of the IAM managed policy to use as a
1583
1489
  # session policy for the role. For more information about ARNs, see
@@ -1597,6 +1503,25 @@ module Aws::STS
1597
1503
  include Aws::Structure
1598
1504
  end
1599
1505
 
1506
+ # Reserved for future use.
1507
+ #
1508
+ # @!attribute [rw] provider_arn
1509
+ # Reserved for future use.
1510
+ # @return [String]
1511
+ #
1512
+ # @!attribute [rw] context_assertion
1513
+ # Reserved for future use.
1514
+ # @return [String]
1515
+ #
1516
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/ProvidedContext AWS API Documentation
1517
+ #
1518
+ class ProvidedContext < Struct.new(
1519
+ :provider_arn,
1520
+ :context_assertion)
1521
+ SENSITIVE = []
1522
+ include Aws::Structure
1523
+ end
1524
+
1600
1525
  # STS is not activated in the requested region for the account that is
1601
1526
  # being asked to generate credentials. The account administrator must
1602
1527
  # use the IAM console to activate STS in that region. For more
@@ -1628,14 +1553,6 @@ module Aws::STS
1628
1553
  #
1629
1554
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
1630
1555
  #
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
1556
  # @!attribute [rw] key
1640
1557
  # The key for a session tag.
1641
1558
  #
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.124.0'
57
+ GEM_VERSION = '3.186.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
 
@@ -34,6 +34,7 @@ module Seahorse
34
34
  ssl_ca_bundle: nil,
35
35
  ssl_ca_directory: nil,
36
36
  ssl_ca_store: nil,
37
+ ssl_timeout: nil
37
38
  }
38
39
 
39
40
  # @api private
@@ -187,6 +188,9 @@ module Seahorse
187
188
  # disables this behaviour. This value can safely be set per
188
189
  # request on the session yielded by {#session_for}.
189
190
  #
191
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
192
+ # in seconds.
193
+ #
190
194
  # @option options [Boolean] :http_wire_trace (false) When `true`,
191
195
  # HTTP debug output will be sent to the `:logger`.
192
196
  #
@@ -248,6 +252,7 @@ module Seahorse
248
252
  :ssl_ca_bundle => options[:ssl_ca_bundle],
249
253
  :ssl_ca_directory => options[:ssl_ca_directory],
250
254
  :ssl_ca_store => options[:ssl_ca_store],
255
+ :ssl_timeout => options[:ssl_timeout]
251
256
  }
252
257
  end
253
258
 
@@ -285,6 +290,8 @@ module Seahorse
285
290
 
286
291
  if endpoint.scheme == 'https'
287
292
  http.use_ssl = true
293
+ http.ssl_timeout = ssl_timeout
294
+
288
295
  if ssl_verify_peer?
289
296
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER
290
297
  http.ca_file = ssl_ca_bundle if ssl_ca_bundle