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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6549eea72ce7643897ce882d77e1c563d04d8bc64c31195eea0692eba98a9771
4
- data.tar.gz: 7662c9e60f2f3cc42f03c2dfd300426a0c57f199ca2e8d0a88239c95a6b7fc99
3
+ metadata.gz: d8d399e87c3b6a02f60b4fc2efbb7e656af4f8ef66302eec0454129bded2fdb0
4
+ data.tar.gz: 3d348a0ce7abfbc7bfd9210227df82f33d4576f321f9da5374b29f6834e62a38
5
5
  SHA512:
6
- metadata.gz: 1bb6e5e889aa5031deaf66f795f0ad211295064bb850464944ad88c33d4f4660db8abf42fdd10816dee17fc2d99f3c221334ff7dcf87a3efb34073f4090a8ac7
7
- data.tar.gz: 6f76df44f96c1ab0fd5c5a4ee372ed5c659ed326362cfdce7cd7ead1919df5dffcf6ff947c4595e94064a3fdc20a51247da6c03b98203d0e95ecf74cd1ec9aae
6
+ metadata.gz: 525a8c73faf271316eb39fad4880032687e38fc54f452b733c7f161af4e367bf142c73b7218185f5d335219940bce706a5f9884d0716a388a8289a1ea44150f4
7
+ data.tar.gz: ff3d94155efdef438f2db5f4e2a6126590924fb5b712e74981dd174f2e05a7bebcfb1c23e69f00d1aa84b0a1f20415670a630a93ef142472159ee6d8de20df3b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,208 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.208.0 (2025-12-16)
5
+ ------------------
6
+
7
+ * Feature - Updates to the S3 Encryption Client. The V3 S3 Encryption Client now requires key committing algorithm suites by default.
8
+
9
+ 1.207.0 (2025-12-15)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for the new optional field 'LifecycleExpirationDate' in S3 Inventory configurations.
13
+
14
+ 1.206.0 (2025-12-02)
15
+ ------------------
16
+
17
+ * Feature - New S3 Storage Class FSX_ONTAP
18
+
19
+ 1.205.0 (2025-11-20)
20
+ ------------------
21
+
22
+ * Feature - Enable / Disable ABAC on a general purpose bucket.
23
+
24
+ 1.204.0 (2025-11-19)
25
+ ------------------
26
+
27
+ * Feature - Adds support for blocking SSE-C writes to general purpose buckets.
28
+
29
+ 1.203.1 (2025-11-10)
30
+ ------------------
31
+
32
+ * Issue - Deprecated `:checksum_mode` parameter in `FileDownloader#download`. When set to "DISABLED", a deprecation warning is issued and the parameter is ignored. Use `:response_checksum_validation` on the S3 client instead to control checksum validation behavior.
33
+
34
+ 1.203.0 (2025-11-05)
35
+ ------------------
36
+
37
+ * Feature - Launch IPv6 dual-stack support for S3 Express
38
+
39
+ 1.202.0 (2025-10-28)
40
+ ------------------
41
+
42
+ * Feature - Amazon Simple Storage Service / Features: Add conditional writes in CopyObject on destination key to prevent unintended object modifications.
43
+
44
+ 1.201.0 (2025-10-21)
45
+ ------------------
46
+
47
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
48
+
49
+ * Issue - Fix multipart upload to respect `request_checksum_calculation` `when_required` mode.
50
+
51
+ 1.200.0 (2025-10-15)
52
+ ------------------
53
+
54
+ * Feature - Add lightweight thread pool executor for multipart `download_file`, `upload_file` and `upload_stream`.
55
+
56
+ * Feature - Add custom executor support for `Aws::S3::TransferManager`.
57
+
58
+ 1.199.1 (2025-09-25)
59
+ ------------------
60
+
61
+ * Issue - Update `TransferManager#download_file` and `Object#download_file` documentation regarding temporary file usage and failure handling for different destination types.
62
+
63
+ 1.199.0 (2025-09-08)
64
+ ------------------
65
+
66
+ * Feature - This release includes backward compatibility work on the "Expires" parameter.
67
+
68
+ 1.198.0 (2025-08-26)
69
+ ------------------
70
+
71
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
72
+
73
+ * Issue - Fix multipart `download_file` to support `Pathname`, `File` and `Tempfile` objects as download destinations.
74
+
75
+ 1.197.0 (2025-08-19)
76
+ ------------------
77
+
78
+ * Issue - When multipart stream uploader fails to complete multipart upload, it calls abort multipart upload.
79
+
80
+ * Issue - For `Aws::S3::Object` class, the following methods have been deprecated: `download_file`, `upload_file` and `upload_stream`. Use `Aws::S3::TransferManager` instead.
81
+
82
+ * Feature - Add `Aws::S3::TransferManager`, a S3 transfer utility that provides upload/download capabilities with automatic multipart handling, progress tracking, and handling of large files.
83
+
84
+ 1.196.1 (2025-08-05)
85
+ ------------------
86
+
87
+ * Issue - Add range validation to multipart download to ensure all parts are successfully processed.
88
+
89
+ * Issue - When multipart uploader fails to complete multipart upload, it calls abort multipart upload.
90
+
91
+ * Issue - Clean up partially downloaded file on multipart `download_file` failure while preserving existing file.
92
+
93
+ 1.196.0 (2025-08-04)
94
+ ------------------
95
+
96
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
97
+
98
+ 1.195.0 (2025-07-31)
99
+ ------------------
100
+
101
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
102
+
103
+ 1.194.0 (2025-07-21)
104
+ ------------------
105
+
106
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
107
+
108
+ 1.193.0 (2025-07-15)
109
+ ------------------
110
+
111
+ * Feature - Amazon S3 Metadata live inventory tables provide a queryable inventory of all the objects in your general purpose bucket so that you can determine the latest state of your data. To help minimize your storage costs, use journal table record expiration to set a retention period for your records.
112
+
113
+ 1.192.0 (2025-07-02)
114
+ ------------------
115
+
116
+ * Feature - Added support for directory bucket creation with tags and bucket ARN retrieval in CreateBucket, ListDirectoryBuckets, and HeadBucket operations
117
+
118
+ 1.191.0 (2025-06-25)
119
+ ------------------
120
+
121
+ * Feature - Adds support for additional server-side encryption mode and storage class values for accessing Amazon FSx data from Amazon S3 using S3 Access Points
122
+
123
+ 1.190.0 (2025-06-18)
124
+ ------------------
125
+
126
+ * Feature - Added support for renaming objects within the same bucket using the new RenameObject API.
127
+
128
+ 1.189.1 (2025-06-10)
129
+ ------------------
130
+
131
+ * Issue - Only load required `cgi` modules for Ruby 3.5.
132
+
133
+ 1.189.0 (2025-06-02)
134
+ ------------------
135
+
136
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
137
+
138
+ 1.188.0 (2025-05-29)
139
+ ------------------
140
+
141
+ * Feature - Adding checksum support for S3 PutBucketOwnershipControls API.
142
+
143
+ 1.187.0 (2025-05-28)
144
+ ------------------
145
+
146
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
147
+
148
+ * Issue - Signal data in http response listeners prior to writing, so that data can be inspected or verified before potential mutation.
149
+
150
+ 1.186.1 (2025-05-15)
151
+ ------------------
152
+ * Issue - Abort multipart download if object is modified during download.
153
+
154
+ 1.186.0 (2025-05-12)
155
+ ------------------
156
+
157
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
158
+
159
+ 1.185.0 (2025-05-01)
160
+ ------------------
161
+
162
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
163
+
164
+ 1.184.0 (2025-04-28)
165
+ ------------------
166
+
167
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
168
+
169
+ 1.183.0 (2025-03-31)
170
+ ------------------
171
+
172
+ * Feature - Amazon S3 adds support for S3 Access Points for directory buckets in AWS Dedicated Local Zones
173
+
174
+ 1.182.0 (2025-02-18)
175
+ ------------------
176
+
177
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
178
+
179
+ 1.181.0 (2025-02-14)
180
+ ------------------
181
+
182
+ * Feature - Added support for Content-Range header in HeadObject response.
183
+
184
+ 1.180.0 (2025-02-06)
185
+ ------------------
186
+
187
+ * Feature - Updated list of the valid AWS Region values for the LocationConstraint parameter for general purpose buckets.
188
+
189
+ 1.179.0 (2025-01-29)
190
+ ------------------
191
+
192
+ * Feature - Change the type of MpuObjectSize in CompleteMultipartUploadRequest from int to long.
193
+
194
+ 1.178.0 (2025-01-15)
195
+ ------------------
196
+
197
+ * Feature - This change enhances integrity protections for new SDK requests to S3. S3 SDKs now support the CRC64NVME checksum algorithm, full object checksums for multipart S3 objects, and new default integrity protections for S3 requests.
198
+
199
+ * Feature - Default to using `CRC32` checksum validation for S3 uploads and downloads.
200
+
201
+ 1.177.0 (2025-01-03)
202
+ ------------------
203
+
204
+ * Feature - This change is only for updating the model regexp of CopySource which is not for validation but only for documentation and user guide change.
205
+
4
206
  1.176.1 (2024-12-12)
