aws-sdk-s3 1.176.1 → 1.208.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +202 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/bucket.rb +86 -35
  5. data/lib/aws-sdk-s3/bucket_acl.rb +7 -6
  6. data/lib/aws-sdk-s3/bucket_cors.rb +6 -5
  7. data/lib/aws-sdk-s3/bucket_lifecycle.rb +2 -2
  8. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +3 -3
  9. data/lib/aws-sdk-s3/bucket_logging.rb +2 -2
  10. data/lib/aws-sdk-s3/bucket_policy.rb +6 -5
  11. data/lib/aws-sdk-s3/bucket_request_payment.rb +3 -3
  12. data/lib/aws-sdk-s3/bucket_tagging.rb +3 -3
  13. data/lib/aws-sdk-s3/bucket_versioning.rb +42 -9
  14. data/lib/aws-sdk-s3/bucket_website.rb +3 -3
  15. data/lib/aws-sdk-s3/client.rb +3038 -1226
  16. data/lib/aws-sdk-s3/client_api.rb +492 -164
  17. data/lib/aws-sdk-s3/customizations/object.rb +76 -86
  18. data/lib/aws-sdk-s3/customizations.rb +4 -1
  19. data/lib/aws-sdk-s3/default_executor.rb +103 -0
  20. data/lib/aws-sdk-s3/encryption/client.rb +2 -2
  21. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +2 -0
  22. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +2 -0
  23. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -0
  24. data/lib/aws-sdk-s3/encryptionV2/client.rb +98 -23
  25. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +7 -162
  26. data/lib/aws-sdk-s3/encryptionV2/decryption.rb +205 -0
  27. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +17 -0
  28. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +2 -0
  29. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +2 -0
  30. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +8 -0
  31. data/lib/aws-sdk-s3/encryptionV2/utils.rb +5 -0
  32. data/lib/aws-sdk-s3/encryptionV3/client.rb +885 -0
  33. data/lib/aws-sdk-s3/encryptionV3/decrypt_handler.rb +98 -0
  34. data/lib/aws-sdk-s3/encryptionV3/decryption.rb +244 -0
  35. data/lib/aws-sdk-s3/encryptionV3/default_cipher_provider.rb +159 -0
  36. data/lib/aws-sdk-s3/encryptionV3/default_key_provider.rb +35 -0
  37. data/lib/aws-sdk-s3/encryptionV3/encrypt_handler.rb +98 -0
  38. data/lib/aws-sdk-s3/encryptionV3/errors.rb +47 -0
  39. data/lib/aws-sdk-s3/encryptionV3/io_auth_decrypter.rb +60 -0
  40. data/lib/aws-sdk-s3/encryptionV3/io_decrypter.rb +35 -0
  41. data/lib/aws-sdk-s3/encryptionV3/io_encrypter.rb +84 -0
  42. data/lib/aws-sdk-s3/encryptionV3/key_provider.rb +28 -0
  43. data/lib/aws-sdk-s3/encryptionV3/kms_cipher_provider.rb +159 -0
  44. data/lib/aws-sdk-s3/encryptionV3/materials.rb +58 -0
  45. data/lib/aws-sdk-s3/encryptionV3/utils.rb +321 -0
  46. data/lib/aws-sdk-s3/encryption_v2.rb +1 -0
  47. data/lib/aws-sdk-s3/encryption_v3.rb +24 -0
  48. data/lib/aws-sdk-s3/endpoint_parameters.rb +17 -17
  49. data/lib/aws-sdk-s3/endpoint_provider.rb +562 -304
  50. data/lib/aws-sdk-s3/endpoints.rb +110 -0
  51. data/lib/aws-sdk-s3/errors.rb +11 -0
  52. data/lib/aws-sdk-s3/file_downloader.rb +189 -143
  53. data/lib/aws-sdk-s3/file_uploader.rb +9 -13
  54. data/lib/aws-sdk-s3/legacy_signer.rb +2 -1
  55. data/lib/aws-sdk-s3/multipart_download_error.rb +8 -0
  56. data/lib/aws-sdk-s3/multipart_file_uploader.rb +105 -102
  57. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +96 -107
  58. data/lib/aws-sdk-s3/multipart_upload.rb +50 -6
  59. data/lib/aws-sdk-s3/multipart_upload_error.rb +3 -4
  60. data/lib/aws-sdk-s3/multipart_upload_part.rb +50 -34
  61. data/lib/aws-sdk-s3/object.rb +264 -137
  62. data/lib/aws-sdk-s3/object_acl.rb +12 -6
  63. data/lib/aws-sdk-s3/object_multipart_copier.rb +2 -1
  64. data/lib/aws-sdk-s3/object_summary.rb +179 -103
  65. data/lib/aws-sdk-s3/object_version.rb +25 -23
  66. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
  67. data/lib/aws-sdk-s3/plugins/endpoints.rb +1 -1
  68. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +11 -20
  69. data/lib/aws-sdk-s3/plugins/md5s.rb +10 -71
  70. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +5 -7
  71. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -1
  72. data/lib/aws-sdk-s3/presigner.rb +4 -5
  73. data/lib/aws-sdk-s3/resource.rb +7 -1
  74. data/lib/aws-sdk-s3/transfer_manager.rb +303 -0
  75. data/lib/aws-sdk-s3/types.rb +2907 -1059
  76. data/lib/aws-sdk-s3.rb +1 -1
  77. data/sig/bucket.rbs +16 -6
  78. data/sig/bucket_acl.rbs +1 -1
  79. data/sig/bucket_cors.rbs +1 -1
  80. data/sig/bucket_lifecycle.rbs +1 -1
  81. data/sig/bucket_lifecycle_configuration.rbs +1 -1
  82. data/sig/bucket_logging.rbs +1 -1
  83. data/sig/bucket_policy.rbs +1 -1
  84. data/sig/bucket_request_payment.rbs +1 -1
  85. data/sig/bucket_tagging.rbs +1 -1
  86. data/sig/bucket_versioning.rbs +3 -3
  87. data/sig/bucket_website.rbs +1 -1
  88. data/sig/client.rbs +226 -64
  89. data/sig/errors.rbs +2 -0
  90. data/sig/multipart_upload.rbs +9 -2
  91. data/sig/multipart_upload_part.rbs +5 -1
  92. data/sig/object.rbs +31 -15
  93. data/sig/object_acl.rbs +1 -1
  94. data/sig/object_summary.rbs +22 -15
  95. data/sig/object_version.rbs +5 -2
  96. data/sig/resource.rbs +11 -2
  97. data/sig/types.rbs +281 -64
  98. metadata +26 -10
  99. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +0 -31
