aws-sdk-core 3.131.1 → 3.170.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +275 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-core/arn.rb +13 -0
  5. data/lib/aws-sdk-core/binary/encode_handler.rb +12 -1
  6. data/lib/aws-sdk-core/credential_provider_chain.rb +6 -4
  7. data/lib/aws-sdk-core/endpoints/condition.rb +41 -0
  8. data/lib/aws-sdk-core/endpoints/endpoint.rb +17 -0
  9. data/lib/aws-sdk-core/endpoints/endpoint_rule.rb +75 -0
  10. data/lib/aws-sdk-core/endpoints/error_rule.rb +42 -0
  11. data/lib/aws-sdk-core/endpoints/function.rb +80 -0
  12. data/lib/aws-sdk-core/endpoints/matchers.rb +127 -0
  13. data/lib/aws-sdk-core/endpoints/reference.rb +31 -0
  14. data/lib/aws-sdk-core/endpoints/rule.rb +25 -0
  15. data/lib/aws-sdk-core/endpoints/rule_set.rb +52 -0
  16. data/lib/aws-sdk-core/endpoints/rules_provider.rb +37 -0
  17. data/lib/aws-sdk-core/endpoints/templater.rb +58 -0
  18. data/lib/aws-sdk-core/endpoints/tree_rule.rb +45 -0
  19. data/lib/aws-sdk-core/endpoints/url.rb +60 -0
  20. data/lib/aws-sdk-core/endpoints.rb +74 -0
  21. data/lib/aws-sdk-core/errors.rb +13 -0
  22. data/lib/aws-sdk-core/json/error_handler.rb +10 -1
  23. data/lib/aws-sdk-core/pageable_response.rb +7 -0
  24. data/lib/aws-sdk-core/plugins/bearer_authorization.rb +67 -0
  25. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +24 -0
  26. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +6 -2
  27. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +34 -6
  28. data/lib/aws-sdk-core/plugins/recursion_detection.rb +14 -3
  29. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +5 -0
  30. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +2 -1
  31. data/lib/aws-sdk-core/plugins/sign.rb +200 -0
  32. data/lib/aws-sdk-core/plugins/signature_v2.rb +1 -0
  33. data/lib/aws-sdk-core/plugins/signature_v4.rb +13 -7
  34. data/lib/aws-sdk-core/refreshing_token.rb +71 -0
  35. data/lib/aws-sdk-core/rest/handler.rb +1 -1
  36. data/lib/aws-sdk-core/rest/request/headers.rb +2 -6
  37. data/lib/aws-sdk-core/shared_config.rb +76 -5
  38. data/lib/aws-sdk-core/sso_credentials.rb +79 -44
  39. data/lib/aws-sdk-core/sso_token_provider.rb +135 -0
  40. data/lib/aws-sdk-core/static_token_provider.rb +14 -0
  41. data/lib/aws-sdk-core/structure.rb +6 -4
  42. data/lib/aws-sdk-core/token.rb +31 -0
  43. data/lib/aws-sdk-core/token_provider.rb +15 -0
  44. data/lib/aws-sdk-core/token_provider_chain.rb +51 -0
  45. data/lib/aws-sdk-core/xml/error_handler.rb +7 -0
  46. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +2 -0
  47. data/lib/aws-sdk-core.rb +14 -0
  48. data/lib/aws-sdk-sso/client.rb +51 -11
  49. data/lib/aws-sdk-sso/endpoint_parameters.rb +66 -0
  50. data/lib/aws-sdk-sso/endpoint_provider.rb +51 -0
  51. data/lib/aws-sdk-sso/endpoints.rb +71 -0
  52. data/lib/aws-sdk-sso/plugins/endpoints.rb +76 -0
  53. data/lib/aws-sdk-sso/types.rb +8 -43
  54. data/lib/aws-sdk-sso.rb +5 -1
  55. data/lib/aws-sdk-ssooidc/client.rb +606 -0
  56. data/lib/aws-sdk-ssooidc/client_api.rb +216 -0
  57. data/lib/aws-sdk-ssooidc/customizations.rb +1 -0
  58. data/lib/aws-sdk-ssooidc/endpoint_parameters.rb +66 -0
  59. data/lib/aws-sdk-ssooidc/endpoint_provider.rb +51 -0
  60. data/lib/aws-sdk-ssooidc/endpoints.rb +57 -0
  61. data/lib/aws-sdk-ssooidc/errors.rb +290 -0
  62. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +74 -0
  63. data/lib/aws-sdk-ssooidc/resource.rb +26 -0
  64. data/lib/aws-sdk-ssooidc/types.rb +502 -0
  65. data/lib/aws-sdk-ssooidc.rb +59 -0
  66. data/lib/aws-sdk-sts/client.rb +153 -134
  67. data/lib/aws-sdk-sts/endpoint_parameters.rb +78 -0
  68. data/lib/aws-sdk-sts/endpoint_provider.rb +109 -0
  69. data/lib/aws-sdk-sts/endpoints.rb +135 -0
  70. data/lib/aws-sdk-sts/plugins/endpoints.rb +84 -0
  71. data/lib/aws-sdk-sts/presigner.rb +13 -15
  72. data/lib/aws-sdk-sts/types.rb +79 -186
  73. data/lib/aws-sdk-sts.rb +5 -1
  74. data/lib/seahorse/client/async_base.rb +0 -1
  75. data/lib/seahorse/client/configuration.rb +2 -2
  76. data/lib/seahorse/client/h2/connection.rb +2 -5
  77. data/lib/seahorse/client/plugins/request_callback.rb +9 -9
  78. data/lib/seahorse/util.rb +4 -0
  79. metadata +47 -6