5
207
  ------------------
6
208
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.176.1
1
+ 1.208.0
@@ -49,6 +49,23 @@ module Aws::S3
49
49
  data[:bucket_region]
50
50
  end
51
51
 
52
+ # The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely
53
+ # identify Amazon Web Services resources across all of Amazon Web
54
+ # Services.
55
+ #
56
+ # <note markdown="1"> This parameter is only supported for S3 directory buckets. For more
57
+ # information, see [Using tags with directory buckets][1].
58
+ #
59
+ # </note>
60
+ #
61
+ #
62
+ #
63
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html
64
+ # @return [String]
65
+ def bucket_arn
66
+ data[:bucket_arn]
67
+ end
68
+
52
69
  # @!endgroup
53
70
 
54
71
  # @return [Client]
@@ -237,7 +254,7 @@ module Aws::S3
237
254
  # bucket.create({
238
255
  # acl: "private", # accepts private, public-read, public-read-write, authenticated-read
239
256
  # create_bucket_configuration: {
240
- # location_constraint: "af-south-1", # accepts af-south-1, ap-east-1, ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-south-1, ap-south-2, ap-southeast-1, ap-southeast-2, ap-southeast-3, ca-central-1, cn-north-1, cn-northwest-1, EU, eu-central-1, eu-north-1, eu-south-1, eu-south-2, eu-west-1, eu-west-2, eu-west-3, me-south-1, sa-east-1, us-east-2, us-gov-east-1, us-gov-west-1, us-west-1, us-west-2
257
+ # location_constraint: "af-south-1", # accepts af-south-1, ap-east-1, ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-south-1, ap-south-2, ap-southeast-1, ap-southeast-2, ap-southeast-3, ap-southeast-4, ap-southeast-5, ca-central-1, cn-north-1, cn-northwest-1, EU, eu-central-1, eu-central-2, eu-north-1, eu-south-1, eu-south-2, eu-west-1, eu-west-2, eu-west-3, il-central-1, me-central-1, me-south-1, sa-east-1, us-east-2, us-gov-east-1, us-gov-west-1, us-west-1, us-west-2
241
258
  # location: {