@@ -207,7 +207,7 @@ module Aws::S3
207
207
  #
208
208
  # bucket_policy.put({
209
209
  # content_md5: "ContentMD5",
210
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
210
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
211
211
  # confirm_remove_self_bucket_access: false,
212
212
  # policy: "Policy", # required
213
213
  # expected_bucket_owner: "AccountId",
@@ -224,7 +224,7 @@ module Aws::S3
224
224
  #
225
225
  # </note>
226
226
  # @option options [String] :checksum_algorithm
227
- # Indicates the algorithm used to create the checksum for the object
227
+ # Indicates the algorithm used to create the checksum for the request
228
228
  # when you use the SDK. This header will not provide any additional
229
229
  # functionality if you don't use the SDK. When you send this header,
230
230
  # there must be a corresponding `x-amz-checksum-algorithm ` or
@@ -238,6 +238,8 @@ module Aws::S3
238
238
  #
239
239
  # * `CRC32C`
240
240
  #
241
+ # * `CRC64NVME`
242
+ #
241
243
  # * `SHA1`
242
244
  #
243
245
  # * `SHA256`
@@ -247,9 +249,8 @@ module Aws::S3
247
249
  #
248
250
  # If the individual checksum value you provide through
249
251
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
250
- # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores any
251
- # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
252
- # that matches the provided value in `x-amz-checksum-algorithm `.
252
+ # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
253
+ # request with a `BadDigest` error.
253
254
  #
254
255
  # <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs, `CRC32`
255
256
  # is the default checksum algorithm that's used for performance.
@@ -182,7 +182,7 @@ module Aws::S3
182
182
  #
183
183
  # bucket_request_payment.put({
184
184
  # content_md5: "ContentMD5",
185
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
185
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
186
186
  # request_payment_configuration: { # required
187
187
  # payer: "Requester", # required, accepts Requester, BucketOwner
188
188
  # },
@@ -190,7 +190,7 @@ module Aws::S3
190
190
  # })
191
191
  # @param [Hash] options ({})
192
192
  # @option options [String] :content_md5
193
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
193
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
194
194
  # header as a message integrity check to verify that the request body
195
195
  # was not corrupted in transit. For more information, see [RFC 1864][1].
