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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +202 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/bucket.rb +86 -35
- data/lib/aws-sdk-s3/bucket_acl.rb +7 -6
- data/lib/aws-sdk-s3/bucket_cors.rb +6 -5
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +2 -2
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +3 -3
- data/lib/aws-sdk-s3/bucket_logging.rb +2 -2
- data/lib/aws-sdk-s3/bucket_policy.rb +6 -5
- data/lib/aws-sdk-s3/bucket_request_payment.rb +3 -3
- data/lib/aws-sdk-s3/bucket_tagging.rb +3 -3
- data/lib/aws-sdk-s3/bucket_versioning.rb +42 -9
- data/lib/aws-sdk-s3/bucket_website.rb +3 -3
- data/lib/aws-sdk-s3/client.rb +3038 -1226
- data/lib/aws-sdk-s3/client_api.rb +492 -164
- data/lib/aws-sdk-s3/customizations/object.rb +76 -86
- data/lib/aws-sdk-s3/customizations.rb +4 -1
- data/lib/aws-sdk-s3/default_executor.rb +103 -0
- data/lib/aws-sdk-s3/encryption/client.rb +2 -2
- data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +2 -0
- data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +2 -0
- data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/client.rb +98 -23
- data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +7 -162
- data/lib/aws-sdk-s3/encryptionV2/decryption.rb +205 -0
- data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +17 -0
- data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +8 -0
- data/lib/aws-sdk-s3/encryptionV2/utils.rb +5 -0
- data/lib/aws-sdk-s3/encryptionV3/client.rb +885 -0
- data/lib/aws-sdk-s3/encryptionV3/decrypt_handler.rb +98 -0
- data/lib/aws-sdk-s3/encryptionV3/decryption.rb +244 -0
- data/lib/aws-sdk-s3/encryptionV3/default_cipher_provider.rb +159 -0
- data/lib/aws-sdk-s3/encryptionV3/default_key_provider.rb +35 -0
- data/lib/aws-sdk-s3/encryptionV3/encrypt_handler.rb +98 -0
- data/lib/aws-sdk-s3/encryptionV3/errors.rb +47 -0
- data/lib/aws-sdk-s3/encryptionV3/io_auth_decrypter.rb +60 -0
- data/lib/aws-sdk-s3/encryptionV3/io_decrypter.rb +35 -0
- data/lib/aws-sdk-s3/encryptionV3/io_encrypter.rb +84 -0
- data/lib/aws-sdk-s3/encryptionV3/key_provider.rb +28 -0
- data/lib/aws-sdk-s3/encryptionV3/kms_cipher_provider.rb +159 -0
- data/lib/aws-sdk-s3/encryptionV3/materials.rb +58 -0
- data/lib/aws-sdk-s3/encryptionV3/utils.rb +321 -0
- data/lib/aws-sdk-s3/encryption_v2.rb +1 -0
- data/lib/aws-sdk-s3/encryption_v3.rb +24 -0
- data/lib/aws-sdk-s3/endpoint_parameters.rb +17 -17
- data/lib/aws-sdk-s3/endpoint_provider.rb +562 -304
- data/lib/aws-sdk-s3/endpoints.rb +110 -0
- data/lib/aws-sdk-s3/errors.rb +11 -0
- data/lib/aws-sdk-s3/file_downloader.rb +189 -143
- data/lib/aws-sdk-s3/file_uploader.rb +9 -13
- data/lib/aws-sdk-s3/legacy_signer.rb +2 -1
- data/lib/aws-sdk-s3/multipart_download_error.rb +8 -0
- data/lib/aws-sdk-s3/multipart_file_uploader.rb +105 -102
- data/lib/aws-sdk-s3/multipart_stream_uploader.rb +96 -107
- data/lib/aws-sdk-s3/multipart_upload.rb +50 -6
- data/lib/aws-sdk-s3/multipart_upload_error.rb +3 -4
- data/lib/aws-sdk-s3/multipart_upload_part.rb +50 -34
- data/lib/aws-sdk-s3/object.rb +264 -137
- data/lib/aws-sdk-s3/object_acl.rb +12 -6
- data/lib/aws-sdk-s3/object_multipart_copier.rb +2 -1
- data/lib/aws-sdk-s3/object_summary.rb +179 -103
- data/lib/aws-sdk-s3/object_version.rb +25 -23
- data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
- data/lib/aws-sdk-s3/plugins/endpoints.rb +1 -1
- data/lib/aws-sdk-s3/plugins/express_session_auth.rb +11 -20
- data/lib/aws-sdk-s3/plugins/md5s.rb +10 -71
- data/lib/aws-sdk-s3/plugins/streaming_retry.rb +5 -7
- data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -1
- data/lib/aws-sdk-s3/presigner.rb +4 -5
- data/lib/aws-sdk-s3/resource.rb +7 -1
- data/lib/aws-sdk-s3/transfer_manager.rb +303 -0
- data/lib/aws-sdk-s3/types.rb +2907 -1059
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/bucket.rbs +16 -6
- data/sig/bucket_acl.rbs +1 -1
- data/sig/bucket_cors.rbs +1 -1
- data/sig/bucket_lifecycle.rbs +1 -1
- data/sig/bucket_lifecycle_configuration.rbs +1 -1
- data/sig/bucket_logging.rbs +1 -1
- data/sig/bucket_policy.rbs +1 -1
- data/sig/bucket_request_payment.rbs +1 -1
- data/sig/bucket_tagging.rbs +1 -1
- data/sig/bucket_versioning.rbs +3 -3
- data/sig/bucket_website.rbs +1 -1
- data/sig/client.rbs +226 -64
- data/sig/errors.rbs +2 -0
- data/sig/multipart_upload.rbs +9 -2
- data/sig/multipart_upload_part.rbs +5 -1
- data/sig/object.rbs +31 -15
- data/sig/object_acl.rbs +1 -1
- data/sig/object_summary.rbs +22 -15
- data/sig/object_version.rbs +5 -2
- data/sig/resource.rbs +11 -2
- data/sig/types.rbs +281 -64
- metadata +26 -10
- data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +0 -31
data/lib/aws-sdk-s3/object.rb
CHANGED
|
@@ -97,9 +97,10 @@ module Aws::S3
|
|
|
97
97
|
# For more information about archiving objects, see [Transitioning
|
|
98
98
|
# Objects: General Considerations][2].
|
|
99
99
|
#
|
|
100
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
|
101
|
-
#
|
|
102
|
-
#
|
|
100
|
+
# <note markdown="1"> This functionality is not supported for directory buckets. Directory
|
|
101
|
+
# buckets only support `EXPRESS_ONEZONE` (the S3 Express One Zone
|
|
102
|
+
# storage class) in Availability Zones and `ONEZONE_IA` (the S3 One
|
|
103
|
+
# Zone-Infrequent Access storage class) in Dedicated Local Zones.
|
|
103
104
|
#
|
|
104
105
|
# </note>
|
|
105
106
|
#
|
|
@@ -134,14 +135,14 @@ module Aws::S3
|
|
|
134
135
|
data[:content_length]
|
|
135
136
|
end
|
|
136
137
|
|
|
137
|
-
# The
|
|
138
|
-
# only
|
|
139
|
-
# API operation on an object that was uploaded using
|
|
140
|
-
# this value may not be a direct checksum value of
|
|
141
|
-
# Instead, it's a calculation based on the checksum
|
|
142
|
-
# individual part. For more information about how
|
|
143
|
-
# calculated with multipart uploads, see [ Checking object
|
|
144
|
-
# in the *Amazon S3 User Guide*.
|
|
138
|
+
# The Base64 encoded, 32-bit `CRC32 checksum` of the object. This
|
|
139
|
+
# checksum is only present if the checksum was uploaded with the object.
|
|
140
|
+
# When you use an API operation on an object that was uploaded using
|
|
141
|
+
# multipart uploads, this value may not be a direct checksum value of
|
|
142
|
+
# the full object. Instead, it's a calculation based on the checksum
|
|
143
|
+
# values of each individual part. For more information about how
|
|
144
|
+
# checksums are calculated with multipart uploads, see [ Checking object
|
|
145
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
|
145
146
|
#
|
|
146
147
|
#
|
|
147
148
|
#
|
|
@@ -151,14 +152,14 @@ module Aws::S3
|
|
|
151
152
|
data[:checksum_crc32]
|
|
152
153
|
end
|
|
153
154
|
|
|
154
|
-
# The
|
|
155
|
-
# only
|
|
156
|
-
# API operation on an object that was uploaded using
|
|
157
|
-
# this value may not be a direct checksum value of
|
|
158
|
-
# Instead, it's a calculation based on the checksum
|
|
159
|
-
# individual part. For more information about how
|
|
160
|
-
# calculated with multipart uploads, see [ Checking object
|
|
161
|
-
# in the *Amazon S3 User Guide*.
|
|
155
|
+
# The Base64 encoded, 32-bit `CRC32C` checksum of the object. This
|
|
156
|
+
# checksum is only present if the checksum was uploaded with the object.
|
|
157
|
+
# When you use an API operation on an object that was uploaded using
|
|
158
|
+
# multipart uploads, this value may not be a direct checksum value of
|
|
159
|
+
# the full object. Instead, it's a calculation based on the checksum
|
|
160
|
+
# values of each individual part. For more information about how
|
|
161
|
+
# checksums are calculated with multipart uploads, see [ Checking object
|
|
162
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
|
162
163
|
#
|
|
163
164
|
#
|
|
164
165
|
#
|
|
@@ -168,14 +169,26 @@ module Aws::S3
|
|
|
168
169
|
data[:checksum_crc32c]
|
|
169
170
|
end
|
|
170
171
|
|
|
171
|
-
# The
|
|
172
|
-
#
|
|
173
|
-
#
|
|
174
|
-
#
|
|
175
|
-
#
|
|
176
|
-
#
|
|
177
|
-
#
|
|
178
|
-
#
|
|
172
|
+
# The Base64 encoded, 64-bit `CRC64NVME` checksum of the object. For
|
|
173
|
+
# more information, see [Checking object integrity in the Amazon S3 User
|
|
174
|
+
# Guide][1].
|
|
175
|
+
#
|
|
176
|
+
#
|
|
177
|
+
#
|
|
178
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
179
|
+
# @return [String]
|
|
180
|
+
def checksum_crc64nvme
|
|
181
|
+
data[:checksum_crc64nvme]
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
# The Base64 encoded, 160-bit `SHA1` digest of the object. This checksum
|
|
185
|
+
# is only present if the checksum was uploaded with the object. When you
|
|
186
|
+
# use the API operation on an object that was uploaded using multipart
|
|
187
|
+
# uploads, this value may not be a direct checksum value of the full
|
|
188
|
+
# object. Instead, it's a calculation based on the checksum values of
|
|
189
|
+
# each individual part. For more information about how checksums are
|
|
190
|
+
# calculated with multipart uploads, see [ Checking object integrity][1]
|
|
191
|
+
# in the *Amazon S3 User Guide*.
|
|
179
192
|
#
|
|
180
193
|
#
|
|
181
194
|
#
|
|
@@ -185,14 +198,14 @@ module Aws::S3
|
|
|
185
198
|
data[:checksum_sha1]
|
|
186
199
|
end
|
|
187
200
|
|
|
188
|
-
# The
|
|
189
|
-
# only
|
|
190
|
-
# API operation on an object that was uploaded using
|
|
191
|
-
# this value may not be a direct checksum value of
|
|
192
|
-
# Instead, it's a calculation based on the checksum
|
|
193
|
-
# individual part. For more information about how
|
|
194
|
-
# calculated with multipart uploads, see [ Checking object
|
|
195
|
-
# in the *Amazon S3 User Guide*.
|
|
201
|
+
# The Base64 encoded, 256-bit `SHA256` digest of the object. This
|
|
202
|
+
# checksum is only present if the checksum was uploaded with the object.
|
|
203
|
+
# When you use an API operation on an object that was uploaded using
|
|
204
|
+
# multipart uploads, this value may not be a direct checksum value of
|
|
205
|
+
# the full object. Instead, it's a calculation based on the checksum
|
|
206
|
+
# values of each individual part. For more information about how
|
|
207
|
+
# checksums are calculated with multipart uploads, see [ Checking object
|
|
208
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
|
196
209
|
#
|
|
197
210
|
#
|
|
198
211
|
#
|
|
@@ -202,6 +215,21 @@ module Aws::S3
|
|
|
202
215
|
data[:checksum_sha256]
|
|
203
216
|
end
|
|
204
217
|
|
|
218
|
+
# The checksum type, which determines how part-level checksums are
|
|
219
|
+
# combined to create an object-level checksum for multipart objects. You
|
|
220
|
+
# can use this header response to verify that the checksum type that is
|
|
221
|
+
# received is the same checksum type that was specified in
|
|
222
|
+
# `CreateMultipartUpload` request. For more information, see [Checking
|
|
223
|
+
# object integrity in the Amazon S3 User Guide][1].
|
|
224
|
+
#
|
|
225
|
+
#
|
|
226
|
+
#
|
|
227
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
228
|
+
# @return [String]
|
|
229
|
+
def checksum_type
|
|
230
|
+
data[:checksum_type]
|
|
231
|
+
end
|
|
232
|
+
|
|
205
233
|
# An entity tag (ETag) is an opaque identifier assigned by a web server
|
|
206
234
|
# to a specific version of a resource found at a URL.
|
|
207
235
|
# @return [String]
|
|
@@ -265,6 +293,13 @@ module Aws::S3
|
|
|
265
293
|
data[:content_type]
|
|
266
294
|
end
|
|
267
295
|
|
|
296
|
+
# The portion of the object returned in the response for a `GET`
|
|
297
|
+
# request.
|
|
298
|
+
# @return [String]
|
|
299
|
+
def content_range
|
|
300
|
+
data[:content_range]
|
|
301
|
+
end
|
|
302
|
+
|
|
268
303
|
# The date and time at which the object is no longer cacheable.
|
|
269
304
|
# @return [Time]
|
|
270
305
|
def expires
|
|
@@ -289,7 +324,12 @@ module Aws::S3
|
|
|
289
324
|
end
|
|
290
325
|
|
|
291
326
|
# The server-side encryption algorithm used when you store this object
|
|
292
|
-
# in Amazon S3
|
|
327
|
+
# in Amazon S3 or Amazon FSx.
|
|
328
|
+
#
|
|
329
|
+
# <note markdown="1"> When accessing data stored in Amazon FSx file systems using S3 access
|
|
330
|
+
# points, the only valid server side encryption option is `aws:fsx`.
|
|
331
|
+
#
|
|
332
|
+
# </note>
|
|
293
333
|
# @return [String]
|
|
294
334
|
def server_side_encryption
|
|
295
335
|
data[:server_side_encryption]
|
|
@@ -346,8 +386,10 @@ module Aws::S3
|
|
|
346
386
|
#
|
|
347
387
|
# For more information, see [Storage Classes][1].
|
|
348
388
|
#
|
|
349
|
-
# <note markdown="1"> <b>Directory buckets </b> -
|
|
350
|
-
#
|
|
389
|
+
# <note markdown="1"> <b>Directory buckets </b> - Directory buckets only support
|
|
390
|
+
# `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
|
|
391
|
+
# Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent Access
|
|
392
|
+
# storage class) in Dedicated Local Zones.
|
|
351
393
|
#
|
|
352
394
|
# </note>
|
|
353
395
|
#
|
|
@@ -360,11 +402,17 @@ module Aws::S3
|
|
|
360
402
|
end
|
|
361
403
|
|
|
362
404
|
# If present, indicates that the requester was successfully charged for
|
|
363
|
-
# the request.
|
|
405
|
+
# the request. For more information, see [Using Requester Pays buckets
|
|
406
|
+
# for storage transfers and usage][1] in the *Amazon Simple Storage
|
|
407
|
+
# Service user guide*.
|
|
364
408
|
#
|
|
365
409
|
# <note markdown="1"> This functionality is not supported for directory buckets.
|
|
366
410
|
#
|
|
367
411
|
# </note>
|
|
412
|
+
#
|
|
413
|
+
#
|
|
414
|
+
#
|
|
415
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html
|
|
368
416
|
# @return [String]
|
|
369
417
|
def request_charged
|
|
370
418
|
data[:request_charged]
|
|
@@ -427,6 +475,24 @@ module Aws::S3
|
|
|
427
475
|
data[:parts_count]
|
|
428
476
|
end
|
|
429
477
|
|
|
478
|
+
# The number of tags, if any, on the object, when you have the relevant
|
|
479
|
+
# permission to read object tags.
|
|
480
|
+
#
|
|
481
|
+
# You can use [GetObjectTagging][1] to retrieve the tag set associated
|
|
482
|
+
# with an object.
|
|
483
|
+
#
|
|
484
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
|
485
|
+
#
|
|
486
|
+
# </note>
|
|
487
|
+
#
|
|
488
|
+
#
|
|
489
|
+
#
|
|
490
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
|
|
491
|
+
# @return [Integer]
|
|
492
|
+
def tag_count
|
|
493
|
+
data[:tag_count]
|
|
494
|
+
end
|
|
495
|
+
|
|
430
496
|
# The Object Lock mode, if any, that's in effect for this object. This
|
|
431
497
|
# header is only returned if the requester has the
|
|
432
498
|
# `s3:GetObjectRetention` permission. For more information about S3
|
|
@@ -676,7 +742,7 @@ module Aws::S3
|
|
|
676
742
|
# object.copy_from({
|
|
677
743
|
# acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
|
|
678
744
|
# cache_control: "CacheControl",
|
|
679
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
745
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
680
746
|
# content_disposition: "ContentDisposition",
|
|
681
747
|
# content_encoding: "ContentEncoding",
|
|
682
748
|
# content_language: "ContentLanguage",
|
|
@@ -691,13 +757,15 @@ module Aws::S3
|
|
|
691
757
|
# grant_read: "GrantRead",
|
|
692
758
|
# grant_read_acp: "GrantReadACP",
|
|
693
759
|
# grant_write_acp: "GrantWriteACP",
|
|
760
|
+
# if_match: "IfMatch",
|
|
761
|
+
# if_none_match: "IfNoneMatch",
|
|
694
762
|
# metadata: {
|
|
695
763
|
# "MetadataKey" => "MetadataValue",
|
|
696
764
|
# },
|
|
697
765
|
# metadata_directive: "COPY", # accepts COPY, REPLACE
|
|
698
766
|
# tagging_directive: "COPY", # accepts COPY, REPLACE
|
|
699
|
-
# server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
|
|
700
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
767
|
+
# server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
768
|
+
# 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
|
|
701
769
|
# website_redirect_location: "WebsiteRedirectLocation",
|
|
702
770
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
|
703
771
|
# sse_customer_key: "SSECustomerKey",
|
|
@@ -947,6 +1015,35 @@ module Aws::S3
|
|
|
947
1015
|
# * This functionality is not supported for Amazon S3 on Outposts.
|
|
948
1016
|
#
|
|
949
1017
|
# </note>
|
|
1018
|
+
# @option options [String] :if_match
|
|
1019
|
+
# Copies the object if the entity tag (ETag) of the destination object
|
|
1020
|
+
# matches the specified tag. If the ETag values do not match, the
|
|
1021
|
+
# operation returns a `412 Precondition Failed` error. If a concurrent
|
|
1022
|
+
# operation occurs during the upload S3 returns a `409
|
|
1023
|
+
# ConditionalRequestConflict` response. On a 409 failure you should
|
|
1024
|
+
# fetch the object's ETag and retry the upload.
|
|
1025
|
+
#
|
|
1026
|
+
# Expects the ETag value as a string.
|
|
1027
|
+
#
|
|
1028
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
|
1029
|
+
#
|
|
1030
|
+
#
|
|
1031
|
+
#
|
|
1032
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
1033
|
+
# @option options [String] :if_none_match
|
|
1034
|
+
# Copies the object only if the object key name at the destination does
|
|
1035
|
+
# not already exist in the bucket specified. Otherwise, Amazon S3
|
|
1036
|
+
# returns a `412 Precondition Failed` error. If a concurrent operation
|
|
1037
|
+
# occurs during the upload S3 returns a `409 ConditionalRequestConflict`
|
|
1038
|
+
# response. On a 409 failure you should retry the upload.
|
|
1039
|
+
#
|
|
1040
|
+
# Expects the '*' (asterisk) character.
|
|
1041
|
+
#
|
|
1042
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
|
1043
|
+
#
|
|
1044
|
+
#
|
|
1045
|
+
#
|
|
1046
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
950
1047
|
# @option options [Hash<String,String>] :metadata
|
|
951
1048
|
# A map of metadata to store with the object in S3.
|
|
952
1049
|
# @option options [String] :metadata_directive
|
|
@@ -1087,6 +1184,14 @@ module Aws::S3
|
|
|
1087
1184
|
# key is the same customer managed key that you specified for the
|
|
1088
1185
|
# directory bucket's default encryption configuration.
|
|
1089
1186
|
#
|
|
1187
|
+
# * <b>S3 access points for Amazon FSx </b> - When accessing data stored
|
|
1188
|
+
# in Amazon FSx file systems using S3 access points, the only valid
|
|
1189
|
+
# server side encryption option is `aws:fsx`. All Amazon FSx file
|
|
1190
|
+
# systems have encryption configured by default and are encrypted at
|
|
1191
|
+
# rest. Data is automatically encrypted before being written to the
|
|
1192
|
+
# file system, and automatically decrypted as it is read. These
|
|
1193
|
+
# processes are handled transparently by Amazon FSx.
|
|
1194
|
+
#
|
|
1090
1195
|
#
|
|
1091
1196
|
#
|
|
1092
1197
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
|
|
@@ -1101,10 +1206,12 @@ module Aws::S3
|
|
|
1101
1206
|
# availability. Depending on performance needs, you can specify a
|
|
1102
1207
|
# different Storage Class.
|
|
1103
1208
|
#
|
|
1104
|
-
# <note markdown="1"> * <b>Directory buckets </b> -
|
|
1105
|
-
# Express One Zone storage class
|
|
1106
|
-
#
|
|
1107
|
-
#
|
|
1209
|
+
# <note markdown="1"> * <b>Directory buckets </b> - Directory buckets only support
|
|
1210
|
+
# `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
|
|
1211
|
+
# Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
|
|
1212
|
+
# Access storage class) in Dedicated Local Zones. Unsupported storage
|
|
1213
|
+
# class values won't write a destination object and will respond with
|
|
1214
|
+
# the HTTP status code `400 Bad Request`.
|
|
1108
1215
|
#
|
|
1109
1216
|
# * <b>Amazon S3 on Outposts </b> - S3 on Outposts only uses the
|
|
1110
1217
|
# `OUTPOSTS` Storage Class.
|
|
@@ -1192,20 +1299,17 @@ module Aws::S3
|
|
|
1192
1299
|
# Signature Version in Request Authentication][1] in the *Amazon S3 User
|
|
1193
1300
|
# Guide*.
|
|
1194
1301
|
#
|
|
1195
|
-
# **Directory buckets** -
|
|
1196
|
-
#
|
|
1197
|
-
#
|
|
1198
|
-
#
|
|
1199
|
-
#
|
|
1200
|
-
# x-amz-server-side-encryption-aws-kms-key-id` header
|
|
1201
|
-
#
|
|
1202
|
-
#
|
|
1203
|
-
#
|
|
1204
|
-
#
|
|
1205
|
-
#
|
|
1206
|
-
# support 1 [customer managed key][2] per directory bucket for the
|
|
1207
|
-
# lifetime of the bucket. The [Amazon Web Services managed key][3]
|
|
1208
|
-
# (`aws/s3`) isn't supported.
|
|
1302
|
+
# **Directory buckets** - To encrypt data using SSE-KMS, it's
|
|
1303
|
+
# recommended to specify the `x-amz-server-side-encryption` header to
|
|
1304
|
+
# `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
|
|
1305
|
+
# header implicitly uses the bucket's default KMS customer managed key
|
|
1306
|
+
# ID. If you want to explicitly set the `
|
|
1307
|
+
# x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
|
|
1308
|
+
# bucket's default customer managed key (using key ID or ARN, not
|
|
1309
|
+
# alias). Your SSE-KMS configuration can only support 1 [customer
|
|
1310
|
+
# managed key][2] per directory bucket's lifetime. The [Amazon Web
|
|
1311
|
+
# Services managed key][3] (`aws/s3`) isn't supported. Incorrect key
|
|
1312
|
+
# specification results in an HTTP `400 Bad Request` error.
|
|
1209
1313
|
#
|
|
1210
1314
|
#
|
|
1211
1315
|
#
|
|
@@ -1462,21 +1566,19 @@ module Aws::S3
|
|
|
1462
1566
|
# you provide does not match the actual owner of the bucket, the request
|
|
1463
1567
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
|
1464
1568
|
# @option options [String] :if_match
|
|
1465
|
-
#
|
|
1466
|
-
#
|
|
1467
|
-
#
|
|
1468
|
-
#
|
|
1469
|
-
# response`.
|
|
1470
|
-
#
|
|
1471
|
-
# For more information about conditional requests, see [RFC 7232][1].
|
|
1569
|
+
# Deletes the object if the ETag (entity tag) value provided during the
|
|
1570
|
+
# delete operation matches the ETag of the object in S3. If the ETag
|
|
1571
|
+
# values do not match, the operation returns a `412 Precondition Failed`
|
|
1572
|
+
# error.
|
|
1472
1573
|
#
|
|
1473
|
-
#
|
|
1574
|
+
# Expects the ETag value as a string. `If-Match` does accept a string
|
|
1575
|
+
# value of an '*' (asterisk) character to denote a match of any ETag.
|
|
1474
1576
|
#
|
|
1475
|
-
#
|
|
1577
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
|
1476
1578
|
#
|
|
1477
1579
|
#
|
|
1478
1580
|
#
|
|
1479
|
-
# [1]: https://
|
|
1581
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
1480
1582
|
# @option options [Time,DateTime,Date,Integer,String] :if_match_last_modified_time
|
|
1481
1583
|
# If present, the object is deleted only if its modification times
|
|
1482
1584
|
# matches the provided `Timestamp`. If the `Timestamp` values do not
|
|
@@ -1757,15 +1859,6 @@ module Aws::S3
|
|
|
1757
1859
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
|
1758
1860
|
# @option options [String] :checksum_mode
|
|
1759
1861
|
# To retrieve the checksum, this mode must be enabled.
|
|
1760
|
-
#
|
|
1761
|
-
# **General purpose buckets** - In addition, if you enable checksum mode
|
|
1762
|
-
# and the object is uploaded with a [checksum][1] and encrypted with an
|
|
1763
|
-
# Key Management Service (KMS) key, you must have permission to use the
|
|
1764
|
-
# `kms:Decrypt` action to retrieve the checksum.
|
|
1765
|
-
#
|
|
1766
|
-
#
|
|
1767
|
-
#
|
|
1768
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
|
1769
1862
|
# @return [Types::GetObjectOutput]
|
|
1770
1863
|
def get(options = {}, &block)
|
|
1771
1864
|
options = options.merge(
|
|
@@ -1795,8 +1888,8 @@ module Aws::S3
|
|
|
1795
1888
|
# metadata: {
|
|
1796
1889
|
# "MetadataKey" => "MetadataValue",
|
|
1797
1890
|
# },
|
|
1798
|
-
# server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
|
|
1799
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
1891
|
+
# server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
1892
|
+
# 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
|
|
1800
1893
|
# website_redirect_location: "WebsiteRedirectLocation",
|
|
1801
1894
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
|
1802
1895
|
# sse_customer_key: "SSECustomerKey",
|
|
@@ -1810,7 +1903,8 @@ module Aws::S3
|
|
|
1810
1903
|
# object_lock_retain_until_date: Time.now,
|
|
1811
1904
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
|
1812
1905
|
# expected_bucket_owner: "AccountId",
|
|
1813
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
1906
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
1907
|
+
# checksum_type: "COMPOSITE", # accepts COMPOSITE, FULL_OBJECT
|
|
1814
1908
|
# })
|
|
1815
1909
|
# @param [Hash] options ({})
|
|
1816
1910
|
# @option options [String] :acl
|
|
@@ -2112,7 +2206,7 @@ module Aws::S3
|
|
|
2112
2206
|
# A map of metadata to store with the object in S3.
|
|
2113
2207
|
# @option options [String] :server_side_encryption
|
|
2114
2208
|
# The server-side encryption algorithm used when you store this object
|
|
2115
|
-
# in Amazon S3
|
|
2209
|
+
# in Amazon S3 or Amazon FSx.
|
|
2116
2210
|
#
|
|
2117
2211
|
# * <b>Directory buckets </b> - For directory buckets, there are only
|
|
2118
2212
|
# two supported options for server-side encryption: server-side
|
|
@@ -2154,6 +2248,14 @@ module Aws::S3
|
|
|
2154
2248
|
#
|
|
2155
2249
|
# </note>
|
|
2156
2250
|
#
|
|
2251
|
+
# * <b>S3 access points for Amazon FSx </b> - When accessing data stored
|
|
2252
|
+
# in Amazon FSx file systems using S3 access points, the only valid
|
|
2253
|
+
# server side encryption option is `aws:fsx`. All Amazon FSx file
|
|
2254
|
+
# systems have encryption configured by default and are encrypted at
|
|
2255
|
+
# rest. Data is automatically encrypted before being written to the
|
|
2256
|
+
# file system, and automatically decrypted as it is read. These
|
|
2257
|
+
# processes are handled transparently by Amazon FSx.
|
|
2258
|
+
#
|
|
2157
2259
|
#
|
|
2158
2260
|
#
|
|
2159
2261
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
|
@@ -2167,8 +2269,9 @@ module Aws::S3
|
|
|
2167
2269
|
# a different Storage Class. For more information, see [Storage
|
|
2168
2270
|
# Classes][1] in the *Amazon S3 User Guide*.
|
|
2169
2271
|
#
|
|
2170
|
-
# <note markdown="1"> *
|
|
2171
|
-
#
|
|
2272
|
+
# <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express One
|
|
2273
|
+
# Zone storage class) in Availability Zones and `ONEZONE_IA` (the S3
|
|
2274
|
+
# One Zone-Infrequent Access storage class) in Dedicated Local Zones.
|
|
2172
2275
|
#
|
|
2173
2276
|
# * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
|
|
2174
2277
|
#
|
|
@@ -2225,20 +2328,17 @@ module Aws::S3
|
|
|
2225
2328
|
# `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
|
2226
2329
|
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
|
2227
2330
|
#
|
|
2228
|
-
# **Directory buckets** -
|
|
2229
|
-
#
|
|
2230
|
-
#
|
|
2231
|
-
#
|
|
2232
|
-
#
|
|
2233
|
-
# x-amz-server-side-encryption-aws-kms-key-id` header
|
|
2234
|
-
#
|
|
2235
|
-
#
|
|
2236
|
-
#
|
|
2237
|
-
#
|
|
2238
|
-
#
|
|
2239
|
-
# support 1 [customer managed key][1] per directory bucket for the
|
|
2240
|
-
# lifetime of the bucket. The [Amazon Web Services managed key][2]
|
|
2241
|
-
# (`aws/s3`) isn't supported.
|
|
2331
|
+
# **Directory buckets** - To encrypt data using SSE-KMS, it's
|
|
2332
|
+
# recommended to specify the `x-amz-server-side-encryption` header to
|
|
2333
|
+
# `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
|
|
2334
|
+
# header implicitly uses the bucket's default KMS customer managed key
|
|
2335
|
+
# ID. If you want to explicitly set the `
|
|
2336
|
+
# x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
|
|
2337
|
+
# bucket's default customer managed key (using key ID or ARN, not
|
|
2338
|
+
# alias). Your SSE-KMS configuration can only support 1 [customer
|
|
2339
|
+
# managed key][1] per directory bucket's lifetime. The [Amazon Web
|
|
2340
|
+
# Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
|
|
2341
|
+
# specification results in an HTTP `400 Bad Request` error.
|
|
2242
2342
|
#
|
|
2243
2343
|
#
|
|
2244
2344
|
#
|
|
@@ -2246,7 +2346,7 @@ module Aws::S3
|
|
|
2246
2346
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
|
2247
2347
|
# @option options [String] :ssekms_encryption_context
|
|
2248
2348
|
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
|
2249
|
-
# object encryption. The value of this header is a Base64
|
|
2349
|
+
# object encryption. The value of this header is a Base64 encoded string
|
|
2250
2350
|
# of a UTF-8 encoded JSON, which contains the encryption context as
|
|
2251
2351
|
# key-value pairs.
|
|
2252
2352
|
#
|
|
@@ -2335,6 +2435,14 @@ module Aws::S3
|
|
|
2335
2435
|
#
|
|
2336
2436
|
#
|
|
2337
2437
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2438
|
+
# @option options [String] :checksum_type
|
|
2439
|
+
# Indicates the checksum type that you want Amazon S3 to use to
|
|
2440
|
+
# calculate the object’s checksum value. For more information, see
|
|
2441
|
+
# [Checking object integrity in the Amazon S3 User Guide][1].
|
|
2442
|
+
#
|
|
2443
|
+
#
|
|
2444
|
+
#
|
|
2445
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2338
2446
|
# @return [MultipartUpload]
|
|
2339
2447
|
def initiate_multipart_upload(options = {})
|
|
2340
2448
|
options = options.merge(
|
|
@@ -2364,9 +2472,10 @@ module Aws::S3
|
|
|
2364
2472
|
# content_length: 1,
|
|
2365
2473
|
# content_md5: "ContentMD5",
|
|
2366
2474
|
# content_type: "ContentType",
|
|
2367
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
2475
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
2368
2476
|
# checksum_crc32: "ChecksumCRC32",
|
|
2369
2477
|
# checksum_crc32c: "ChecksumCRC32C",
|
|
2478
|
+
# checksum_crc64nvme: "ChecksumCRC64NVME",
|
|
2370
2479
|
# checksum_sha1: "ChecksumSHA1",
|
|
2371
2480
|
# checksum_sha256: "ChecksumSHA256",
|
|
2372
2481
|
# expires: Time.now,
|
|
@@ -2380,8 +2489,8 @@ module Aws::S3
|
|
|
2380
2489
|
# metadata: {
|
|
2381
2490
|
# "MetadataKey" => "MetadataValue",
|
|
2382
2491
|
# },
|
|
2383
|
-
# server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
|
|
2384
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
2492
|
+
# server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
2493
|
+
# 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
|
|
2385
2494
|
# website_redirect_location: "WebsiteRedirectLocation",
|
|
2386
2495
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
|
2387
2496
|
# sse_customer_key: "SSECustomerKey",
|
|
@@ -2472,7 +2581,7 @@ module Aws::S3
|
|
|
2472
2581
|
#
|
|
2473
2582
|
# [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length
|
|
2474
2583
|
# @option options [String] :content_md5
|
|
2475
|
-
# The
|
|
2584
|
+
# The Base64 encoded 128-bit `MD5` digest of the message (without the
|
|
2476
2585
|
# headers) according to RFC 1864. This header can be used as a message
|
|
2477
2586
|
# integrity check to verify that the data is the same data that was
|
|
2478
2587
|
# originally sent. Although it is optional, we recommend using the
|
|
@@ -2519,6 +2628,8 @@ module Aws::S3
|
|
|
2519
2628
|
#
|
|
2520
2629
|
# * `CRC32C`
|
|
2521
2630
|
#
|
|
2631
|
+
# * `CRC64NVME`
|
|
2632
|
+
#
|
|
2522
2633
|
# * `SHA1`
|
|
2523
2634
|
#
|
|
2524
2635
|
# * `SHA256`
|
|
@@ -2528,9 +2639,8 @@ module Aws::S3
|
|
|
2528
2639
|
#
|
|
2529
2640
|
# If the individual checksum value you provide through
|
|
2530
2641
|
# `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
|
|
2531
|
-
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3
|
|
2532
|
-
#
|
|
2533
|
-
# that matches the provided value in `x-amz-checksum-algorithm `.
|
|
2642
|
+
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
|
|
2643
|
+
# request with a `BadDigest` error.
|
|
2534
2644
|
#
|
|
2535
2645
|
# <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
|
|
2536
2646
|
# for any request to upload an object with a retention period configured
|
|
@@ -2550,7 +2660,7 @@ module Aws::S3
|
|
|
2550
2660
|
# @option options [String] :checksum_crc32
|
|
2551
2661
|
# This header can be used as a data integrity check to verify that the
|
|
2552
2662
|
# data received is the same data that was originally sent. This header
|
|
2553
|
-
# specifies the
|
|
2663
|
+
# specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
|
|
2554
2664
|
# For more information, see [Checking object integrity][1] in the
|
|
2555
2665
|
# *Amazon S3 User Guide*.
|
|
2556
2666
|
#
|
|
@@ -2560,17 +2670,28 @@ module Aws::S3
|
|
|
2560
2670
|
# @option options [String] :checksum_crc32c
|
|
2561
2671
|
# This header can be used as a data integrity check to verify that the
|
|
2562
2672
|
# data received is the same data that was originally sent. This header
|
|
2563
|
-
# specifies the
|
|
2673
|
+
# specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object.
|
|
2564
2674
|
# For more information, see [Checking object integrity][1] in the
|
|
2565
2675
|
# *Amazon S3 User Guide*.
|
|
2566
2676
|
#
|
|
2567
2677
|
#
|
|
2568
2678
|
#
|
|
2569
2679
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2680
|
+
# @option options [String] :checksum_crc64nvme
|
|
2681
|
+
# This header can be used as a data integrity check to verify that the
|
|
2682
|
+
# data received is the same data that was originally sent. This header
|
|
2683
|
+
# specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
|
|
2684
|
+
# object. The `CRC64NVME` checksum is always a full object checksum. For
|
|
2685
|
+
# more information, see [Checking object integrity in the Amazon S3 User
|
|
2686
|
+
# Guide][1].
|
|
2687
|
+
#
|
|
2688
|
+
#
|
|
2689
|
+
#
|
|
2690
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2570
2691
|
# @option options [String] :checksum_sha1
|
|
2571
2692
|
# This header can be used as a data integrity check to verify that the
|
|
2572
2693
|
# data received is the same data that was originally sent. This header
|
|
2573
|
-
# specifies the
|
|
2694
|
+
# specifies the Base64 encoded, 160-bit `SHA1` digest of the object. For
|
|
2574
2695
|
# more information, see [Checking object integrity][1] in the *Amazon S3
|
|
2575
2696
|
# User Guide*.
|
|
2576
2697
|
#
|
|
@@ -2580,7 +2701,7 @@ module Aws::S3
|
|
|
2580
2701
|
# @option options [String] :checksum_sha256
|
|
2581
2702
|
# This header can be used as a data integrity check to verify that the
|
|
2582
2703
|
# data received is the same data that was originally sent. This header
|
|
2583
|
-
# specifies the
|
|
2704
|
+
# specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
|
|
2584
2705
|
# For more information, see [Checking object integrity][1] in the
|
|
2585
2706
|
# *Amazon S3 User Guide*.
|
|
2586
2707
|
#
|
|
@@ -2679,8 +2800,7 @@ module Aws::S3
|
|
|
2679
2800
|
# A map of metadata to store with the object in S3.
|
|
2680
2801
|
# @option options [String] :server_side_encryption
|
|
2681
2802
|
# The server-side encryption algorithm that was used when you store this
|
|
2682
|
-
# object in Amazon S3
|
|
2683
|
-
# `aws:kms:dsse`).
|
|
2803
|
+
# object in Amazon S3 or Amazon FSx.
|
|
2684
2804
|
#
|
|
2685
2805
|
# * <b>General purpose buckets </b> - You have four mutually exclusive
|
|
2686
2806
|
# options to protect data using server-side encryption in Amazon S3,
|
|
@@ -2734,6 +2854,14 @@ module Aws::S3
|
|
|
2734
2854
|
#
|
|
2735
2855
|
# </note>
|
|
2736
2856
|
#
|
|
2857
|
+
# * <b>S3 access points for Amazon FSx </b> - When accessing data stored
|
|
2858
|
+
# in Amazon FSx file systems using S3 access points, the only valid
|
|
2859
|
+
# server side encryption option is `aws:fsx`. All Amazon FSx file
|
|
2860
|
+
# systems have encryption configured by default and are encrypted at
|
|
2861
|
+
# rest. Data is automatically encrypted before being written to the
|
|
2862
|
+
# file system, and automatically decrypted as it is read. These
|
|
2863
|
+
# processes are handled transparently by Amazon FSx.
|
|
2864
|
+
#
|
|
2737
2865
|
#
|
|
2738
2866
|
#
|
|
2739
2867
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
|
|
@@ -2748,8 +2876,9 @@ module Aws::S3
|
|
|
2748
2876
|
# a different Storage Class. For more information, see [Storage
|
|
2749
2877
|
# Classes][1] in the *Amazon S3 User Guide*.
|
|
2750
2878
|
#
|
|
2751
|
-
# <note markdown="1"> *
|
|
2752
|
-
#
|
|
2879
|
+
# <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express One
|
|
2880
|
+
# Zone storage class) in Availability Zones and `ONEZONE_IA` (the S3
|
|
2881
|
+
# One Zone-Infrequent Access storage class) in Dedicated Local Zones.
|
|
2753
2882
|
#
|
|
2754
2883
|
# * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
|
|
2755
2884
|
#
|
|
@@ -2827,20 +2956,17 @@ module Aws::S3
|
|
|
2827
2956
|
# `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
|
2828
2957
|
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
|
2829
2958
|
#
|
|
2830
|
-
# **Directory buckets** -
|
|
2831
|
-
#
|
|
2832
|
-
#
|
|
2833
|
-
#
|
|
2834
|
-
#
|
|
2835
|
-
# x-amz-server-side-encryption-aws-kms-key-id` header
|
|
2836
|
-
#
|
|
2837
|
-
#
|
|
2838
|
-
#
|
|
2839
|
-
#
|
|
2840
|
-
#
|
|
2841
|
-
# support 1 [customer managed key][1] per directory bucket for the
|
|
2842
|
-
# lifetime of the bucket. The [Amazon Web Services managed key][2]
|
|
2843
|
-
# (`aws/s3`) isn't supported.
|
|
2959
|
+
# **Directory buckets** - To encrypt data using SSE-KMS, it's
|
|
2960
|
+
# recommended to specify the `x-amz-server-side-encryption` header to
|
|
2961
|
+
# `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
|
|
2962
|
+
# header implicitly uses the bucket's default KMS customer managed key
|
|
2963
|
+
# ID. If you want to explicitly set the `
|
|
2964
|
+
# x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
|
|
2965
|
+
# bucket's default customer managed key (using key ID or ARN, not
|
|
2966
|
+
# alias). Your SSE-KMS configuration can only support 1 [customer
|
|
2967
|
+
# managed key][1] per directory bucket's lifetime. The [Amazon Web
|
|
2968
|
+
# Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
|
|
2969
|
+
# specification results in an HTTP `400 Bad Request` error.
|
|
2844
2970
|
#
|
|
2845
2971
|
#
|
|
2846
2972
|
#
|
|
@@ -2849,7 +2975,7 @@ module Aws::S3
|
|
|
2849
2975
|
# @option options [String] :ssekms_encryption_context
|
|
2850
2976
|
# Specifies the Amazon Web Services KMS Encryption Context as an
|
|
2851
2977
|
# additional encryption context to use for object encryption. The value
|
|
2852
|
-
# of this header is a Base64
|
|
2978
|
+
# of this header is a Base64 encoded string of a UTF-8 encoded JSON,
|
|
2853
2979
|
# which contains the encryption context as key-value pairs. This value
|
|
2854
2980
|
# is stored as object metadata and automatically gets passed on to
|
|
2855
2981
|
# Amazon Web Services KMS for future `GetObject` operations on this
|
|
@@ -3008,7 +3134,7 @@ module Aws::S3
|
|
|
3008
3134
|
# bucket_name: "BucketName", # required
|
|
3009
3135
|
# prefix: "LocationPrefix", # required
|
|
3010
3136
|
# encryption: {
|
|
3011
|
-
# encryption_type: "AES256", # required, accepts AES256, aws:kms, aws:kms:dsse
|
|
3137
|
+
# encryption_type: "AES256", # required, accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
3012
3138
|
# kms_key_id: "SSEKMSKeyId",
|
|
3013
3139
|
# kms_context: "KMSContext",
|
|
3014
3140
|
# },
|
|
@@ -3039,12 +3165,12 @@ module Aws::S3
|
|
|
3039
3165
|
# value: "MetadataValue",
|
|
3040
3166
|
# },
|
|
3041
3167
|
# ],
|
|
3042
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
3168
|
+
# 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
|
|
3043
3169
|
# },
|
|
3044
3170
|
# },
|
|
3045
3171
|
# },
|
|
3046
3172
|
# request_payer: "requester", # accepts requester
|
|
3047
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
3173
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
3048
3174
|
# expected_bucket_owner: "AccountId",
|
|
3049
3175
|
# })
|
|
3050
3176
|
# @param [Hash] options ({})
|
|
@@ -3411,7 +3537,7 @@ module Aws::S3
|
|
|
3411
3537
|
# request_payer: "requester", # accepts requester
|
|
3412
3538
|
# bypass_governance_retention: false,
|
|
3413
3539
|
# expected_bucket_owner: "AccountId",
|
|
3414
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
3540
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
3415
3541
|
# })
|
|
3416
3542
|
# @param options ({})
|
|
3417
3543
|
# @option options [String] :mfa
|
|
@@ -3479,6 +3605,8 @@ module Aws::S3
|
|
|
3479
3605
|
#
|
|
3480
3606
|
# * `CRC32C`
|
|
3481
3607
|
#
|
|
3608
|
+
# * `CRC64NVME`
|
|
3609
|
+
#
|
|
3482
3610
|
# * `SHA1`
|
|
3483
3611
|
#
|
|
3484
3612
|
# * `SHA256`
|
|
@@ -3488,9 +3616,8 @@ module Aws::S3
|
|
|
3488
3616
|
#
|
|
3489
3617
|
# If the individual checksum value you provide through
|
|
3490
3618
|
# `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
|
|
3491
|
-
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3
|
|
3492
|
-
#
|
|
3493
|
-
# that matches the provided value in `x-amz-checksum-algorithm `.
|
|
3619
|
+
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
|
|
3620
|
+
# request with a `BadDigest` error.
|
|
3494
3621
|
#
|
|
3495
3622
|
# If you provide an individual checksum, Amazon S3 ignores any provided
|
|
3496
3623
|
# `ChecksumAlgorithm` parameter.
|