@@ -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
  #
@@ -394,22 +371,6 @@ module Aws::STS
394
371
  include Aws::Structure
395
372
  end
396
373
 
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
374
  # @!attribute [rw] role_arn
414
375
  # The Amazon Resource Name (ARN) of the role that the caller is
415
376
  # assuming.
@@ -443,12 +404,13 @@ module Aws::STS
443
404
  # Web Services Service Namespaces][1] in the Amazon Web Services
444
405
  # General Reference.
445
406
  #
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.
407
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
408
+ # session policy, managed policy ARNs, and session tags into a packed
409
+ # binary format that has a separate limit. Your request can fail for
410
+ # this limit even if your plaintext meets the other requirements. The
411
+ # `PackedPolicySize` response element indicates by percentage how
412
+ # close the policies and tags for your request are to the upper size
413
+ # limit.
452
414
  #
453
415
  # </note>
454
416
  #
@@ -489,12 +451,13 @@ module Aws::STS
489
451
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
490
452
  # (\\u000D) characters.
491
453
  #
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.
454
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
455
+ # session policy, managed policy ARNs, and session tags into a packed
456
+ # binary format that has a separate limit. Your request can fail for
457
+ # this limit even if your plaintext meets the other requirements. The
458
+ # `PackedPolicySize` response element indicates by percentage how
459
+ # close the policies and tags for your request are to the upper size
460
+ # limit.
498
461
  #
499
462
  # </note>
500
463
  #
@@ -665,23 +628,6 @@ module Aws::STS
665
628
  include Aws::Structure
666
629
  end
667
630
 
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
631
  # @!attribute [rw] role_arn
686
632
  # The Amazon Resource Name (ARN) of the role that the caller is
687
633
  # assuming.
@@ -733,12 +679,13 @@ module Aws::STS
733
679
  # Web Services Service Namespaces][1] in the Amazon Web Services
734
680
  # General Reference.
735
681
  #
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.
682
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
683
+ # session policy, managed policy ARNs, and session tags into a packed
684
+ # binary format that has a separate limit. Your request can fail for
685
+ # this limit even if your plaintext meets the other requirements. The
686
+ # `PackedPolicySize` response element indicates by percentage how
687
+ # close the policies and tags for your request are to the upper size
688
+ # limit.
742
689
  #
743
690
  # </note>
744
691
  #
@@ -779,12 +726,13 @@ module Aws::STS
779
726
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
780
727
  # (\\u000D) characters.