196
196
  #
@@ -202,7 +202,7 @@ module Aws::S3
202
202
  #
203
203
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
204
204
  # @option options [String] :checksum_algorithm
205
- # Indicates the algorithm used to create the checksum for the object
205
+ # Indicates the algorithm used to create the checksum for the request
206
206
  # when you use the SDK. This header will not provide any additional
207
207
  # functionality if you don't use the SDK. When you send this header,
208
208
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -201,7 +201,7 @@ module Aws::S3
201
201
  #
202
202
  # bucket_tagging.put({
203
203
  # content_md5: "ContentMD5",
204
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
204
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
205
205
  # tagging: { # required
206
206
  # tag_set: [ # required
207
207
  # {
@@ -214,7 +214,7 @@ module Aws::S3
214
214
  # })
215
215
  # @param [Hash] options ({})
216
216
  # @option options [String] :content_md5
217
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
217
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
218
218
  # header as a message integrity check to verify that the request body
219
219
  # was not corrupted in transit. For more information, see [RFC 1864][1].
220
220
  #
@@ -226,7 +226,7 @@ module Aws::S3
226
226
  #
227
227
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
228
228
  # @option options [String] :checksum_algorithm
229
- # Indicates the algorithm used to create the checksum for the object
229
+ # Indicates the algorithm used to create the checksum for the request
230
230
  # when you use the SDK. This header will not provide any additional
231
231
  # functionality if you don't use the SDK. When you send this header,
232
232
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -191,13 +191,13 @@ module Aws::S3
191
191
  #
192
192
  # bucket_versioning.enable({
193
193
  # content_md5: "ContentMD5",
194
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
194
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
195
195
  # mfa: "MFA",
196
196
  # expected_bucket_owner: "AccountId",
197
197
  # })
198
198
  # @param [Hash] options ({})
199
199
  # @option options [String] :content_md5
200
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
200
+ # &gt;The Base64 encoded 128-bit `MD5` digest of the data. You must use
201
201
  # this header as a message integrity check to verify that the request
202
202
  # body was not corrupted in transit. For more information, see [RFC
203
203
  # 1864][1].
@@ -210,7 +210,7 @@ module Aws::S3
210
210
  #
211
211
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
212
212
  # @option options [String] :checksum_algorithm
213
- # Indicates the algorithm used to create the checksum for the object
213
+ # Indicates the algorithm used to create the checksum for the request
214
214
  # when you use the SDK. This header will not provide any additional
215
215
  # functionality if you don't use the SDK. When you send this header,
216
216
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -227,6 +227,17 @@ module Aws::S3
227
227
  # @option options [String] :mfa
228
228
  # The concatenation of the authentication device's serial number, a
229
229
  # space, and the value that is displayed on your authentication device.
230
+ # The serial number is the number that uniquely identifies the MFA
231
+ # device. For physical MFA devices, this is the unique serial number
232
+ # that's provided with the device. For virtual MFA devices, the serial
233
+ # number is the device ARN. For more information, see [Enabling
234
+ # versioning on buckets][1] and [Configuring MFA delete][2] in the
235
+ # *Amazon Simple Storage Service User Guide*.
236
+ #
237
+ #
238
+ #
239
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-versioning-examples.html
240
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiFactorAuthenticationDelete.html
230
241
  # @option options [String] :expected_bucket_owner
231
242
  # The account ID of the expected bucket owner. If the account ID that
232
243
  # you provide does not match the actual owner of the bucket, the request
@@ -249,7 +260,7 @@ module Aws::S3
249
260
  #
250
261
  # bucket_versioning.put({
251
262
  # content_md5: "ContentMD5",
252
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
263
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
253
264
  # mfa: "MFA",
254
265
  # versioning_configuration: { # required
255
266
  # mfa_delete: "Enabled", # accepts Enabled, Disabled
@@ -259,7 +270,7 @@ module Aws::S3
259
270
  # })
260
271
  # @param [Hash] options ({})
261
272
  # @option options [String] :content_md5
262
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
273
+ # &gt;The Base64 encoded 128-bit `MD5` digest of the data. You must use
263
274
  # this header as a message integrity check to verify that the request
264
275
  # body was not corrupted in transit. For more information, see [RFC
265
276
  # 1864][1].
@@ -272,7 +283,7 @@ module Aws::S3
272
283
  #
273
284
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
274
285
  # @option options [String] :checksum_algorithm
