aws-sdk-s3 1.167.0 → 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 +257 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/bucket.rb +145 -39
- 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 +7 -2
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +22 -2
- 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 +4313 -1871
- data/lib/aws-sdk-s3/client_api.rb +619 -160
- 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 +30 -35
- data/lib/aws-sdk-s3/endpoint_provider.rb +572 -278
- data/lib/aws-sdk-s3/endpoints.rb +555 -1403
- data/lib/aws-sdk-s3/errors.rb +55 -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 +83 -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 +357 -131
- 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 +269 -96
- data/lib/aws-sdk-s3/object_version.rb +58 -13
- data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
- data/lib/aws-sdk-s3/plugins/endpoints.rb +2 -205
- data/lib/aws-sdk-s3/plugins/express_session_auth.rb +11 -20
- data/lib/aws-sdk-s3/plugins/http_200_errors.rb +3 -3
- 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 +5 -5
- data/lib/aws-sdk-s3/resource.rb +41 -10
- data/lib/aws-sdk-s3/transfer_manager.rb +303 -0
- data/lib/aws-sdk-s3/types.rb +3758 -1264
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/bucket.rbs +27 -9
- 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 +279 -70
- data/sig/errors.rbs +10 -0
- data/sig/multipart_upload.rbs +12 -3
- data/sig/multipart_upload_part.rbs +5 -1
- data/sig/object.rbs +37 -16
- data/sig/object_acl.rbs +1 -1
- data/sig/object_summary.rbs +28 -16
- data/sig/object_version.rbs +9 -3
- data/sig/resource.rbs +15 -4
- data/sig/types.rbs +373 -66
- metadata +26 -10
- data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +0 -31
|
@@ -84,6 +84,18 @@ module Aws::S3
|
|
|
84
84
|
data[:checksum_algorithm]
|
|
85
85
|
end
|
|
86
86
|
|
|
87
|
+
# The checksum type that is used to calculate the object’s checksum
|
|
88
|
+
# value. For more information, see [Checking object integrity][1] in the
|
|
89
|
+
# *Amazon S3 User Guide*.
|
|
90
|
+
#
|
|
91
|
+
#
|
|
92
|
+
#
|
|
93
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
94
|
+
# @return [String]
|
|
95
|
+
def checksum_type
|
|
96
|
+
data[:checksum_type]
|
|
97
|
+
end
|
|
98
|
+
|
|
87
99
|
# Size in bytes of the object
|
|
88
100
|
# @return [Integer]
|
|
89
101
|
def size
|
|
@@ -92,8 +104,10 @@ module Aws::S3
|
|
|
92
104
|
|
|
93
105
|
# The class of storage used to store the object.
|
|
94
106
|
#
|
|
95
|
-
# <note markdown="1"> **Directory buckets** -
|
|
96
|
-
#
|
|
107
|
+
# <note markdown="1"> **Directory buckets** - Directory buckets only support
|
|
108
|
+
# `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
|
|
109
|
+
# Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent Access
|
|
110
|
+
# storage class) in Dedicated Local Zones.
|
|
97
111
|
#
|
|
98
112
|
# </note>
|
|
99
113
|
# @return [String]
|
|
@@ -118,9 +132,10 @@ module Aws::S3
|
|
|
118
132
|
# archived objects, see [ Working with archived objects][1] in the
|
|
119
133
|
# *Amazon S3 User Guide*.
|
|
120
134
|
#
|
|
121
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
|
122
|
-
#
|
|
123
|
-
#
|
|
135
|
+
# <note markdown="1"> This functionality is not supported for directory buckets. Directory
|
|
136
|
+
# buckets only support `EXPRESS_ONEZONE` (the S3 Express One Zone
|
|
137
|
+
# storage class) in Availability Zones and `ONEZONE_IA` (the S3 One
|
|
138
|
+
# Zone-Infrequent Access storage class) in Dedicated Local Zones.
|
|
124
139
|
#
|
|
125
140
|
# </note>
|
|
126
141
|
#
|
|
@@ -324,7 +339,7 @@ module Aws::S3
|
|
|
324
339
|
# object_summary.copy_from({
|
|
325
340
|
# acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
|
|
326
341
|
# cache_control: "CacheControl",
|
|
327
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
342
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
328
343
|
# content_disposition: "ContentDisposition",
|
|
329
344
|
# content_encoding: "ContentEncoding",
|
|
330
345
|
# content_language: "ContentLanguage",
|
|
@@ -339,13 +354,15 @@ module Aws::S3
|
|
|
339
354
|
# grant_read: "GrantRead",
|
|
340
355
|
# grant_read_acp: "GrantReadACP",
|
|
341
356
|
# grant_write_acp: "GrantWriteACP",
|
|
357
|
+
# if_match: "IfMatch",
|
|
358
|
+
# if_none_match: "IfNoneMatch",
|
|
342
359
|
# metadata: {
|
|
343
360
|
# "MetadataKey" => "MetadataValue",
|
|
344
361
|
# },
|
|
345
362
|
# metadata_directive: "COPY", # accepts COPY, REPLACE
|
|
346
363
|
# tagging_directive: "COPY", # accepts COPY, REPLACE
|
|
347
|
-
# server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
|
|
348
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
364
|
+
# server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
365
|
+
# 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
|
|
349
366
|
# website_redirect_location: "WebsiteRedirectLocation",
|
|
350
367
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
|
351
368
|
# sse_customer_key: "SSECustomerKey",
|
|
@@ -595,6 +612,35 @@ module Aws::S3
|
|
|
595
612
|
# * This functionality is not supported for Amazon S3 on Outposts.
|
|
596
613
|
#
|
|
597
614
|
# </note>
|
|
615
|
+
# @option options [String] :if_match
|
|
616
|
+
# Copies the object if the entity tag (ETag) of the destination object
|
|
617
|
+
# matches the specified tag. If the ETag values do not match, the
|
|
618
|
+
# operation returns a `412 Precondition Failed` error. If a concurrent
|
|
619
|
+
# operation occurs during the upload S3 returns a `409
|
|
620
|
+
# ConditionalRequestConflict` response. On a 409 failure you should
|
|
621
|
+
# fetch the object's ETag and retry the upload.
|
|
622
|
+
#
|
|
623
|
+
# Expects the ETag value as a string.
|
|
624
|
+
#
|
|
625
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
|
626
|
+
#
|
|
627
|
+
#
|
|
628
|
+
#
|
|
629
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
630
|
+
# @option options [String] :if_none_match
|
|
631
|
+
# Copies the object only if the object key name at the destination does
|
|
632
|
+
# not already exist in the bucket specified. Otherwise, Amazon S3
|
|
633
|
+
# returns a `412 Precondition Failed` error. If a concurrent operation
|
|
634
|
+
# occurs during the upload S3 returns a `409 ConditionalRequestConflict`
|
|
635
|
+
# response. On a 409 failure you should retry the upload.
|
|
636
|
+
#
|
|
637
|
+
# Expects the '*' (asterisk) character.
|
|
638
|
+
#
|
|
639
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
|
640
|
+
#
|
|
641
|
+
#
|
|
642
|
+
#
|
|
643
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
598
644
|
# @option options [Hash<String,String>] :metadata
|
|
599
645
|
# A map of metadata to store with the object in S3.
|
|
600
646
|
# @option options [String] :metadata_directive
|
|
@@ -723,17 +769,25 @@ module Aws::S3
|
|
|
723
769
|
# * To encrypt new object copies to a directory bucket with SSE-KMS, we
|
|
724
770
|
# recommend you specify SSE-KMS as the directory bucket's default
|
|
725
771
|
# encryption configuration with a KMS key (specifically, a [customer
|
|
726
|
-
# managed key][4]). [Amazon Web Services managed key][5]
|
|
727
|
-
# isn't supported. Your SSE-KMS configuration can only
|
|
728
|
-
# [customer managed key][4] per directory bucket for the
|
|
729
|
-
# the bucket. After you specify a customer managed key for
|
|
730
|
-
# you can't override the customer managed key for the
|
|
731
|
-
# SSE-KMS configuration. Then, when you perform a
|
|
732
|
-
# operation and want to specify server-side encryption
|
|
733
|
-
# new object copies with SSE-KMS in the
|
|
734
|
-
# headers, you must ensure the encryption
|
|
735
|
-
# managed key that you specified for the
|
|
736
|
-
# encryption configuration.
|
|
772
|
+
# managed key][4]). The [Amazon Web Services managed key][5]
|
|
773
|
+
# (`aws/s3`) isn't supported. Your SSE-KMS configuration can only
|
|
774
|
+
# support 1 [customer managed key][4] per directory bucket for the
|
|
775
|
+
# lifetime of the bucket. After you specify a customer managed key for
|
|
776
|
+
# SSE-KMS, you can't override the customer managed key for the
|
|
777
|
+
# bucket's SSE-KMS configuration. Then, when you perform a
|
|
778
|
+
# `CopyObject` operation and want to specify server-side encryption
|
|
779
|
+
# settings for new object copies with SSE-KMS in the
|
|
780
|
+
# encryption-related request headers, you must ensure the encryption
|
|
781
|
+
# key is the same customer managed key that you specified for the
|
|
782
|
+
# directory bucket's default encryption configuration.
|
|
783
|
+
#
|
|
784
|
+
# * <b>S3 access points for Amazon FSx </b> - When accessing data stored
|
|
785
|
+
# in Amazon FSx file systems using S3 access points, the only valid
|
|
786
|
+
# server side encryption option is `aws:fsx`. All Amazon FSx file
|
|
787
|
+
# systems have encryption configured by default and are encrypted at
|
|
788
|
+
# rest. Data is automatically encrypted before being written to the
|
|
789
|
+
# file system, and automatically decrypted as it is read. These
|
|
790
|
+
# processes are handled transparently by Amazon FSx.
|
|
737
791
|
#
|
|
738
792
|
#
|
|
739
793
|
#
|
|
@@ -749,10 +803,12 @@ module Aws::S3
|
|
|
749
803
|
# availability. Depending on performance needs, you can specify a
|
|
750
804
|
# different Storage Class.
|
|
751
805
|
#
|
|
752
|
-
# <note markdown="1"> * <b>Directory buckets </b> -
|
|
753
|
-
# Express One Zone storage class
|
|
754
|
-
#
|
|
755
|
-
#
|
|
806
|
+
# <note markdown="1"> * <b>Directory buckets </b> - Directory buckets only support
|
|
807
|
+
# `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
|
|
808
|
+
# Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent
|
|
809
|
+
# Access storage class) in Dedicated Local Zones. Unsupported storage
|
|
810
|
+
# class values won't write a destination object and will respond with
|
|
811
|
+
# the HTTP status code `400 Bad Request`.
|
|
756
812
|
#
|
|
757
813
|
# * <b>Amazon S3 on Outposts </b> - S3 on Outposts only uses the
|
|
758
814
|
# `OUTPOSTS` Storage Class.
|
|
@@ -840,15 +896,17 @@ module Aws::S3
|
|
|
840
896
|
# Signature Version in Request Authentication][1] in the *Amazon S3 User
|
|
841
897
|
# Guide*.
|
|
842
898
|
#
|
|
843
|
-
# **Directory buckets** -
|
|
844
|
-
#
|
|
845
|
-
# x-amz-server-side-encryption-aws-kms-key-id`
|
|
846
|
-
#
|
|
847
|
-
#
|
|
848
|
-
# key
|
|
849
|
-
#
|
|
850
|
-
#
|
|
851
|
-
#
|
|
899
|
+
# **Directory buckets** - To encrypt data using SSE-KMS, it's
|
|
900
|
+
# recommended to specify the `x-amz-server-side-encryption` header to
|
|
901
|
+
# `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
|
|
902
|
+
# header implicitly uses the bucket's default KMS customer managed key
|
|
903
|
+
# ID. If you want to explicitly set the `
|
|
904
|
+
# x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
|
|
905
|
+
# bucket's default customer managed key (using key ID or ARN, not
|
|
906
|
+
# alias). Your SSE-KMS configuration can only support 1 [customer
|
|
907
|
+
# managed key][2] per directory bucket's lifetime. The [Amazon Web
|
|
908
|
+
# Services managed key][3] (`aws/s3`) isn't supported. Incorrect key
|
|
909
|
+
# specification results in an HTTP `400 Bad Request` error.
|
|
852
910
|
#
|
|
853
911
|
#
|
|
854
912
|
#
|
|
@@ -1055,6 +1113,9 @@ module Aws::S3
|
|
|
1055
1113
|
# request_payer: "requester", # accepts requester
|
|
1056
1114
|
# bypass_governance_retention: false,
|
|
1057
1115
|
# expected_bucket_owner: "AccountId",
|
|
1116
|
+
# if_match: "IfMatch",
|
|
1117
|
+
# if_match_last_modified_time: Time.now,
|
|
1118
|
+
# if_match_size: 1,
|
|
1058
1119
|
# })
|
|
1059
1120
|
# @param [Hash] options ({})
|
|
1060
1121
|
# @option options [String] :mfa
|
|
@@ -1101,6 +1162,44 @@ module Aws::S3
|
|
|
1101
1162
|
# The account ID of the expected bucket owner. If the account ID that
|
|
1102
1163
|
# you provide does not match the actual owner of the bucket, the request
|
|
1103
1164
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
|
1165
|
+
# @option options [String] :if_match
|
|
1166
|
+
# Deletes the object if the ETag (entity tag) value provided during the
|
|
1167
|
+
# delete operation matches the ETag of the object in S3. If the ETag
|
|
1168
|
+
# values do not match, the operation returns a `412 Precondition Failed`
|
|
1169
|
+
# error.
|
|
1170
|
+
#
|
|
1171
|
+
# Expects the ETag value as a string. `If-Match` does accept a string
|
|
1172
|
+
# value of an '*' (asterisk) character to denote a match of any ETag.
|
|
1173
|
+
#
|
|
1174
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
|
1175
|
+
#
|
|
1176
|
+
#
|
|
1177
|
+
#
|
|
1178
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
1179
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_match_last_modified_time
|
|
1180
|
+
# If present, the object is deleted only if its modification times
|
|
1181
|
+
# matches the provided `Timestamp`. If the `Timestamp` values do not
|
|
1182
|
+
# match, the operation returns a `412 Precondition Failed` error. If the
|
|
1183
|
+
# `Timestamp` matches or if the object doesn’t exist, the operation
|
|
1184
|
+
# returns a `204 Success (No Content)` response.
|
|
1185
|
+
#
|
|
1186
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
|
1187
|
+
#
|
|
1188
|
+
# </note>
|
|
1189
|
+
# @option options [Integer] :if_match_size
|
|
1190
|
+
# If present, the object is deleted only if its size matches the
|
|
1191
|
+
# provided size in bytes. If the `Size` value does not match, the
|
|
1192
|
+
# operation returns a `412 Precondition Failed` error. If the `Size`
|
|
1193
|
+
# matches or if the object doesn’t exist, the operation returns a `204
|
|
1194
|
+
# Success (No Content)` response.
|
|
1195
|
+
#
|
|
1196
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
|
1197
|
+
#
|
|
1198
|
+
# </note>
|
|
1199
|
+
#
|
|
1200
|
+
# You can use the `If-Match`, `x-amz-if-match-last-modified-time` and
|
|
1201
|
+
# `x-amz-if-match-size` conditional headers in conjunction with
|
|
1202
|
+
# each-other or individually.
|
|
1104
1203
|
# @return [Types::DeleteObjectOutput]
|
|
1105
1204
|
def delete(options = {})
|
|
1106
1205
|
options = options.merge(
|
|
@@ -1357,15 +1456,6 @@ module Aws::S3
|
|
|
1357
1456
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
|
1358
1457
|
# @option options [String] :checksum_mode
|
|
1359
1458
|
# To retrieve the checksum, this mode must be enabled.
|
|
1360
|
-
#
|
|
1361
|
-
# **General purpose buckets** - In addition, if you enable checksum mode
|
|
1362
|
-
# and the object is uploaded with a [checksum][1] and encrypted with an
|
|
1363
|
-
# Key Management Service (KMS) key, you must have permission to use the
|
|
1364
|
-
# `kms:Decrypt` action to retrieve the checksum.
|
|
1365
|
-
#
|
|
1366
|
-
#
|
|
1367
|
-
#
|
|
1368
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
|
1369
1459
|
# @return [Types::GetObjectOutput]
|
|
1370
1460
|
def get(options = {}, &block)
|
|
1371
1461
|
options = options.merge(
|
|
@@ -1395,8 +1485,8 @@ module Aws::S3
|
|
|
1395
1485
|
# metadata: {
|
|
1396
1486
|
# "MetadataKey" => "MetadataValue",
|
|
1397
1487
|
# },
|
|
1398
|
-
# server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
|
|
1399
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
1488
|
+
# server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
1489
|
+
# 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
|
|
1400
1490
|
# website_redirect_location: "WebsiteRedirectLocation",
|
|
1401
1491
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
|
1402
1492
|
# sse_customer_key: "SSECustomerKey",
|
|
@@ -1410,7 +1500,8 @@ module Aws::S3
|
|
|
1410
1500
|
# object_lock_retain_until_date: Time.now,
|
|
1411
1501
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
|
1412
1502
|
# expected_bucket_owner: "AccountId",
|
|
1413
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
1503
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
1504
|
+
# checksum_type: "COMPOSITE", # accepts COMPOSITE, FULL_OBJECT
|
|
1414
1505
|
# })
|
|
1415
1506
|
# @param [Hash] options ({})
|
|
1416
1507
|
# @option options [String] :acl
|
|
@@ -1712,7 +1803,7 @@ module Aws::S3
|
|
|
1712
1803
|
# A map of metadata to store with the object in S3.
|
|
1713
1804
|
# @option options [String] :server_side_encryption
|
|
1714
1805
|
# The server-side encryption algorithm used when you store this object
|
|
1715
|
-
# in Amazon S3
|
|
1806
|
+
# in Amazon S3 or Amazon FSx.
|
|
1716
1807
|
#
|
|
1717
1808
|
# * <b>Directory buckets </b> - For directory buckets, there are only
|
|
1718
1809
|
# two supported options for server-side encryption: server-side
|
|
@@ -1754,6 +1845,14 @@ module Aws::S3
|
|
|
1754
1845
|
#
|
|
1755
1846
|
# </note>
|
|
1756
1847
|
#
|
|
1848
|
+
# * <b>S3 access points for Amazon FSx </b> - When accessing data stored
|
|
1849
|
+
# in Amazon FSx file systems using S3 access points, the only valid
|
|
1850
|
+
# server side encryption option is `aws:fsx`. All Amazon FSx file
|
|
1851
|
+
# systems have encryption configured by default and are encrypted at
|
|
1852
|
+
# rest. Data is automatically encrypted before being written to the
|
|
1853
|
+
# file system, and automatically decrypted as it is read. These
|
|
1854
|
+
# processes are handled transparently by Amazon FSx.
|
|
1855
|
+
#
|
|
1757
1856
|
#
|
|
1758
1857
|
#
|
|
1759
1858
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
|
@@ -1767,8 +1866,9 @@ module Aws::S3
|
|
|
1767
1866
|
# a different Storage Class. For more information, see [Storage
|
|
1768
1867
|
# Classes][1] in the *Amazon S3 User Guide*.
|
|
1769
1868
|
#
|
|
1770
|
-
# <note markdown="1"> *
|
|
1771
|
-
#
|
|
1869
|
+
# <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express One
|
|
1870
|
+
# Zone storage class) in Availability Zones and `ONEZONE_IA` (the S3
|
|
1871
|
+
# One Zone-Infrequent Access storage class) in Dedicated Local Zones.
|
|
1772
1872
|
#
|
|
1773
1873
|
# * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
|
|
1774
1874
|
#
|
|
@@ -1825,15 +1925,17 @@ module Aws::S3
|
|
|
1825
1925
|
# `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
|
1826
1926
|
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
|
1827
1927
|
#
|
|
1828
|
-
# **Directory buckets** -
|
|
1829
|
-
#
|
|
1830
|
-
# x-amz-server-side-encryption-aws-kms-key-id`
|
|
1831
|
-
#
|
|
1832
|
-
#
|
|
1833
|
-
# key
|
|
1834
|
-
#
|
|
1835
|
-
#
|
|
1836
|
-
#
|
|
1928
|
+
# **Directory buckets** - To encrypt data using SSE-KMS, it's
|
|
1929
|
+
# recommended to specify the `x-amz-server-side-encryption` header to
|
|
1930
|
+
# `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
|
|
1931
|
+
# header implicitly uses the bucket's default KMS customer managed key
|
|
1932
|
+
# ID. If you want to explicitly set the `
|
|
1933
|
+
# x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
|
|
1934
|
+
# bucket's default customer managed key (using key ID or ARN, not
|
|
1935
|
+
# alias). Your SSE-KMS configuration can only support 1 [customer
|
|
1936
|
+
# managed key][1] per directory bucket's lifetime. The [Amazon Web
|
|
1937
|
+
# Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
|
|
1938
|
+
# specification results in an HTTP `400 Bad Request` error.
|
|
1837
1939
|
#
|
|
1838
1940
|
#
|
|
1839
1941
|
#
|
|
@@ -1841,7 +1943,7 @@ module Aws::S3
|
|
|
1841
1943
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
|
1842
1944
|
# @option options [String] :ssekms_encryption_context
|
|
1843
1945
|
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
|
1844
|
-
# object encryption. The value of this header is a Base64
|
|
1946
|
+
# object encryption. The value of this header is a Base64 encoded string
|
|
1845
1947
|
# of a UTF-8 encoded JSON, which contains the encryption context as
|
|
1846
1948
|
# key-value pairs.
|
|
1847
1949
|
#
|
|
@@ -1930,6 +2032,14 @@ module Aws::S3
|
|
|
1930
2032
|
#
|
|
1931
2033
|
#
|
|
1932
2034
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2035
|
+
# @option options [String] :checksum_type
|
|
2036
|
+
# Indicates the checksum type that you want Amazon S3 to use to
|
|
2037
|
+
# calculate the object’s checksum value. For more information, see
|
|
2038
|
+
# [Checking object integrity in the Amazon S3 User Guide][1].
|
|
2039
|
+
#
|
|
2040
|
+
#
|
|
2041
|
+
#
|
|
2042
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
1933
2043
|
# @return [MultipartUpload]
|
|
1934
2044
|
def initiate_multipart_upload(options = {})
|
|
1935
2045
|
options = options.merge(
|
|
@@ -1959,22 +2069,25 @@ module Aws::S3
|
|
|
1959
2069
|
# content_length: 1,
|
|
1960
2070
|
# content_md5: "ContentMD5",
|
|
1961
2071
|
# content_type: "ContentType",
|
|
1962
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
2072
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
1963
2073
|
# checksum_crc32: "ChecksumCRC32",
|
|
1964
2074
|
# checksum_crc32c: "ChecksumCRC32C",
|
|
2075
|
+
# checksum_crc64nvme: "ChecksumCRC64NVME",
|
|
1965
2076
|
# checksum_sha1: "ChecksumSHA1",
|
|
1966
2077
|
# checksum_sha256: "ChecksumSHA256",
|
|
1967
2078
|
# expires: Time.now,
|
|
2079
|
+
# if_match: "IfMatch",
|
|
1968
2080
|
# if_none_match: "IfNoneMatch",
|
|
1969
2081
|
# grant_full_control: "GrantFullControl",
|
|
1970
2082
|
# grant_read: "GrantRead",
|
|
1971
2083
|
# grant_read_acp: "GrantReadACP",
|
|
1972
2084
|
# grant_write_acp: "GrantWriteACP",
|
|
2085
|
+
# write_offset_bytes: 1,
|
|
1973
2086
|
# metadata: {
|
|
1974
2087
|
# "MetadataKey" => "MetadataValue",
|
|
1975
2088
|
# },
|
|
1976
|
-
# server_side_encryption: "AES256", # accepts AES256, aws:kms, aws:kms:dsse
|
|
1977
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
2089
|
+
# server_side_encryption: "AES256", # accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
2090
|
+
# 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
|
|
1978
2091
|
# website_redirect_location: "WebsiteRedirectLocation",
|
|
1979
2092
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
|
1980
2093
|
# sse_customer_key: "SSECustomerKey",
|
|
@@ -2065,7 +2178,7 @@ module Aws::S3
|
|
|
2065
2178
|
#
|
|
2066
2179
|
# [1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length
|
|
2067
2180
|
# @option options [String] :content_md5
|
|
2068
|
-
# The
|
|
2181
|
+
# The Base64 encoded 128-bit `MD5` digest of the message (without the
|
|
2069
2182
|
# headers) according to RFC 1864. This header can be used as a message
|
|
2070
2183
|
# integrity check to verify that the data is the same data that was
|
|
2071
2184
|
# originally sent. Although it is optional, we recommend using the
|
|
@@ -2073,10 +2186,11 @@ module Aws::S3
|
|
|
2073
2186
|
# information about REST request authentication, see [REST
|
|
2074
2187
|
# Authentication][1].
|
|
2075
2188
|
#
|
|
2076
|
-
# <note markdown="1"> The `Content-MD5` header is required
|
|
2077
|
-
# object with a retention period configured
|
|
2078
|
-
#
|
|
2079
|
-
# Object Lock
|
|
2189
|
+
# <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
|
|
2190
|
+
# for any request to upload an object with a retention period configured
|
|
2191
|
+
# using Amazon S3 Object Lock. For more information, see [Uploading
|
|
2192
|
+
# objects to an Object Lock enabled bucket ][2] in the *Amazon S3 User
|
|
2193
|
+
# Guide*.
|
|
2080
2194
|
#
|
|
2081
2195
|
# </note>
|
|
2082
2196
|
#
|
|
@@ -2087,7 +2201,7 @@ module Aws::S3
|
|
|
2087
2201
|
#
|
|
2088
2202
|
#
|
|
2089
2203
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
|
|
2090
|
-
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/
|
|
2204
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-managing.html#object-lock-put-object
|
|
2091
2205
|
# @option options [String] :content_type
|
|
2092
2206
|
# A standard MIME type describing the format of the contents. For more
|
|
2093
2207
|
# information, see
|
|
@@ -2111,6 +2225,8 @@ module Aws::S3
|
|
|
2111
2225
|
#
|
|
2112
2226
|
# * `CRC32C`
|
|
2113
2227
|
#
|
|
2228
|
+
# * `CRC64NVME`
|
|
2229
|
+
#
|
|
2114
2230
|
# * `SHA1`
|
|
2115
2231
|
#
|
|
2116
2232
|
# * `SHA256`
|
|
@@ -2120,22 +2236,28 @@ module Aws::S3
|
|
|
2120
2236
|
#
|
|
2121
2237
|
# If the individual checksum value you provide through
|
|
2122
2238
|
# `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
|
|
2123
|
-
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3
|
|
2124
|
-
#
|
|
2125
|
-
# that matches the provided value in `x-amz-checksum-algorithm `.
|
|
2239
|
+
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
|
|
2240
|
+
# request with a `BadDigest` error.
|
|
2126
2241
|
#
|
|
2127
|
-
# <note markdown="1">
|
|
2128
|
-
#
|
|
2242
|
+
# <note markdown="1"> The `Content-MD5` or `x-amz-sdk-checksum-algorithm` header is required
|
|
2243
|
+
# for any request to upload an object with a retention period configured
|
|
2244
|
+
# using Amazon S3 Object Lock. For more information, see [Uploading
|
|
2245
|
+
# objects to an Object Lock enabled bucket ][2] in the *Amazon S3 User
|
|
2246
|
+
# Guide*.
|
|
2129
2247
|
#
|
|
2130
2248
|
# </note>
|
|
2131
2249
|
#
|
|
2250
|
+
# For directory buckets, when you use Amazon Web Services SDKs, `CRC32`
|
|
2251
|
+
# is the default checksum algorithm that's used for performance.
|
|
2252
|
+
#
|
|
2132
2253
|
#
|
|
2133
2254
|
#
|
|
2134
2255
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2256
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-managing.html#object-lock-put-object
|
|
2135
2257
|
# @option options [String] :checksum_crc32
|
|
2136
2258
|
# This header can be used as a data integrity check to verify that the
|
|
2137
2259
|
# data received is the same data that was originally sent. This header
|
|
2138
|
-
# specifies the
|
|
2260
|
+
# specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
|
|
2139
2261
|
# For more information, see [Checking object integrity][1] in the
|
|
2140
2262
|
# *Amazon S3 User Guide*.
|
|
2141
2263
|
#
|
|
@@ -2145,17 +2267,28 @@ module Aws::S3
|
|
|
2145
2267
|
# @option options [String] :checksum_crc32c
|
|
2146
2268
|
# This header can be used as a data integrity check to verify that the
|
|
2147
2269
|
# data received is the same data that was originally sent. This header
|
|
2148
|
-
# specifies the
|
|
2270
|
+
# specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object.
|
|
2149
2271
|
# For more information, see [Checking object integrity][1] in the
|
|
2150
2272
|
# *Amazon S3 User Guide*.
|
|
2151
2273
|
#
|
|
2152
2274
|
#
|
|
2153
2275
|
#
|
|
2154
2276
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2277
|
+
# @option options [String] :checksum_crc64nvme
|
|
2278
|
+
# This header can be used as a data integrity check to verify that the
|
|
2279
|
+
# data received is the same data that was originally sent. This header
|
|
2280
|
+
# specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
|
|
2281
|
+
# object. The `CRC64NVME` checksum is always a full object checksum. For
|
|
2282
|
+
# more information, see [Checking object integrity in the Amazon S3 User
|
|
2283
|
+
# Guide][1].
|
|
2284
|
+
#
|
|
2285
|
+
#
|
|
2286
|
+
#
|
|
2287
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
|
2155
2288
|
# @option options [String] :checksum_sha1
|
|
2156
2289
|
# This header can be used as a data integrity check to verify that the
|
|
2157
2290
|
# data received is the same data that was originally sent. This header
|
|
2158
|
-
# specifies the
|
|
2291
|
+
# specifies the Base64 encoded, 160-bit `SHA1` digest of the object. For
|
|
2159
2292
|
# more information, see [Checking object integrity][1] in the *Amazon S3
|
|
2160
2293
|
# User Guide*.
|
|
2161
2294
|
#
|
|
@@ -2165,7 +2298,7 @@ module Aws::S3
|
|
|
2165
2298
|
# @option options [String] :checksum_sha256
|
|
2166
2299
|
# This header can be used as a data integrity check to verify that the
|
|
2167
2300
|
# data received is the same data that was originally sent. This header
|
|
2168
|
-
# specifies the
|
|
2301
|
+
# specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
|
|
2169
2302
|
# For more information, see [Checking object integrity][1] in the
|
|
2170
2303
|
# *Amazon S3 User Guide*.
|
|
2171
2304
|
#
|
|
@@ -2180,6 +2313,25 @@ module Aws::S3
|
|
|
2180
2313
|
#
|
|
2181
2314
|
#
|
|
2182
2315
|
# [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
|
|
2316
|
+
# @option options [String] :if_match
|
|
2317
|
+
# Uploads the object only if the ETag (entity tag) value provided during
|
|
2318
|
+
# the WRITE operation matches the ETag of the object in S3. If the ETag
|
|
2319
|
+
# values do not match, the operation returns a `412 Precondition Failed`
|
|
2320
|
+
# error.
|
|
2321
|
+
#
|
|
2322
|
+
# If a conflicting operation occurs during the upload S3 returns a `409
|
|
2323
|
+
# ConditionalRequestConflict` response. On a 409 failure you should
|
|
2324
|
+
# fetch the object's ETag and retry the upload.
|
|
2325
|
+
#
|
|
2326
|
+
# Expects the ETag value as a string.
|
|
2327
|
+
#
|
|
2328
|
+
# For more information about conditional requests, see [RFC 7232][1], or
|
|
2329
|
+
# [Conditional requests][2] in the *Amazon S3 User Guide*.
|
|
2330
|
+
#
|
|
2331
|
+
#
|
|
2332
|
+
#
|
|
2333
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
|
2334
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
|
|
2183
2335
|
# @option options [String] :if_none_match
|
|
2184
2336
|
# Uploads the object only if the object key name does not already exist
|
|
2185
2337
|
# in the bucket specified. Otherwise, Amazon S3 returns a `412
|
|
@@ -2231,12 +2383,21 @@ module Aws::S3
|
|
|
2231
2383
|
# * This functionality is not supported for Amazon S3 on Outposts.
|
|
2232
2384
|
#
|
|
2233
2385
|
# </note>
|
|
2386
|
+
# @option options [Integer] :write_offset_bytes
|
|
2387
|
+
# Specifies the offset for appending data to existing objects in bytes.
|
|
2388
|
+
# The offset must be equal to the size of the existing object being
|
|
2389
|
+
# appended to. If no object exists, setting this header to 0 will create
|
|
2390
|
+
# a new object.
|
|
2391
|
+
#
|
|
2392
|
+
# <note markdown="1"> This functionality is only supported for objects in the Amazon S3
|
|
2393
|
+
# Express One Zone storage class in directory buckets.
|
|
2394
|
+
#
|
|
2395
|
+
# </note>
|
|
2234
2396
|
# @option options [Hash<String,String>] :metadata
|
|
2235
2397
|
# A map of metadata to store with the object in S3.
|
|
2236
2398
|
# @option options [String] :server_side_encryption
|
|
2237
2399
|
# The server-side encryption algorithm that was used when you store this
|
|
2238
|
-
# object in Amazon S3
|
|
2239
|
-
# `aws:kms:dsse`).
|
|
2400
|
+
# object in Amazon S3 or Amazon FSx.
|
|
2240
2401
|
#
|
|
2241
2402
|
# * <b>General purpose buckets </b> - You have four mutually exclusive
|
|
2242
2403
|
# options to protect data using server-side encryption in Amazon S3,
|
|
@@ -2290,6 +2451,14 @@ module Aws::S3
|
|
|
2290
2451
|
#
|
|
2291
2452
|
# </note>
|
|
2292
2453
|
#
|
|
2454
|
+
# * <b>S3 access points for Amazon FSx </b> - When accessing data stored
|
|
2455
|
+
# in Amazon FSx file systems using S3 access points, the only valid
|
|
2456
|
+
# server side encryption option is `aws:fsx`. All Amazon FSx file
|
|
2457
|
+
# systems have encryption configured by default and are encrypted at
|
|
2458
|
+
# rest. Data is automatically encrypted before being written to the
|
|
2459
|
+
# file system, and automatically decrypted as it is read. These
|
|
2460
|
+
# processes are handled transparently by Amazon FSx.
|
|
2461
|
+
#
|
|
2293
2462
|
#
|
|
2294
2463
|
#
|
|
2295
2464
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
|
|
@@ -2304,8 +2473,9 @@ module Aws::S3
|
|
|
2304
2473
|
# a different Storage Class. For more information, see [Storage
|
|
2305
2474
|
# Classes][1] in the *Amazon S3 User Guide*.
|
|
2306
2475
|
#
|
|
2307
|
-
# <note markdown="1"> *
|
|
2308
|
-
#
|
|
2476
|
+
# <note markdown="1"> * Directory buckets only support `EXPRESS_ONEZONE` (the S3 Express One
|
|
2477
|
+
# Zone storage class) in Availability Zones and `ONEZONE_IA` (the S3
|
|
2478
|
+
# One Zone-Infrequent Access storage class) in Dedicated Local Zones.
|
|
2309
2479
|
#
|
|
2310
2480
|
# * Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.
|
|
2311
2481
|
#
|
|
@@ -2383,15 +2553,17 @@ module Aws::S3
|
|
|
2383
2553
|
# `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
|
2384
2554
|
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
|
2385
2555
|
#
|
|
2386
|
-
# **Directory buckets** -
|
|
2387
|
-
#
|
|
2388
|
-
# x-amz-server-side-encryption-aws-kms-key-id`
|
|
2389
|
-
#
|
|
2390
|
-
#
|
|
2391
|
-
# key
|
|
2392
|
-
#
|
|
2393
|
-
#
|
|
2394
|
-
#
|
|
2556
|
+
# **Directory buckets** - To encrypt data using SSE-KMS, it's
|
|
2557
|
+
# recommended to specify the `x-amz-server-side-encryption` header to
|
|
2558
|
+
# `aws:kms`. Then, the `x-amz-server-side-encryption-aws-kms-key-id`
|
|
2559
|
+
# header implicitly uses the bucket's default KMS customer managed key
|
|
2560
|
+
# ID. If you want to explicitly set the `
|
|
2561
|
+
# x-amz-server-side-encryption-aws-kms-key-id` header, it must match the
|
|
2562
|
+
# bucket's default customer managed key (using key ID or ARN, not
|
|
2563
|
+
# alias). Your SSE-KMS configuration can only support 1 [customer
|
|
2564
|
+
# managed key][1] per directory bucket's lifetime. The [Amazon Web
|
|
2565
|
+
# Services managed key][2] (`aws/s3`) isn't supported. Incorrect key
|
|
2566
|
+
# specification results in an HTTP `400 Bad Request` error.
|
|
2395
2567
|
#
|
|
2396
2568
|
#
|
|
2397
2569
|
#
|
|
@@ -2400,7 +2572,7 @@ module Aws::S3
|
|
|
2400
2572
|
# @option options [String] :ssekms_encryption_context
|
|
2401
2573
|
# Specifies the Amazon Web Services KMS Encryption Context as an
|
|
2402
2574
|
# additional encryption context to use for object encryption. The value
|
|
2403
|
-
# of this header is a Base64
|
|
2575
|
+
# of this header is a Base64 encoded string of a UTF-8 encoded JSON,
|
|
2404
2576
|
# which contains the encryption context as key-value pairs. This value
|
|
2405
2577
|
# is stored as object metadata and automatically gets passed on to
|
|
2406
2578
|
# Amazon Web Services KMS for future `GetObject` operations on this
|
|
@@ -2559,7 +2731,7 @@ module Aws::S3
|
|
|
2559
2731
|
# bucket_name: "BucketName", # required
|
|
2560
2732
|
# prefix: "LocationPrefix", # required
|
|
2561
2733
|
# encryption: {
|
|
2562
|
-
# encryption_type: "AES256", # required, accepts AES256, aws:kms, aws:kms:dsse
|
|
2734
|
+
# encryption_type: "AES256", # required, accepts AES256, aws:fsx, aws:kms, aws:kms:dsse
|
|
2563
2735
|
# kms_key_id: "SSEKMSKeyId",
|
|
2564
2736
|
# kms_context: "KMSContext",
|
|
2565
2737
|
# },
|
|
@@ -2590,12 +2762,12 @@ module Aws::S3
|
|
|
2590
2762
|
# value: "MetadataValue",
|
|
2591
2763
|
# },
|
|
2592
2764
|
# ],
|
|
2593
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR, SNOW, EXPRESS_ONEZONE
|
|
2765
|
+
# 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
|
|
2594
2766
|
# },
|
|
2595
2767
|
# },
|
|
2596
2768
|
# },
|
|
2597
2769
|
# request_payer: "requester", # accepts requester
|
|
2598
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
2770
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
2599
2771
|
# expected_bucket_owner: "AccountId",
|
|
2600
2772
|
# })
|
|
2601
2773
|
# @param [Hash] options ({})
|
|
@@ -2772,7 +2944,7 @@ module Aws::S3
|
|
|
2772
2944
|
# request_payer: "requester", # accepts requester
|
|
2773
2945
|
# bypass_governance_retention: false,
|
|
2774
2946
|
# expected_bucket_owner: "AccountId",
|
|
2775
|
-
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
|
2947
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
|
|
2776
2948
|
# })
|
|
2777
2949
|
# @param options ({})
|
|
2778
2950
|
# @option options [String] :mfa
|
|
@@ -2840,6 +3012,8 @@ module Aws::S3
|
|
|
2840
3012
|
#
|
|
2841
3013
|
# * `CRC32C`
|
|
2842
3014
|
#
|
|
3015
|
+
# * `CRC64NVME`
|
|
3016
|
+
#
|
|
2843
3017
|
# * `SHA1`
|
|
2844
3018
|
#
|
|
2845
3019
|
# * `SHA256`
|
|
@@ -2849,9 +3023,8 @@ module Aws::S3
|
|
|
2849
3023
|
#
|
|
2850
3024
|
# If the individual checksum value you provide through
|
|
2851
3025
|
# `x-amz-checksum-algorithm ` doesn't match the checksum algorithm you
|
|
2852
|
-
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3
|
|
2853
|
-
#
|
|
2854
|
-
# that matches the provided value in `x-amz-checksum-algorithm `.
|
|
3026
|
+
# set through `x-amz-sdk-checksum-algorithm`, Amazon S3 fails the
|
|
3027
|
+
# request with a `BadDigest` error.
|
|
2855
3028
|
#
|
|
2856
3029
|
# If you provide an individual checksum, Amazon S3 ignores any provided
|
|
2857
3030
|
# `ChecksumAlgorithm` parameter.
|