781
728
  #
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.
729
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
730
+ # session policy, managed policy ARNs, and session tags into a packed
731
+ # binary format that has a separate limit. Your request can fail for
732
+ # this limit even if your plaintext meets the other requirements. The
733
+ # `PackedPolicySize` response element indicates by percentage how
734
+ # close the policies and tags for your request are to the upper size
735
+ # limit.
788
736
  #
789
737
  # </note>
790
738
  #
@@ -997,13 +945,6 @@ module Aws::STS
997
945
  include Aws::Structure
998
946
  end
999
947
 
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
948
  # @!attribute [rw] encoded_message
1008
949
  # The encoded message that was returned with the response.
1009
950
  # @return [String]
@@ -1074,13 +1015,6 @@ module Aws::STS
1074
1015
  include Aws::Structure
1075
1016
  end
1076
1017
 
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
1018
  # @!attribute [rw] access_key_id
1085
1019
  # The identifier of an access key.
1086
1020
  #
@@ -1149,26 +1083,6 @@ module Aws::STS
1149
1083
  include Aws::Structure
1150
1084
  end
1151
1085
 
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
1086
  # @!attribute [rw] name
1173
1087
  # The name of the federated user. The name is used as an identifier
1174
1088
  # for the temporary security credentials (such as `Bob`). For example,
@@ -1187,8 +1101,8 @@ module Aws::STS
1187
1101
  #
1188
1102
  # You must pass an inline or managed [session policy][1] to this
1189
1103
  # 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.
1104
+ # inline session policy. You can also specify up to 10 managed policy
1105
+ # Amazon Resource Names (ARNs) to use as managed session policies.
1192
1106
  #
1193
1107
  # This parameter is optional. However, if you do not pass any session
1194
1108
  # policies, then the resulting federated user session has no
@@ -1216,12 +1130,13 @@ module Aws::STS
1216
1130
  # include the tab (\\u0009), linefeed (\\u000A), and carriage return
1217
1131
  # (\\u000D) characters.
1218
1132
  #
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.
1133
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1134
+ # session policy, managed policy ARNs, and session tags into a packed
1135
+ # binary format that has a separate limit. Your request can fail for
1136
+ # this limit even if your plaintext meets the other requirements. The
1137
+ # `PackedPolicySize` response element indicates by percentage how
1138
+ # close the policies and tags for your request are to the upper size
1139
+ # limit.
1225
1140
  #
1226
1141
  # </note>
1227
1142
  #
@@ -1238,13 +1153,13 @@ module Aws::STS
1238
1153
  #
1239
1154
  # You must pass an inline or managed [session policy][1] to this
1240
1155
  # 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.
1156
+ # inline session policy. You can also specify up to 10 managed policy
1157
+ # Amazon Resource Names (ARNs) to use as managed session policies. The
1158
+ # plaintext that you use for both inline and managed session policies
1159
+ # can't exceed 2,048 characters. You can provide up to 10 managed
1160
+ # policy ARNs. For more information about ARNs, see [Amazon Resource
1161
+ # Names (ARNs) and Amazon Web Services Service Namespaces][2] in the
1162
+ # Amazon Web Services General Reference.
1248
1163
  #
1249
1164
  # This parameter is optional. However, if you do not pass any session
1250
1165
  # policies, then the resulting federated user session has no
@@ -1265,12 +1180,13 @@ module Aws::STS
1265
1180
  # are granted in addition to the permissions that are granted by the
1266
1181
  # session policies.
1267
1182
  #
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.
1183
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1184
+ # session policy, managed policy ARNs, and session tags into a packed
1185
+ # binary format that has a separate limit. Your request can fail for
1186
+ # this limit even if your plaintext meets the other requirements. The
1187
+ # `PackedPolicySize` response element indicates by percentage how
1188
+ # close the policies and tags for your request are to the upper size
1189
+ # limit.
1274
1190
  #
1275
1191
  # </note>
1276
1192
  #
@@ -1301,12 +1217,13 @@ module Aws::STS
1301
1217
  # values can’t exceed 256 characters. For these and additional limits,