242
259
  # type: "AvailabilityZone", # accepts AvailabilityZone, LocalZone
243
260
  # name: "LocationNameAsString",
@@ -246,6 +263,12 @@ module Aws::S3
246
263
  # data_redundancy: "SingleAvailabilityZone", # accepts SingleAvailabilityZone, SingleLocalZone
247
264
  # type: "Directory", # accepts Directory
248
265
  # },
266
+ # tags: [
267
+ # {
268
+ # key: "ObjectKey", # required
269
+ # value: "Value", # required
270
+ # },
271
+ # ],
249
272
  # },
250
273
  # grant_full_control: "GrantFullControl",
251
274
  # grant_read: "GrantRead",
@@ -392,7 +415,7 @@ module Aws::S3
392
415
  # request_payer: "requester", # accepts requester
393
416
  # bypass_governance_retention: false,
394
417
  # expected_bucket_owner: "AccountId",
395
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
418
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
396
419
  # })
397
420
  # @param [Hash] options ({})
398
421
  # @option options [required, Types::Delete] :delete
@@ -462,6 +485,8 @@ module Aws::S3
462
485
  #
463
486
  # * `CRC32C`
464
487
  #
488
+ # * `CRC64NVME`
489
+ #
465
490
  # * `SHA1`
466
491
  #