275
- # Indicates the algorithm used to create the checksum for the object
286
+ # Indicates the algorithm used to create the checksum for the request
276
287
  # when you use the SDK. This header will not provide any additional
277
288
  # functionality if you don't use the SDK. When you send this header,
278
289
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -289,6 +300,17 @@ module Aws::S3
289
300
  # @option options [String] :mfa
290
301
  # The concatenation of the authentication device's serial number, a
291
302
  # space, and the value that is displayed on your authentication device.
303
+ # The serial number is the number that uniquely identifies the MFA
304
+ # device. For physical MFA devices, this is the unique serial number
305
+ # that's provided with the device. For virtual MFA devices, the serial
306
+ # number is the device ARN. For more information, see [Enabling
307
+ # versioning on buckets][1] and [Configuring MFA delete][2] in the
308
+ # *Amazon Simple Storage Service User Guide*.
309
+ #
310
+ #
311
+ #
312
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-versioning-examples.html
313
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiFactorAuthenticationDelete.html
292
314
  # @option options [required, Types::VersioningConfiguration] :versioning_configuration
293
315
  # Container for setting the versioning state.
294
316
  # @option options [String] :expected_bucket_owner
@@ -308,13 +330,13 @@ module Aws::S3
308
330
  #
309
331
  # bucket_versioning.suspend({
310
332
  # content_md5: "ContentMD5",
311
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
333
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
312
334
  # mfa: "MFA",
313
335
  # expected_bucket_owner: "AccountId",
314
336
  # })
315
337
  # @param [Hash] options ({})
316
338
  # @option options [String] :content_md5
317
- # &gt;The base64-encoded 128-bit MD5 digest of the data. You must use
339
+ # &gt;The Base64 encoded 128-bit `MD5` digest of the data. You must use
318
340
  # this header as a message integrity check to verify that the request
319
341
  # body was not corrupted in transit. For more information, see [RFC
320
342
  # 1864][1].
@@ -327,7 +349,7 @@ module Aws::S3
327
349
  #
328
350
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
329
351
  # @option options [String] :checksum_algorithm
330
- # Indicates the algorithm used to create the checksum for the object
352
+ # Indicates the algorithm used to create the checksum for the request
331
353
  # when you use the SDK. This header will not provide any additional
332
354
  # functionality if you don't use the SDK. When you send this header,
333
355
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -344,6 +366,17 @@ module Aws::S3
344
366
  # @option options [String] :mfa
345
367
  # The concatenation of the authentication device's serial number, a
346
368
  # space, and the value that is displayed on your authentication device.
369
+ # The serial number is the number that uniquely identifies the MFA
370
+ # device. For physical MFA devices, this is the unique serial number
371
+ # that's provided with the device. For virtual MFA devices, the serial
372
+ # number is the device ARN. For more information, see [Enabling
373
+ # versioning on buckets][1] and [Configuring MFA delete][2] in the
374
+ # *Amazon Simple Storage Service User Guide*.
375
+ #
376
+ #
377
+ #
378
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-versioning-examples.html
379
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiFactorAuthenticationDelete.html
347
380
  # @option options [String] :expected_bucket_owner
348
381
  # The account ID of the expected bucket owner. If the account ID that
349
382
  # you provide does not match the actual owner of the bucket, the request
@@ -223,7 +223,7 @@ module Aws::S3
223
223
  #
224
224
  # bucket_website.put({
225
225
  # content_md5: "ContentMD5",
226
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
226
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
227
227
  # website_configuration: { # required
228
228
  # error_document: {
229
229
  # key: "ObjectKey", # required
@@ -255,7 +255,7 @@ module Aws::S3
255
255
  # })
256
256
  # @param [Hash] options ({})
257
257
  # @option options [String] :content_md5
258
- # The base64-encoded 128-bit MD5 digest of the data. You must use this
258
+ # The Base64 encoded 128-bit `MD5` digest of the data. You must use this
259
259
  # header as a message integrity check to verify that the request body
260
260
  # was not corrupted in transit. For more information, see [RFC 1864][1].
261
261
  #
@@ -267,7 +267,7 @@ module Aws::S3
267
267
  #
268
268
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
269
269
  # @option options [String] :checksum_algorithm
270
- # Indicates the algorithm used to create the checksum for the object
270
+ # Indicates the algorithm used to create the checksum for the request
271
271
  # when you use the SDK. This header will not provide any additional
272
272
  # functionality if you don't use the SDK. When you send this header,
273
273
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`