1302
1218
  # see [IAM and STS Character Limits][2] in the *IAM User Guide*.
1303
1219
  #
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.
1220
+ # <note markdown="1"> An Amazon Web Services conversion compresses the passed inline
1221
+ # session policy, managed policy ARNs, and session tags into a packed
1222
+ # binary format that has a separate limit. Your request can fail for
1223
+ # this limit even if your plaintext meets the other requirements. The
1224
+ # `PackedPolicySize` response element indicates by percentage how
1225
+ # close the policies and tags for your request are to the upper size
1226
+ # limit.
1310
1227
  #
1311
1228
  # </note>
1312
1229
  #
@@ -1379,15 +1296,6 @@ module Aws::STS
1379
1296
  include Aws::Structure
1380
1297
  end
1381
1298
 
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
1299
  # @!attribute [rw] duration_seconds
1392
1300
  # The duration, in seconds, that the credentials should remain valid.
1393
1301
  # Acceptable durations for IAM user sessions range from 900 seconds
@@ -1571,13 +1479,6 @@ module Aws::STS
1571
1479
  # A reference to the IAM managed policy that is passed as a session
1572
1480
  # policy for a role session or a federated user session.
1573
1481
  #
1574
- # @note When making an API call, you may pass PolicyDescriptorType
1575
- # data as a hash:
1576
- #
1577
- # {
1578
- # arn: "arnType",
1579
- # }
1580
- #
1581
1482
  # @!attribute [rw] arn
1582
1483
  # The Amazon Resource Name (ARN) of the IAM managed policy to use as a
1583
1484
  # session policy for the role. For more information about ARNs, see
@@ -1628,14 +1529,6 @@ module Aws::STS
1628
1529
  #
1629
1530
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
1630
1531
  #
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
1532
  # @!attribute [rw] key
1640
1533
  # The key for a session tag.
1641
1534
  #
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.131.1'
57
+ GEM_VERSION = '3.170.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,7 +204,7 @@ 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
207
+ # Legacy endpoints must continue to exist.
208
208
  if opt_name == :endpoint && @struct.members.include?(:regional_endpoint)
209
209
  @struct[:regional_endpoint] = true
210
210
  end
@@ -104,7 +104,7 @@ module Seahorse
104
104
  @mutex.synchronize {
105
105
  return if @socket_thread
106
106
  @socket_thread = Thread.new do
107
- while !@socket.closed?
107
+ while @socket && !@socket.closed?
108
108
  begin
109
109
  data = @socket.read_nonblock(@chunk_size)
110
110
  @h2_client << data
@@ -130,6 +130,7 @@ module Seahorse
130
130
  self.close!
131
131
  end
132
132
  end
133
+ @socket_thread = nil
133
134
  end
134
135
  @socket_thread.abort_on_exception = true
135
136
  }
@@ -142,10 +143,6 @@ module Seahorse
142
143
  @socket.close
143
144
  @socket = nil
144
145
  end
145
- if @socket_thread
146
- Thread.kill(@socket_thread)
147
- @socket_thread = nil
148
- end
149
146
  @status = :closed
150
147
  }
151
148
  end
@@ -80,18 +80,18 @@ bytes in the body.
80
80
  context.http_request.body,
81
81
  callback
82
82
  )
83
- add_event_listeners(context)
83
+ @handler.call(context).tap do
84
+ unwrap_callback_body(context)
85
+ end
86
+ else
87
+ @handler.call(context)
84
88
  end
85
- @handler.call(context)
86
89
  end
87
90
 
88
- def add_event_listeners(context)
89
- # unwrap the request body as soon as we start receiving a response
90
- context.http_response.on_headers do
91
- body = context.http_request.body
92
- if body.is_a? ReadCallbackIO
93
- context.http_request.body = body.io
94
- end
91
+ def unwrap_callback_body(context)
92
+ body = context.http_request.body
93
+ if body.is_a? ReadCallbackIO
94
+ context.http_request.body = body.io
95
95
  end
96
96
  end
97
97
  end