467
492
  # * `SHA256`
@@ -471,9 +496,8 @@ module Aws::S3
471
496
  #
472
497
  # If the individual checksum value you provide through
473
498
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
474
- # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores any
475
- # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
476
- # that matches the provided value in `x-amz-checksum-algorithm `.
499
+ # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
500
+ # request with a `BadDigest` error.
477
501
  #
478
502
  # If you provide an individual checksum, Amazon S3 ignores any provided
479
503
  # `ChecksumAlgorithm` parameter.
@@ -502,9 +526,10 @@ module Aws::S3
502
526
  # content_length: 1,
503
527
  # content_md5: "ContentMD5",
504
528
  # content_type: "ContentType",
505
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
529
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
506
530
  # checksum_crc32: "ChecksumCRC32",
507
531
  # checksum_crc32c: "ChecksumCRC32C",
532
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
508
533
  # checksum_sha1: "ChecksumSHA1",
509
534
  # checksum_sha256: "ChecksumSHA256",
510
535
  # expires: Time.now,
@@ -519,8 +544,8 @@ module Aws::S3
519
544
  # metadata: {
520
545
  # "MetadataKey" => "MetadataValue",
521
546
  # },
522
- # server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
523
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
547
+ # server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
548
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE, FSX_OPENZFS, FSX_ONTAP
524
549
  # website_redirect_location: "WebsiteRedirectLocation",
525
550
  # sse_customer_algorithm: "SSECustomerAlgorithm",
526
551
  # sse_customer_key: "SSECustomerKey",
@@ -611,7 +636,7 @@ module Aws::S3
611
636
  #
612
637
  # [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length
613
638
  # @option options [String] :content_md5
614
- # The base64-encoded 128-bit MD5 digest of the message (without the
639
+ # The Base64 encoded 128-bit `MD5` digest of the message (without the
615
640
  # headers) according to RFC 1864. This header can be used as a message
616
641
  # integrity check to verify that the data is the same data that was
617
642
  # originally sent. Although it is optional, we recommend using the
@@ -658,6 +683,8 @@ module Aws::S3
658
683
  #
659
684
  # * `CRC32C`
660
685
  #
686
+ # * `CRC64NVME`
687
+ #
661
688
  # * `SHA1`
662
689
  #
663
690
  # * `SHA256`
@@ -667,9 +694,8 @@ module Aws::S3
667
694
  #
668
695
  # If the individual checksum value you provide through
669
696
  # `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
670
- # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 ignores any
671
- # provided `ChecksumAlgorithm` parameter and uses the checksum algorithm
672
- # that matches the provided value in `x-amz-checksum-algorithm `.
697
+ # set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
698
+ # request with a `BadDigest` error.
673
699
  #
674
700
  # <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
675
701
  # for any request to upload an object with a retention period configured
@@ -689,7 +715,7 @@ module Aws::S3
689
715
  # @option options [String] :checksum_crc32
690
716
  # This header can be used as a data integrity check to verify that the
691
717
  # data received is the same data that was originally sent. This header
692
- # specifies the base64-encoded, 32-bit CRC-32 checksum of the object.
718
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
693
719
  # For more information, see [Checking object integrity][1] in the
694
720
  # *Amazon S3 User Guide*.
695
721
  #
@@ -699,17 +725,28 @@ module Aws::S3
699
725
  # @option options [String] :checksum_crc32c
700
726
  # This header can be used as a data integrity check to verify that the
701
727
  # data received is the same data that was originally sent. This header
702
- # specifies the base64-encoded, 32-bit CRC-32C checksum of the object.
728
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object.
703
729
  # For more information, see [Checking object integrity][1] in the
704
730
  # *Amazon S3 User Guide*.
705
731
  #
706
732
  #
707
733
  #
708
734
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
735
+ # @option options [String] :checksum_crc64nvme
736
+ # This header can be used as a data integrity check to verify that the
737
+ # data received is the same data that was originally sent. This header
738
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
739
+ # object. The `CRC64NVME` checksum is always a full object checksum. For
740
+ # more information, see [Checking object integrity in the Amazon S3 User
741
+ # Guide][1].
742
+ #
743
+ #
744
+ #
745
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
709
746
  # @option options [String] :checksum_sha1
710
747
  # This header can be used as a data integrity check to verify that the
711
748
  # data received is the same data that was originally sent. This header
712
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
749
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object. For
713
750
  # more information, see [Checking object integrity][1] in the *Amazon S3
714
751
  # User Guide*.
715
752
  #
@@ -719,7 +756,7 @@ module Aws::S3
719
756
  # @option options [String] :checksum_sha256
720
757
  # This header can be used as a data integrity check to verify that the
721
758
  # data received is the same data that was originally sent. This header
722
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
759
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
723
760
  # For more information, see [Checking object integrity][1] in the
724
761
  # *Amazon S3 User Guide*.
725
762
  #
@@ -820,8 +857,7 @@ module Aws::S3
820
857
  # A map of metadata to store with the object in S3.
821
858
  # @option options [String] :server_side_encryption
822
859
  # The server-side encryption algorithm that was used when you store this
823
- # object in Amazon S3 (for example, `AES256`, `aws:kms`,
824
- # `aws:kms:dsse`).
860
+ # object in Amazon S3 or Amazon FSx.
825
861
  #
826
862
  # * <b>General purpose buckets </b> - You have four mutually exclusive
827
863
  # options to protect data using server-side encryption in Amazon S3,
@@ -875,6 +911,14 @@ module Aws::S3
875
911
  #
876
912
  # </note>
877
913
  #
914
+ # * <b>S3 access points for Amazon FSx </b> - When accessing data stored
915
+ # in Amazon FSx file systems using S3 access points, the only valid
916
+ # server side encryption option is `aws:fsx`. All Amazon FSx file
917
+ # systems have encryption configured by default and are encrypted at
918
+ # rest. Data is automatically encrypted before being written to the
919
+ # file system, and automatically decrypted as it is read. These
920
+ # processes are handled transparently by Amazon FSx.
921
+ #
878
922
  #
879
923
  #
880
924
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
@@ -889,8 +933,9 @@ module Aws::S3
889
933
  # a different Storage Class. For more information, see [Storage
890
934
  # Classes][1] in the *Amazon S3 User Guide*.
891
935
  #
892
- # <note markdown="1"> * For directory buckets, only the S3 Express One Zone storage class is
893
- # supported to store newly created objects.
936
+ # <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express One
937
+ # Zone storage class) in Availability Zones and `ONEZONE_IA` (the S3
938
+ # One Zone-Infrequent Access storage class) in Dedicated Local Zones.
894
939
  #
895
940
  # * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
896
941
  #
@@ -968,20 +1013,17 @@ module Aws::S3
968
1013
  # `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
969
1014
  # Amazon Web Services managed key (`aws/s3`) to protect the data.
970
1015
  #
971
- # **Directory buckets** - If you specify `x-amz-server-side-encryption`
972
- # with `aws:kms`, the ` x-amz-server-side-encryption-aws-kms-key-id`
973
- # header is implicitly assigned the ID of the KMS symmetric encryption
974
- # customer managed key that's configured for your directory bucket's
975
- # default encryption setting. If you want to specify the `
976
- # x-amz-server-side-encryption-aws-kms-key-id` header explicitly, you
977
- # can only specify it with the ID (Key ID or Key ARN) of the KMS
978
- # customer managed key that's configured for your directory bucket's
979
- # default encryption setting. Otherwise, you get an HTTP `400 Bad
980
- # Request` error. Only use the key ID or key ARN. The key alias format
981
- # of the KMS key isn't supported. Your SSE-KMS configuration can only
982
- # support 1 [customer managed key][1] per directory bucket for the
983
- # lifetime of the bucket. The [Amazon Web Services managed key][2]
984
- # (`aws/s3`) isn't supported.
1016
+ # **Directory buckets** - To encrypt data using SSE-KMS, it's
1017
+ # recommended to specify the `x-amz-server-side-encryption` header to
1018
+ # `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
1019
+ # header implicitly uses the bucket's default KMS customer managed key
1020
+ # ID. If you want to explicitly set the `
1021
+ # x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
1022
+ # bucket's default customer managed key (using key ID or ARN, not
1023
+ # alias). Your SSE-KMS configuration can only support 1 [customer
1024
+ # managed key][1] per directory bucket's lifetime. The [Amazon Web
1025
+ # Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
1026
+ # specification results in an HTTP `400 Bad Request` error.
985
1027
  #