data/lib/seahorse/util.rb CHANGED
@@ -14,6 +14,10 @@ module Seahorse
14
14
  path.gsub(/[^\/]+/) { |part| uri_escape(part) }
15
15
  end
16
16
 
17
+ def escape_header_list_string(s)
18
+ s.include?('"') || s.include?(',') ? "\"#{s.gsub('"', '\"')}\"" : s
19
+ end
20
+
17
21
  # Checks for a valid host label
18
22
  # @see https://tools.ietf.org/html/rfc3986#section-3.2.2
19
23
  # @see https://tools.ietf.org/html/rfc1123#page-13
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.131.1
4
+ version: 3.170.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: 2022-05-20 00:00:00.000000000 Z
11
+ date: 2023-01-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jmespath
@@ -39,7 +39,7 @@ dependencies:
39
39
  version: '1'
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: 1.525.0
42
+ version: 1.651.0
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
@@ -49,21 +49,21 @@ dependencies:
49
49
  version: '1'
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: 1.525.0
52
+ version: 1.651.0
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: aws-sigv4
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
- version: '1.1'
59
+ version: '1.5'
60
60
  type: :runtime
61
61
  prerelease: false
62
62
  version_requirements: !ruby/object:Gem::Requirement
63
63
  requirements:
64
64
  - - "~>"
65
65
  - !ruby/object:Gem::Version
66
- version: '1.1'
66
+ version: '1.5'
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: aws-eventstream
69
69
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +122,20 @@ files:
122
122
  - lib/aws-sdk-core/ec2_metadata.rb
123
123
  - lib/aws-sdk-core/ecs_credentials.rb
124
124
  - lib/aws-sdk-core/endpoint_cache.rb
125
+ - lib/aws-sdk-core/endpoints.rb
126
+ - lib/aws-sdk-core/endpoints/condition.rb
127
+ - lib/aws-sdk-core/endpoints/endpoint.rb
128
+ - lib/aws-sdk-core/endpoints/endpoint_rule.rb
129
+ - lib/aws-sdk-core/endpoints/error_rule.rb
130
+ - lib/aws-sdk-core/endpoints/function.rb
131
+ - lib/aws-sdk-core/endpoints/matchers.rb
132
+ - lib/aws-sdk-core/endpoints/reference.rb
133
+ - lib/aws-sdk-core/endpoints/rule.rb
134
+ - lib/aws-sdk-core/endpoints/rule_set.rb
135
+ - lib/aws-sdk-core/endpoints/rules_provider.rb
136
+ - lib/aws-sdk-core/endpoints/templater.rb
137
+ - lib/aws-sdk-core/endpoints/tree_rule.rb
138
+ - lib/aws-sdk-core/endpoints/url.rb
125
139
  - lib/aws-sdk-core/errors.rb
126
140
  - lib/aws-sdk-core/event_emitter.rb
127
141
  - lib/aws-sdk-core/ini_parser.rb
@@ -145,6 +159,7 @@ files:
145
159
  - lib/aws-sdk-core/plugins/apig_authorizer_token.rb
146
160
  - lib/aws-sdk-core/plugins/apig_credentials_configuration.rb
147
161
  - lib/aws-sdk-core/plugins/apig_user_agent.rb
162
+ - lib/aws-sdk-core/plugins/bearer_authorization.rb
148
163
  - lib/aws-sdk-core/plugins/checksum_algorithm.rb
149
164
  - lib/aws-sdk-core/plugins/client_metrics_plugin.rb
150
165
  - lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb
@@ -176,6 +191,7 @@ files:
176
191
  - lib/aws-sdk-core/plugins/retries/error_inspector.rb
177
192
  - lib/aws-sdk-core/plugins/retries/retry_quota.rb
178
193
  - lib/aws-sdk-core/plugins/retry_errors.rb
194
+ - lib/aws-sdk-core/plugins/sign.rb
179
195
  - lib/aws-sdk-core/plugins/signature_v2.rb
180
196
  - lib/aws-sdk-core/plugins/signature_v4.rb
181
197
  - lib/aws-sdk-core/plugins/stub_responses.rb