986
1028
  #
987
1029
  #
@@ -990,7 +1032,7 @@ module Aws::S3
990
1032
  # @option options [String] :ssekms_encryption_context
991
1033
  # Specifies the Amazon Web Services KMS Encryption Context as an
992
1034
  # additional encryption context to use for object encryption. The value
993
- # of this header is a Base64-encoded string of a UTF-8 encoded JSON,
1035
+ # of this header is a Base64 encoded string of a UTF-8 encoded JSON,
994
1036
  # which contains the encryption context as key-value pairs. This value
995
1037
  # is stored as object metadata and automatically gets passed on to
996
1038
  # Amazon Web Services KMS for future `GetObject` operations on this
@@ -1164,6 +1206,9 @@ module Aws::S3
1164
1206
  # beginning of the key. The keys that are grouped under `CommonPrefixes`
1165
1207
  # result element are not returned elsewhere in the response.
1166
1208
  #
1209
+ # `CommonPrefixes` is filtered out from results if it is not
1210
+ # lexicographically greater than the key-marker.
1211
+ #
1167
1212
  # <note markdown="1"> **Directory buckets** - For directory buckets, `/` is the only
1168
1213
  # supported delimiter.
1169
1214
  #
@@ -1320,6 +1365,9 @@ module Aws::S3
1320
1365
  # in `CommonPrefixes`. These groups are counted as one result against
1321
1366
  # the `max-keys` limitation. These keys are not returned elsewhere in
1322
1367
  # the response.
1368
+ #
1369
+ # `CommonPrefixes` is filtered out from results if it is not
1370
+ # lexicographically greater than the key-marker.
1323
1371
  # @option options [String] :encoding_type
1324
1372
  # Encoding type used by Amazon S3 to encode the [object keys][1] in the
1325
1373
  # response. Responses are encoded only in UTF-8. An object key can
@@ -1415,6 +1463,9 @@ module Aws::S3
1415
1463
  # @option options [String] :delimiter
1416
1464
  # A delimiter is a character that you use to group keys.
1417
1465
  #
1466
+ # `CommonPrefixes` is filtered out from results if it is not
1467
+ # lexicographically greater than the `StartAfter` value.
1468
+ #
1418
1469
  # <note markdown="1"> * **Directory buckets** - For directory buckets, `/` is the only
1419
1470
  # supported delimiter.
1420
1471
  #
@@ -34,7 +34,7 @@ module Aws::S3
34
34
  @bucket_name
35
35
  end
36
36
 
37
- # Container for the bucket owner's display name and ID.
37
+ # Container for the bucket owner's ID.
38
38
  # @return [Types::Owner]
39
39
  def owner
40
40
  data[:owner]
@@ -207,7 +207,7 @@ module Aws::S3
207
207
  # },
208
208
  # },
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
  # grant_full_control: "GrantFullControl",
212
212
  # grant_read: "GrantRead",
213
213
  # grant_read_acp: "GrantReadACP",
@@ -222,9 +222,10 @@ module Aws::S3
222
222
  # Contains the elements that set the ACL permissions for an object per
223
223
  # grantee.
224
224
  # @option options [String] :content_md5
225
- # The base64-encoded 128-bit MD5 digest of the data. This header must be
226
- # used as a message integrity check to verify that the request body was
227
- # not corrupted in transit. For more information, go to [RFC 1864.][1]
225
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header must
226
+ # be used as a message integrity check to verify that the request body
227
+ # was not corrupted in transit. For more information, go to [RFC
228
+ # 1864.][1]
228
229
  #
229
230
  # For requests made using the Amazon Web Services Command Line Interface
230
231
  # (CLI) or Amazon Web Services SDKs, this field is calculated
@@ -234,7 +235,7 @@ module Aws::S3
234
235
  #
235
236
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
236
237
  # @option options [String] :checksum_algorithm
237
- # Indicates the algorithm used to create the checksum for the object
238
+ # Indicates the algorithm used to create the checksum for the request
238
239
  # when you use the SDK. This header will not provide any additional
239
240
  # functionality if you don't use the SDK. When you send this header,
240
241
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -214,7 +214,7 @@ module Aws::S3
214
214
  # ],
215
215
  # },
216
216
  # content_md5: "ContentMD5",
217
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
217
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
218
218
  # expected_bucket_owner: "AccountId",
219
219
  # })
220
220
  # @param [Hash] options ({})
@@ -227,9 +227,10 @@ module Aws::S3
227
227
  #
228
228
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html
229
229
  # @option options [String] :content_md5
230
- # The base64-encoded 128-bit MD5 digest of the data. This header must be
231
- # used as a message integrity check to verify that the request body was
232
- # not corrupted in transit. For more information, go to [RFC 1864.][1]
230
+ # The Base64 encoded 128-bit `MD5` digest of the data. This header must
231
+ # be used as a message integrity check to verify that the request body
232
+ # was not corrupted in transit. For more information, go to [RFC
233
+ # 1864.][1]
233
234
  #
234
235
  # For requests made using the Amazon Web Services Command Line Interface
235
236
  # (CLI) or Amazon Web Services SDKs, this field is calculated
@@ -239,7 +240,7 @@ module Aws::S3
239
240
  #
240
241
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
241
242
  # @option options [String] :checksum_algorithm
242
- # Indicates the algorithm used to create the checksum for the object
243
+ # Indicates the algorithm used to create the checksum for the request
243
244
  # when you use the SDK. This header will not provide any additional
244
245
  # functionality if you don't use the SDK. When you send this header,
245
246
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -206,7 +206,7 @@ module Aws::S3
206
206
  #
207
207
  # bucket_lifecycle.put({
208
208
  # content_md5: "ContentMD5",
209
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
209
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
210
210
  # lifecycle_configuration: {
211
211
  # rules: [ # required
212
212
  # {
@@ -246,7 +246,7 @@ module Aws::S3
246
246
  # (CLI) or Amazon Web Services SDKs, this field is calculated
247
247
  # automatically.
248
248
  # @option options [String] :checksum_algorithm
249
- # Indicates the algorithm used to create the checksum for the object
249
+ # Indicates the algorithm used to create the checksum for the request
250
250
  # when you use the SDK. This header will not provide any additional
251
251
  # functionality if you don't use the SDK. When you send this header,
252
252
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -43,7 +43,7 @@ module Aws::S3
43
43
  # Indicates which default minimum object size behavior is applied to the
44
44
  # lifecycle configuration.
45
45
  #
46
- # <note markdown="1"> This parameter applies to general purpose buckets only. It is not
46
+ # <note markdown="1"> This parameter applies to general purpose buckets only. It isn't
47
47
  # supported for directory bucket lifecycle configurations.
48
48
  #
49
49
  # </note>
@@ -230,7 +230,7 @@ module Aws::S3
230
230
  # @example Request syntax with placeholder values
231
231
  #
232
232
  # bucket_lifecycle_configuration.put({
233
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
233
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
234
234
  # lifecycle_configuration: {
235
235
  # rules: [ # required
236
236
  # {
@@ -291,7 +291,7 @@ module Aws::S3
291
291
  # })
292
292
  # @param [Hash] options ({})
293
293
  # @option options [String] :checksum_algorithm
294
- # Indicates the algorithm used to create the checksum for the object
294
+ # Indicates the algorithm used to create the checksum for the request
295
295
  # when you use the SDK. This header will not provide any additional
296
296
  # functionality if you don't use the SDK. When you send this header,
297
297
  # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
@@ -213,7 +213,7 @@ module Aws::S3
213
213
  # },
214
214
  # },
215
215
  # content_md5: "ContentMD5",
216
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
216
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
217
217
  # expected_bucket_owner: "AccountId",
218
218
  # })
219
219
  # @param [Hash] options ({})
@@ -226,7 +226,7 @@ module Aws::S3
226
226
  # (CLI) or Amazon Web Services SDKs, this field is calculated
227
227
  # automatically.
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`