@@ -189,6 +205,7 @@ files:
189
205
  - lib/aws-sdk-core/query/param_builder.rb
190
206
  - lib/aws-sdk-core/query/param_list.rb
191
207
  - lib/aws-sdk-core/refreshing_credentials.rb
208
+ - lib/aws-sdk-core/refreshing_token.rb
192
209
  - lib/aws-sdk-core/resources/collection.rb
193
210
  - lib/aws-sdk-core/rest.rb
194
211
  - lib/aws-sdk-core/rest/handler.rb
@@ -204,6 +221,8 @@ files:
204
221
  - lib/aws-sdk-core/shared_config.rb
205
222
  - lib/aws-sdk-core/shared_credentials.rb
206
223
  - lib/aws-sdk-core/sso_credentials.rb
224
+ - lib/aws-sdk-core/sso_token_provider.rb
225
+ - lib/aws-sdk-core/static_token_provider.rb
207
226
  - lib/aws-sdk-core/structure.rb
208
227
  - lib/aws-sdk-core/stubbing/data_applicator.rb
209
228
  - lib/aws-sdk-core/stubbing/empty_stub.rb
@@ -216,6 +235,9 @@ files:
216
235
  - lib/aws-sdk-core/stubbing/protocols/rest_xml.rb
217
236
  - lib/aws-sdk-core/stubbing/stub_data.rb
218
237
  - lib/aws-sdk-core/stubbing/xml_error.rb
238
+ - lib/aws-sdk-core/token.rb
239
+ - lib/aws-sdk-core/token_provider.rb
240
+ - lib/aws-sdk-core/token_provider_chain.rb
219
241
  - lib/aws-sdk-core/type_builder.rb
220
242
  - lib/aws-sdk-core/util.rb
221
243
  - lib/aws-sdk-core/waiters.rb
@@ -241,14 +263,33 @@ files:
241
263
  - lib/aws-sdk-sso/client.rb
242
264
  - lib/aws-sdk-sso/client_api.rb
243
265
  - lib/aws-sdk-sso/customizations.rb
266
+ - lib/aws-sdk-sso/endpoint_parameters.rb
267
+ - lib/aws-sdk-sso/endpoint_provider.rb
268
+ - lib/aws-sdk-sso/endpoints.rb
244
269
  - lib/aws-sdk-sso/errors.rb
270
+ - lib/aws-sdk-sso/plugins/endpoints.rb
245
271
  - lib/aws-sdk-sso/resource.rb
246
272
  - lib/aws-sdk-sso/types.rb
273
+ - lib/aws-sdk-ssooidc.rb
274
+ - lib/aws-sdk-ssooidc/client.rb
275
+ - lib/aws-sdk-ssooidc/client_api.rb
276
+ - lib/aws-sdk-ssooidc/customizations.rb
277
+ - lib/aws-sdk-ssooidc/endpoint_parameters.rb
278
+ - lib/aws-sdk-ssooidc/endpoint_provider.rb
279
+ - lib/aws-sdk-ssooidc/endpoints.rb
280
+ - lib/aws-sdk-ssooidc/errors.rb
281
+ - lib/aws-sdk-ssooidc/plugins/endpoints.rb
282
+ - lib/aws-sdk-ssooidc/resource.rb
283
+ - lib/aws-sdk-ssooidc/types.rb
247
284
  - lib/aws-sdk-sts.rb
248
285
  - lib/aws-sdk-sts/client.rb
249
286
  - lib/aws-sdk-sts/client_api.rb
250
287
  - lib/aws-sdk-sts/customizations.rb
288
+ - lib/aws-sdk-sts/endpoint_parameters.rb
289
+ - lib/aws-sdk-sts/endpoint_provider.rb
290
+ - lib/aws-sdk-sts/endpoints.rb
251
291
  - lib/aws-sdk-sts/errors.rb
292
+ - lib/aws-sdk-sts/plugins/endpoints.rb
252
293
  - lib/aws-sdk-sts/plugins/sts_regional_endpoints.rb
253
294
  - lib/aws-sdk-sts/presigner.rb
254
295
  - lib/aws-sdk-sts/resource.rb