aws-sdk-s3 1.80.0 → 1.114.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 +903 -0
- data/LICENSE.txt +202 -0
- data/VERSION +1 -0
- data/lib/aws-sdk-s3/arn/access_point_arn.rb +69 -0
- data/lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb +68 -0
- data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +69 -0
- data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +74 -0
- data/lib/aws-sdk-s3/bucket.rb +172 -46
- data/lib/aws-sdk-s3/bucket_acl.rb +28 -6
- data/lib/aws-sdk-s3/bucket_cors.rb +29 -9
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +30 -9
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +31 -9
- data/lib/aws-sdk-s3/bucket_logging.rb +25 -6
- data/lib/aws-sdk-s3/bucket_notification.rb +21 -9
- data/lib/aws-sdk-s3/bucket_policy.rb +27 -7
- data/lib/aws-sdk-s3/bucket_request_payment.rb +27 -8
- data/lib/aws-sdk-s3/bucket_tagging.rb +27 -7
- data/lib/aws-sdk-s3/bucket_versioning.rb +70 -10
- data/lib/aws-sdk-s3/bucket_website.rb +27 -7
- data/lib/aws-sdk-s3/client.rb +4415 -1650
- data/lib/aws-sdk-s3/client_api.rb +661 -41
- data/lib/aws-sdk-s3/customizations/bucket.rb +15 -7
- data/lib/aws-sdk-s3/customizations/object.rb +120 -21
- data/lib/aws-sdk-s3/customizations.rb +1 -1
- data/lib/aws-sdk-s3/encryption/client.rb +1 -1
- data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/encryptionV2/client.rb +1 -1
- data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +3 -3
- data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/errors.rb +22 -1
- data/lib/aws-sdk-s3/event_streams.rb +1 -1
- data/lib/aws-sdk-s3/file_downloader.rb +7 -2
- data/lib/aws-sdk-s3/file_uploader.rb +9 -4
- data/lib/aws-sdk-s3/legacy_signer.rb +15 -25
- data/lib/aws-sdk-s3/multipart_file_uploader.rb +26 -7
- data/lib/aws-sdk-s3/multipart_upload.rb +133 -19
- data/lib/aws-sdk-s3/multipart_upload_part.rb +152 -23
- data/lib/aws-sdk-s3/object.rb +501 -126
- data/lib/aws-sdk-s3/object_acl.rb +39 -9
- data/lib/aws-sdk-s3/object_summary.rb +330 -110
- data/lib/aws-sdk-s3/object_version.rb +80 -49
- data/lib/aws-sdk-s3/plugins/accelerate.rb +13 -4
- data/lib/aws-sdk-s3/plugins/arn.rb +254 -0
- data/lib/aws-sdk-s3/plugins/bucket_dns.rb +1 -3
- data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +1 -1
- data/lib/aws-sdk-s3/plugins/dualstack.rb +33 -32
- data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +2 -1
- data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +1 -1
- data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +18 -7
- data/lib/aws-sdk-s3/plugins/md5s.rb +5 -3
- data/lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb +25 -0
- data/lib/aws-sdk-s3/plugins/s3_signer.rb +66 -17
- data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
- data/lib/aws-sdk-s3/plugins/streaming_retry.rb +23 -2
- data/lib/aws-sdk-s3/presigned_post.rb +38 -19
- data/lib/aws-sdk-s3/presigner.rb +34 -17
- data/lib/aws-sdk-s3/resource.rb +23 -3
- data/lib/aws-sdk-s3/types.rb +4792 -1089
- data/lib/aws-sdk-s3/waiters.rb +1 -1
- data/lib/aws-sdk-s3.rb +3 -2
- metadata +21 -13
- data/lib/aws-sdk-s3/plugins/bucket_arn.rb +0 -212
data/lib/aws-sdk-s3/object.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -57,9 +57,9 @@ module Aws::S3
|
|
57
57
|
end
|
58
58
|
|
59
59
|
# If the object expiration is configured (see PUT Bucket lifecycle), the
|
60
|
-
# response includes this header. It includes the expiry-date and
|
61
|
-
# key-value pairs providing object expiration information. The
|
62
|
-
# the rule-id is URL
|
60
|
+
# response includes this header. It includes the `expiry-date` and
|
61
|
+
# `rule-id` key-value pairs providing object expiration information. The
|
62
|
+
# value of the `rule-id` is URL-encoded.
|
63
63
|
# @return [String]
|
64
64
|
def expiration
|
65
65
|
data[:expiration]
|
@@ -73,7 +73,7 @@ module Aws::S3
|
|
73
73
|
# If an archive copy is already restored, the header value indicates
|
74
74
|
# when Amazon S3 is scheduled to delete the object copy. For example:
|
75
75
|
#
|
76
|
-
# `x-amz-restore: ongoing-request="false", expiry-date="Fri,
|
76
|
+
# `x-amz-restore: ongoing-request="false", expiry-date="Fri, 21 Dec 2012
|
77
77
|
# 00:00:00 GMT"`
|
78
78
|
#
|
79
79
|
# If the object restoration is in progress, the header returns the value
|
@@ -91,7 +91,13 @@ module Aws::S3
|
|
91
91
|
data[:restore]
|
92
92
|
end
|
93
93
|
|
94
|
-
#
|
94
|
+
# The archive state of the head object.
|
95
|
+
# @return [String]
|
96
|
+
def archive_status
|
97
|
+
data[:archive_status]
|
98
|
+
end
|
99
|
+
|
100
|
+
# Creation date of the object.
|
95
101
|
# @return [Time]
|
96
102
|
def last_modified
|
97
103
|
data[:last_modified]
|
@@ -103,8 +109,64 @@ module Aws::S3
|
|
103
109
|
data[:content_length]
|
104
110
|
end
|
105
111
|
|
106
|
-
#
|
107
|
-
#
|
112
|
+
# The base64-encoded, 32-bit CRC32 checksum of the object. This will
|
113
|
+
# only be present if it was uploaded with the object. With multipart
|
114
|
+
# uploads, this may not be a checksum value of the object. For more
|
115
|
+
# information about how checksums are calculated with multipart uploads,
|
116
|
+
# see [ Checking object integrity][1] in the *Amazon S3 User Guide*.
|
117
|
+
#
|
118
|
+
#
|
119
|
+
#
|
120
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
121
|
+
# @return [String]
|
122
|
+
def checksum_crc32
|
123
|
+
data[:checksum_crc32]
|
124
|
+
end
|
125
|
+
|
126
|
+
# The base64-encoded, 32-bit CRC32C checksum of the object. This will
|
127
|
+
# only be present if it was uploaded with the object. With multipart
|
128
|
+
# uploads, this may not be a checksum value of the object. For more
|
129
|
+
# information about how checksums are calculated with multipart uploads,
|
130
|
+
# see [ Checking object integrity][1] in the *Amazon S3 User Guide*.
|
131
|
+
#
|
132
|
+
#
|
133
|
+
#
|
134
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
135
|
+
# @return [String]
|
136
|
+
def checksum_crc32c
|
137
|
+
data[:checksum_crc32c]
|
138
|
+
end
|
139
|
+
|
140
|
+
# The base64-encoded, 160-bit SHA-1 digest of the object. This will only
|
141
|
+
# be present if it was uploaded with the object. With multipart uploads,
|
142
|
+
# this may not be a checksum value of the object. For more information
|
143
|
+
# about how checksums are calculated with multipart uploads, see [
|
144
|
+
# Checking object integrity][1] in the *Amazon S3 User Guide*.
|
145
|
+
#
|
146
|
+
#
|
147
|
+
#
|
148
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
149
|
+
# @return [String]
|
150
|
+
def checksum_sha1
|
151
|
+
data[:checksum_sha1]
|
152
|
+
end
|
153
|
+
|
154
|
+
# The base64-encoded, 256-bit SHA-256 digest of the object. This will
|
155
|
+
# only be present if it was uploaded with the object. With multipart
|
156
|
+
# uploads, this may not be a checksum value of the object. For more
|
157
|
+
# information about how checksums are calculated with multipart uploads,
|
158
|
+
# see [ Checking object integrity][1] in the *Amazon S3 User Guide*.
|
159
|
+
#
|
160
|
+
#
|
161
|
+
#
|
162
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
163
|
+
# @return [String]
|
164
|
+
def checksum_sha256
|
165
|
+
data[:checksum_sha256]
|
166
|
+
end
|
167
|
+
|
168
|
+
# An entity tag (ETag) is an opaque identifier assigned by a web server
|
169
|
+
# to a specific version of a resource found at a URL.
|
108
170
|
# @return [String]
|
109
171
|
def etag
|
110
172
|
data[:etag]
|
@@ -178,10 +240,10 @@ module Aws::S3
|
|
178
240
|
end
|
179
241
|
|
180
242
|
# If the object is stored using server-side encryption either with an
|
181
|
-
#
|
182
|
-
#
|
183
|
-
#
|
184
|
-
#
|
243
|
+
# Amazon Web Services KMS key or an Amazon S3-managed encryption key,
|
244
|
+
# the response includes this header with the value of the server-side
|
245
|
+
# encryption algorithm used when storing this object in Amazon S3 (for
|
246
|
+
# example, AES256, aws:kms).
|
185
247
|
# @return [String]
|
186
248
|
def server_side_encryption
|
187
249
|
data[:server_side_encryption]
|
@@ -210,14 +272,21 @@ module Aws::S3
|
|
210
272
|
data[:sse_customer_key_md5]
|
211
273
|
end
|
212
274
|
|
213
|
-
# If present, specifies the ID of the
|
214
|
-
# KMS) symmetric customer managed
|
215
|
-
# used for the object.
|
275
|
+
# If present, specifies the ID of the Amazon Web Services Key Management
|
276
|
+
# Service (Amazon Web Services KMS) symmetric customer managed key that
|
277
|
+
# was used for the object.
|
216
278
|
# @return [String]
|
217
279
|
def ssekms_key_id
|
218
280
|
data[:ssekms_key_id]
|
219
281
|
end
|
220
282
|
|
283
|
+
# Indicates whether the object uses an S3 Bucket Key for server-side
|
284
|
+
# encryption with Amazon Web Services KMS (SSE-KMS).
|
285
|
+
# @return [Boolean]
|
286
|
+
def bucket_key_enabled
|
287
|
+
data[:bucket_key_enabled]
|
288
|
+
end
|
289
|
+
|
221
290
|
# Provides storage class information of the object. Amazon S3 returns
|
222
291
|
# this header for all objects except for S3 Standard storage class
|
223
292
|
# objects.
|
@@ -240,15 +309,15 @@ module Aws::S3
|
|
240
309
|
end
|
241
310
|
|
242
311
|
# Amazon S3 can return this header if your request involves a bucket
|
243
|
-
# that is either a source or destination in a replication rule.
|
312
|
+
# that is either a source or a destination in a replication rule.
|
244
313
|
#
|
245
314
|
# In replication, you have a source bucket on which you configure
|
246
|
-
# replication and destination bucket where Amazon S3 stores
|
247
|
-
# replicas. When you request an object (`GetObject`) or object
|
248
|
-
# (`HeadObject`) from these buckets, Amazon S3 will return the
|
315
|
+
# replication and destination bucket or buckets where Amazon S3 stores
|
316
|
+
# object replicas. When you request an object (`GetObject`) or object
|
317
|
+
# metadata (`HeadObject`) from these buckets, Amazon S3 will return the
|
249
318
|
# `x-amz-replication-status` header in the response as follows:
|
250
319
|
#
|
251
|
-
# * If requesting an object from the source bucket
|
320
|
+
# * **If requesting an object from the source bucket**, Amazon S3 will
|
252
321
|
# return the `x-amz-replication-status` header if the object in your
|
253
322
|
# request is eligible for replication.
|
254
323
|
#
|
@@ -261,9 +330,18 @@ module Aws::S3
|
|
261
330
|
# value PENDING, COMPLETED or FAILED indicating object replication
|
262
331
|
# status.
|
263
332
|
#
|
264
|
-
# * If requesting an object from
|
265
|
-
# return the `x-amz-replication-status` header with value REPLICA
|
266
|
-
# the object in your request is a replica that Amazon S3 created
|
333
|
+
# * **If requesting an object from a destination bucket**, Amazon S3
|
334
|
+
# will return the `x-amz-replication-status` header with value REPLICA
|
335
|
+
# if the object in your request is a replica that Amazon S3 created
|
336
|
+
# and there is no replica modification replication in progress.
|
337
|
+
#
|
338
|
+
# * **When replicating objects to multiple destination buckets**, the
|
339
|
+
# `x-amz-replication-status` header acts differently. The header of
|
340
|
+
# the source object will only return a value of COMPLETED when
|
341
|
+
# replication is successful to all destinations. The header will
|
342
|
+
# remain at value PENDING until replication has completed for all
|
343
|
+
# destinations. If one or more destinations fails replication the
|
344
|
+
# header will return FAILED.
|
267
345
|
#
|
268
346
|
# For more information, see [Replication][1].
|
269
347
|
#
|
@@ -275,7 +353,9 @@ module Aws::S3
|
|
275
353
|
data[:replication_status]
|
276
354
|
end
|
277
355
|
|
278
|
-
# The count of parts this object has.
|
356
|
+
# The count of parts this object has. This value is only returned if you
|
357
|
+
# specify `partNumber` in your request and the object was uploaded as a
|
358
|
+
# multipart upload.
|
279
359
|
# @return [Integer]
|
280
360
|
def parts_count
|
281
361
|
data[:parts_count]
|
@@ -510,6 +590,7 @@ module Aws::S3
|
|
510
590
|
# object.copy_from({
|
511
591
|
# acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
|
512
592
|
# cache_control: "CacheControl",
|
593
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
513
594
|
# content_disposition: "ContentDisposition",
|
514
595
|
# content_encoding: "ContentEncoding",
|
515
596
|
# content_language: "ContentLanguage",
|
@@ -530,13 +611,14 @@ module Aws::S3
|
|
530
611
|
# metadata_directive: "COPY", # accepts COPY, REPLACE
|
531
612
|
# tagging_directive: "COPY", # accepts COPY, REPLACE
|
532
613
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
533
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
614
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
|
534
615
|
# website_redirect_location: "WebsiteRedirectLocation",
|
535
616
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
536
617
|
# sse_customer_key: "SSECustomerKey",
|
537
618
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
538
619
|
# ssekms_key_id: "SSEKMSKeyId",
|
539
620
|
# ssekms_encryption_context: "SSEKMSEncryptionContext",
|
621
|
+
# bucket_key_enabled: false,
|
540
622
|
# copy_source_sse_customer_algorithm: "CopySourceSSECustomerAlgorithm",
|
541
623
|
# copy_source_sse_customer_key: "CopySourceSSECustomerKey",
|
542
624
|
# copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
|
@@ -551,8 +633,18 @@ module Aws::S3
|
|
551
633
|
# @param [Hash] options ({})
|
552
634
|
# @option options [String] :acl
|
553
635
|
# The canned ACL to apply to the object.
|
636
|
+
#
|
637
|
+
# This action is not supported by Amazon S3 on Outposts.
|
554
638
|
# @option options [String] :cache_control
|
555
639
|
# Specifies caching behavior along the request/reply chain.
|
640
|
+
# @option options [String] :checksum_algorithm
|
641
|
+
# Indicates the algorithm you want Amazon S3 to use to create the
|
642
|
+
# checksum for the object. For more information, see [Checking object
|
643
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
644
|
+
#
|
645
|
+
#
|
646
|
+
#
|
647
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
556
648
|
# @option options [String] :content_disposition
|
557
649
|
# Specifies presentational information for the object.
|
558
650
|
# @option options [String] :content_encoding
|
@@ -572,8 +664,8 @@ module Aws::S3
|
|
572
664
|
# of the source bucket and the key of the source object, separated by
|
573
665
|
# a slash (/). For example, to copy the object `reports/january.pdf`
|
574
666
|
# from the bucket `awsexamplebucket`, use
|
575
|
-
# `awsexamplebucket/reports/january.pdf`. The value must be
|
576
|
-
# encoded.
|
667
|
+
# `awsexamplebucket/reports/january.pdf`. The value must be
|
668
|
+
# URL-encoded.
|
577
669
|
#
|
578
670
|
# * For objects accessed through access points, specify the Amazon
|
579
671
|
# Resource Name (ARN) of the object as accessed through the access
|
@@ -586,10 +678,20 @@ module Aws::S3
|
|
586
678
|
# The value must be URL encoded.
|
587
679
|
#
|
588
680
|
# <note markdown="1"> Amazon S3 supports copy operations using access points only when the
|
589
|
-
# source and destination buckets are in the same
|
681
|
+
# source and destination buckets are in the same Amazon Web Services
|
682
|
+
# Region.
|
590
683
|
#
|
591
684
|
# </note>
|
592
685
|
#
|
686
|
+
# Alternatively, for objects accessed through Amazon S3 on Outposts,
|
687
|
+
# specify the ARN of the object as accessed in the format
|
688
|
+
# `arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>`.
|
689
|
+
# For example, to copy the object `reports/january.pdf` through
|
690
|
+
# outpost `my-outpost` owned by account `123456789012` in Region
|
691
|
+
# `us-west-2`, use the URL encoding of
|
692
|
+
# `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
|
693
|
+
# The value must be URL-encoded.
|
694
|
+
#
|
593
695
|
# To copy a specific version of an object, append
|
594
696
|
# `?versionId=<version-id>` to the value (for example,
|
595
697
|
# `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
|
@@ -598,7 +700,7 @@ module Aws::S3
|
|
598
700
|
#
|
599
701
|
#
|
600
702
|
#
|
601
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/
|
703
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html
|
602
704
|
# @option options [String] :copy_source_if_match
|
603
705
|
# Copies the object if its entity tag (ETag) matches the specified tag.
|
604
706
|
# @option options [Time,DateTime,Date,Integer,String] :copy_source_if_modified_since
|
@@ -614,12 +716,20 @@ module Aws::S3
|
|
614
716
|
# @option options [String] :grant_full_control
|
615
717
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
616
718
|
# object.
|
719
|
+
#
|
720
|
+
# This action is not supported by Amazon S3 on Outposts.
|
617
721
|
# @option options [String] :grant_read
|
618
722
|
# Allows grantee to read the object data and its metadata.
|
723
|
+
#
|
724
|
+
# This action is not supported by Amazon S3 on Outposts.
|
619
725
|
# @option options [String] :grant_read_acp
|
620
726
|
# Allows grantee to read the object ACL.
|
727
|
+
#
|
728
|
+
# This action is not supported by Amazon S3 on Outposts.
|
621
729
|
# @option options [String] :grant_write_acp
|
622
730
|
# Allows grantee to write the ACL for the applicable object.
|
731
|
+
#
|
732
|
+
# This action is not supported by Amazon S3 on Outposts.
|
623
733
|
# @option options [Hash<String,String>] :metadata
|
624
734
|
# A map of metadata to store with the object in S3.
|
625
735
|
# @option options [String] :metadata_directive
|
@@ -632,7 +742,16 @@ module Aws::S3
|
|
632
742
|
# The server-side encryption algorithm used when storing this object in
|
633
743
|
# Amazon S3 (for example, AES256, aws:kms).
|
634
744
|
# @option options [String] :storage_class
|
635
|
-
#
|
745
|
+
# By default, Amazon S3 uses the STANDARD Storage Class to store newly
|
746
|
+
# created objects. The STANDARD storage class provides high durability
|
747
|
+
# and high availability. Depending on performance needs, you can specify
|
748
|
+
# a different Storage Class. Amazon S3 on Outposts only uses the
|
749
|
+
# OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
|
750
|
+
# in the *Amazon S3 User Guide*.
|
751
|
+
#
|
752
|
+
#
|
753
|
+
#
|
754
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
636
755
|
# @option options [String] :website_redirect_location
|
637
756
|
# If the bucket is configured as a website, redirects requests for this
|
638
757
|
# object to another object in the same bucket or to an external URL.
|
@@ -651,20 +770,29 @@ module Aws::S3
|
|
651
770
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
652
771
|
# ensure that the encryption key was transmitted without error.
|
653
772
|
# @option options [String] :ssekms_key_id
|
654
|
-
# Specifies the
|
655
|
-
# PUT requests for an object protected by
|
656
|
-
# via SSL or using SigV4. For
|
657
|
-
#
|
658
|
-
#
|
659
|
-
#
|
773
|
+
# Specifies the Amazon Web Services KMS key ID to use for object
|
774
|
+
# encryption. All GET and PUT requests for an object protected by Amazon
|
775
|
+
# Web Services KMS will fail if not made via SSL or using SigV4. For
|
776
|
+
# information about configuring using any of the officially supported
|
777
|
+
# Amazon Web Services SDKs and Amazon Web Services CLI, see [Specifying
|
778
|
+
# the Signature Version in Request Authentication][1] in the *Amazon S3
|
779
|
+
# User Guide*.
|
660
780
|
#
|
661
781
|
#
|
662
782
|
#
|
663
783
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
|
664
784
|
# @option options [String] :ssekms_encryption_context
|
665
|
-
# Specifies the
|
666
|
-
# The value of this header is a base64-encoded UTF-8
|
667
|
-
# with the encryption context key-value pairs.
|
785
|
+
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
786
|
+
# object encryption. The value of this header is a base64-encoded UTF-8
|
787
|
+
# string holding JSON with the encryption context key-value pairs.
|
788
|
+
# @option options [Boolean] :bucket_key_enabled
|
789
|
+
# Specifies whether Amazon S3 should use an S3 Bucket Key for object
|
790
|
+
# encryption with server-side encryption using AWS KMS (SSE-KMS).
|
791
|
+
# Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
|
792
|
+
# for object encryption with SSE-KMS.
|
793
|
+
#
|
794
|
+
# Specifying this header with a COPY action doesn’t affect bucket-level
|
795
|
+
# settings for S3 Bucket Key.
|
668
796
|
# @option options [String] :copy_source_sse_customer_algorithm
|
669
797
|
# Specifies the algorithm to use when decrypting the source object (for
|
670
798
|
# example, AES256).
|
@@ -679,9 +807,9 @@ module Aws::S3
|
|
679
807
|
# @option options [String] :request_payer
|
680
808
|
# Confirms that the requester knows that they will be charged for the
|
681
809
|
# request. Bucket owners need not specify this parameter in their
|
682
|
-
# requests. For information about downloading objects from
|
683
|
-
#
|
684
|
-
# in the *Amazon S3
|
810
|
+
# requests. For information about downloading objects from Requester
|
811
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
812
|
+
# in the *Amazon S3 User Guide*.
|
685
813
|
#
|
686
814
|
#
|
687
815
|
#
|
@@ -696,15 +824,15 @@ module Aws::S3
|
|
696
824
|
# The date and time when you want the copied object's Object Lock to
|
697
825
|
# expire.
|
698
826
|
# @option options [String] :object_lock_legal_hold_status
|
699
|
-
# Specifies whether you want to apply a
|
827
|
+
# Specifies whether you want to apply a legal hold to the copied object.
|
700
828
|
# @option options [String] :expected_bucket_owner
|
701
|
-
# The account
|
702
|
-
# destination bucket is owned by a different account, the request
|
703
|
-
#
|
829
|
+
# The account ID of the expected destination bucket owner. If the
|
830
|
+
# destination bucket is owned by a different account, the request fails
|
831
|
+
# with the HTTP status code `403 Forbidden` (access denied).
|
704
832
|
# @option options [String] :expected_source_bucket_owner
|
705
|
-
# The account
|
706
|
-
# bucket is owned by a different account, the request
|
707
|
-
# HTTP `403 (
|
833
|
+
# The account ID of the expected source bucket owner. If the source
|
834
|
+
# bucket is owned by a different account, the request fails with the
|
835
|
+
# HTTP status code `403 Forbidden` (access denied).
|
708
836
|
# @return [Types::CopyObjectOutput]
|
709
837
|
def copy_from(options = {})
|
710
838
|
options = options.merge(
|
@@ -735,20 +863,21 @@ module Aws::S3
|
|
735
863
|
# @option options [String] :request_payer
|
736
864
|
# Confirms that the requester knows that they will be charged for the
|
737
865
|
# request. Bucket owners need not specify this parameter in their
|
738
|
-
# requests. For information about downloading objects from
|
739
|
-
#
|
740
|
-
# in the *Amazon S3
|
866
|
+
# requests. For information about downloading objects from Requester
|
867
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
868
|
+
# in the *Amazon S3 User Guide*.
|
741
869
|
#
|
742
870
|
#
|
743
871
|
#
|
744
872
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
745
873
|
# @option options [Boolean] :bypass_governance_retention
|
746
874
|
# Indicates whether S3 Object Lock should bypass Governance-mode
|
747
|
-
# restrictions to process this operation.
|
875
|
+
# restrictions to process this operation. To use this header, you must
|
876
|
+
# have the `s3:BypassGovernanceRetention` permission.
|
748
877
|
# @option options [String] :expected_bucket_owner
|
749
|
-
# The account
|
750
|
-
# a different account, the request
|
751
|
-
#
|
878
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
879
|
+
# a different account, the request fails with the HTTP status code `403
|
880
|
+
# Forbidden` (access denied).
|
752
881
|
# @return [Types::DeleteObjectOutput]
|
753
882
|
def delete(options = {})
|
754
883
|
options = options.merge(
|
@@ -780,20 +909,21 @@ module Aws::S3
|
|
780
909
|
# request_payer: "requester", # accepts requester
|
781
910
|
# part_number: 1,
|
782
911
|
# expected_bucket_owner: "AccountId",
|
912
|
+
# checksum_mode: "ENABLED", # accepts ENABLED
|
783
913
|
# })
|
784
914
|
# @param [Hash] options ({})
|
785
915
|
# @option options [String] :if_match
|
786
916
|
# Return the object only if its entity tag (ETag) is the same as the one
|
787
|
-
# specified
|
917
|
+
# specified; otherwise, return a 412 (precondition failed) error.
|
788
918
|
# @option options [Time,DateTime,Date,Integer,String] :if_modified_since
|
789
919
|
# Return the object only if it has been modified since the specified
|
790
|
-
# time
|
920
|
+
# time; otherwise, return a 304 (not modified) error.
|
791
921
|
# @option options [String] :if_none_match
|
792
922
|
# Return the object only if its entity tag (ETag) is different from the
|
793
|
-
# one specified
|
923
|
+
# one specified; otherwise, return a 304 (not modified) error.
|
794
924
|
# @option options [Time,DateTime,Date,Integer,String] :if_unmodified_since
|
795
925
|
# Return the object only if it has not been modified since the specified
|
796
|
-
# time
|
926
|
+
# time; otherwise, return a 412 (precondition failed) error.
|
797
927
|
# @option options [String] :range
|
798
928
|
# Downloads the specified range bytes of an object. For more information
|
799
929
|
# about the HTTP Range header, see
|
@@ -822,13 +952,13 @@ module Aws::S3
|
|
822
952
|
# @option options [String] :version_id
|
823
953
|
# VersionId used to reference a specific version of the object.
|
824
954
|
# @option options [String] :sse_customer_algorithm
|
825
|
-
# Specifies the algorithm to use to when
|
955
|
+
# Specifies the algorithm to use to when decrypting the object (for
|
826
956
|
# example, AES256).
|
827
957
|
# @option options [String] :sse_customer_key
|
828
|
-
# Specifies the customer-provided encryption key for Amazon S3 to
|
829
|
-
#
|
830
|
-
#
|
831
|
-
# be appropriate for use with the algorithm specified in the
|
958
|
+
# Specifies the customer-provided encryption key for Amazon S3 used to
|
959
|
+
# encrypt the data. This value is used to decrypt the object when
|
960
|
+
# recovering it and must match the one used when storing the data. The
|
961
|
+
# key must be appropriate for use with the algorithm specified in the
|
832
962
|
# `x-amz-server-side-encryption-customer-algorithm` header.
|
833
963
|
# @option options [String] :sse_customer_key_md5
|
834
964
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
@@ -837,9 +967,9 @@ module Aws::S3
|
|
837
967
|
# @option options [String] :request_payer
|
838
968
|
# Confirms that the requester knows that they will be charged for the
|
839
969
|
# request. Bucket owners need not specify this parameter in their
|
840
|
-
# requests. For information about downloading objects from
|
841
|
-
#
|
842
|
-
# in the *Amazon S3
|
970
|
+
# requests. For information about downloading objects from Requester
|
971
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
972
|
+
# in the *Amazon S3 User Guide*.
|
843
973
|
#
|
844
974
|
#
|
845
975
|
#
|
@@ -850,9 +980,11 @@ module Aws::S3
|
|
850
980
|
# for the part specified. Useful for downloading just a part of an
|
851
981
|
# object.
|
852
982
|
# @option options [String] :expected_bucket_owner
|
853
|
-
# The account
|
854
|
-
# a different account, the request
|
855
|
-
#
|
983
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
984
|
+
# a different account, the request fails with the HTTP status code `403
|
985
|
+
# Forbidden` (access denied).
|
986
|
+
# @option options [String] :checksum_mode
|
987
|
+
# To retrieve the checksum, this mode must be enabled.
|
856
988
|
# @return [Types::GetObjectOutput]
|
857
989
|
def get(options = {}, &block)
|
858
990
|
options = options.merge(
|
@@ -881,23 +1013,27 @@ module Aws::S3
|
|
881
1013
|
# "MetadataKey" => "MetadataValue",
|
882
1014
|
# },
|
883
1015
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
884
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
1016
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
|
885
1017
|
# website_redirect_location: "WebsiteRedirectLocation",
|
886
1018
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
887
1019
|
# sse_customer_key: "SSECustomerKey",
|
888
1020
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
889
1021
|
# ssekms_key_id: "SSEKMSKeyId",
|
890
1022
|
# ssekms_encryption_context: "SSEKMSEncryptionContext",
|
1023
|
+
# bucket_key_enabled: false,
|
891
1024
|
# request_payer: "requester", # accepts requester
|
892
1025
|
# tagging: "TaggingHeader",
|
893
1026
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
894
1027
|
# object_lock_retain_until_date: Time.now,
|
895
1028
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
896
1029
|
# expected_bucket_owner: "AccountId",
|
1030
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
897
1031
|
# })
|
898
1032
|
# @param [Hash] options ({})
|
899
1033
|
# @option options [String] :acl
|
900
1034
|
# The canned ACL to apply to the object.
|
1035
|
+
#
|
1036
|
+
# This action is not supported by Amazon S3 on Outposts.
|
901
1037
|
# @option options [String] :cache_control
|
902
1038
|
# Specifies caching behavior along the request/reply chain.
|
903
1039
|
# @option options [String] :content_disposition
|
@@ -915,19 +1051,36 @@ module Aws::S3
|
|
915
1051
|
# @option options [String] :grant_full_control
|
916
1052
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
917
1053
|
# object.
|
1054
|
+
#
|
1055
|
+
# This action is not supported by Amazon S3 on Outposts.
|
918
1056
|
# @option options [String] :grant_read
|
919
1057
|
# Allows grantee to read the object data and its metadata.
|
1058
|
+
#
|
1059
|
+
# This action is not supported by Amazon S3 on Outposts.
|
920
1060
|
# @option options [String] :grant_read_acp
|
921
1061
|
# Allows grantee to read the object ACL.
|
1062
|
+
#
|
1063
|
+
# This action is not supported by Amazon S3 on Outposts.
|
922
1064
|
# @option options [String] :grant_write_acp
|
923
1065
|
# Allows grantee to write the ACL for the applicable object.
|
1066
|
+
#
|
1067
|
+
# This action is not supported by Amazon S3 on Outposts.
|
924
1068
|
# @option options [Hash<String,String>] :metadata
|
925
1069
|
# A map of metadata to store with the object in S3.
|
926
1070
|
# @option options [String] :server_side_encryption
|
927
1071
|
# The server-side encryption algorithm used when storing this object in
|
928
1072
|
# Amazon S3 (for example, AES256, aws:kms).
|
929
1073
|
# @option options [String] :storage_class
|
930
|
-
#
|
1074
|
+
# By default, Amazon S3 uses the STANDARD Storage Class to store newly
|
1075
|
+
# created objects. The STANDARD storage class provides high durability
|
1076
|
+
# and high availability. Depending on performance needs, you can specify
|
1077
|
+
# a different Storage Class. Amazon S3 on Outposts only uses the
|
1078
|
+
# OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
|
1079
|
+
# in the *Amazon S3 User Guide*.
|
1080
|
+
#
|
1081
|
+
#
|
1082
|
+
#
|
1083
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
931
1084
|
# @option options [String] :website_redirect_location
|
932
1085
|
# If the bucket is configured as a website, redirects requests for this
|
933
1086
|
# object to another object in the same bucket or to an external URL.
|
@@ -946,26 +1099,35 @@ module Aws::S3
|
|
946
1099
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
947
1100
|
# ensure that the encryption key was transmitted without error.
|
948
1101
|
# @option options [String] :ssekms_key_id
|
949
|
-
# Specifies the ID of the symmetric customer managed
|
950
|
-
#
|
951
|
-
#
|
952
|
-
# information about configuring using any of the officially
|
953
|
-
#
|
954
|
-
# Authentication][1] in the
|
1102
|
+
# Specifies the ID of the symmetric customer managed key to use for
|
1103
|
+
# object encryption. All GET and PUT requests for an object protected by
|
1104
|
+
# Amazon Web Services KMS will fail if not made via SSL or using SigV4.
|
1105
|
+
# For information about configuring using any of the officially
|
1106
|
+
# supported Amazon Web Services SDKs and Amazon Web Services CLI, see
|
1107
|
+
# [Specifying the Signature Version in Request Authentication][1] in the
|
1108
|
+
# *Amazon S3 User Guide*.
|
955
1109
|
#
|
956
1110
|
#
|
957
1111
|
#
|
958
|
-
# [1]: https://docs.aws.amazon.com/
|
1112
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
|
959
1113
|
# @option options [String] :ssekms_encryption_context
|
960
|
-
# Specifies the
|
961
|
-
# The value of this header is a base64-encoded UTF-8
|
962
|
-
# with the encryption context key-value pairs.
|
1114
|
+
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
1115
|
+
# object encryption. The value of this header is a base64-encoded UTF-8
|
1116
|
+
# string holding JSON with the encryption context key-value pairs.
|
1117
|
+
# @option options [Boolean] :bucket_key_enabled
|
1118
|
+
# Specifies whether Amazon S3 should use an S3 Bucket Key for object
|
1119
|
+
# encryption with server-side encryption using AWS KMS (SSE-KMS).
|
1120
|
+
# Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
|
1121
|
+
# for object encryption with SSE-KMS.
|
1122
|
+
#
|
1123
|
+
# Specifying this header with an object action doesn’t affect
|
1124
|
+
# bucket-level settings for S3 Bucket Key.
|
963
1125
|
# @option options [String] :request_payer
|
964
1126
|
# Confirms that the requester knows that they will be charged for the
|
965
1127
|
# request. Bucket owners need not specify this parameter in their
|
966
|
-
# requests. For information about downloading objects from
|
967
|
-
#
|
968
|
-
# in the *Amazon S3
|
1128
|
+
# requests. For information about downloading objects from Requester
|
1129
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
1130
|
+
# in the *Amazon S3 User Guide*.
|
969
1131
|
#
|
970
1132
|
#
|
971
1133
|
#
|
@@ -979,12 +1141,20 @@ module Aws::S3
|
|
979
1141
|
# @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
|
980
1142
|
# Specifies the date and time when you want the Object Lock to expire.
|
981
1143
|
# @option options [String] :object_lock_legal_hold_status
|
982
|
-
# Specifies whether you want to apply a
|
1144
|
+
# Specifies whether you want to apply a legal hold to the uploaded
|
983
1145
|
# object.
|
984
1146
|
# @option options [String] :expected_bucket_owner
|
985
|
-
# The account
|
986
|
-
# a different account, the request
|
987
|
-
#
|
1147
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
1148
|
+
# a different account, the request fails with the HTTP status code `403
|
1149
|
+
# Forbidden` (access denied).
|
1150
|
+
# @option options [String] :checksum_algorithm
|
1151
|
+
# Indicates the algorithm you want Amazon S3 to use to create the
|
1152
|
+
# checksum for the object. For more information, see [Checking object
|
1153
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
1154
|
+
#
|
1155
|
+
#
|
1156
|
+
#
|
1157
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
988
1158
|
# @return [MultipartUpload]
|
989
1159
|
def initiate_multipart_upload(options = {})
|
990
1160
|
options = options.merge(
|
@@ -1012,6 +1182,11 @@ module Aws::S3
|
|
1012
1182
|
# content_length: 1,
|
1013
1183
|
# content_md5: "ContentMD5",
|
1014
1184
|
# content_type: "ContentType",
|
1185
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
1186
|
+
# checksum_crc32: "ChecksumCRC32",
|
1187
|
+
# checksum_crc32c: "ChecksumCRC32C",
|
1188
|
+
# checksum_sha1: "ChecksumSHA1",
|
1189
|
+
# checksum_sha256: "ChecksumSHA256",
|
1015
1190
|
# expires: Time.now,
|
1016
1191
|
# grant_full_control: "GrantFullControl",
|
1017
1192
|
# grant_read: "GrantRead",
|
@@ -1021,13 +1196,14 @@ module Aws::S3
|
|
1021
1196
|
# "MetadataKey" => "MetadataValue",
|
1022
1197
|
# },
|
1023
1198
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
1024
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
1199
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
|
1025
1200
|
# website_redirect_location: "WebsiteRedirectLocation",
|
1026
1201
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
1027
1202
|
# sse_customer_key: "SSECustomerKey",
|
1028
1203
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
1029
1204
|
# ssekms_key_id: "SSEKMSKeyId",
|
1030
1205
|
# ssekms_encryption_context: "SSEKMSEncryptionContext",
|
1206
|
+
# bucket_key_enabled: false,
|
1031
1207
|
# request_payer: "requester", # accepts requester
|
1032
1208
|
# tagging: "TaggingHeader",
|
1033
1209
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
@@ -1040,6 +1216,8 @@ module Aws::S3
|
|
1040
1216
|
# The canned ACL to apply to the object. For more information, see
|
1041
1217
|
# [Canned ACL][1].
|
1042
1218
|
#
|
1219
|
+
# This action is not supported by Amazon S3 on Outposts.
|
1220
|
+
#
|
1043
1221
|
#
|
1044
1222
|
#
|
1045
1223
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
|
@@ -1100,6 +1278,61 @@ module Aws::S3
|
|
1100
1278
|
#
|
1101
1279
|
#
|
1102
1280
|
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
|
1281
|
+
# @option options [String] :checksum_algorithm
|
1282
|
+
# Indicates the algorithm used to create the checksum for the object
|
1283
|
+
# when using the SDK. This header will not provide any additional
|
1284
|
+
# functionality if not using the SDK. When sending this header, there
|
1285
|
+
# must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
|
1286
|
+
# sent. Otherwise, Amazon S3 fails the request with the HTTP status code
|
1287
|
+
# `400 Bad Request`. For more information, see [Checking object
|
1288
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
1289
|
+
#
|
1290
|
+
# If you provide an individual checksum, Amazon S3 ignores any provided
|
1291
|
+
# `ChecksumAlgorithm` parameter.
|
1292
|
+
#
|
1293
|
+
#
|
1294
|
+
#
|
1295
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1296
|
+
# @option options [String] :checksum_crc32
|
1297
|
+
# This header can be used as a data integrity check to verify that the
|
1298
|
+
# data received is the same data that was originally sent. This header
|
1299
|
+
# specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
|
1300
|
+
# more information, see [Checking object integrity][1] in the *Amazon S3
|
1301
|
+
# User Guide*.
|
1302
|
+
#
|
1303
|
+
#
|
1304
|
+
#
|
1305
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1306
|
+
# @option options [String] :checksum_crc32c
|
1307
|
+
# This header can be used as a data integrity check to verify that the
|
1308
|
+
# data received is the same data that was originally sent. This header
|
1309
|
+
# specifies the base64-encoded, 32-bit CRC32C checksum of the object.
|
1310
|
+
# For more information, see [Checking object integrity][1] in the
|
1311
|
+
# *Amazon S3 User Guide*.
|
1312
|
+
#
|
1313
|
+
#
|
1314
|
+
#
|
1315
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1316
|
+
# @option options [String] :checksum_sha1
|
1317
|
+
# This header can be used as a data integrity check to verify that the
|
1318
|
+
# data received is the same data that was originally sent. This header
|
1319
|
+
# specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
|
1320
|
+
# more information, see [Checking object integrity][1] in the *Amazon S3
|
1321
|
+
# User Guide*.
|
1322
|
+
#
|
1323
|
+
#
|
1324
|
+
#
|
1325
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1326
|
+
# @option options [String] :checksum_sha256
|
1327
|
+
# This header can be used as a data integrity check to verify that the
|
1328
|
+
# data received is the same data that was originally sent. This header
|
1329
|
+
# specifies the base64-encoded, 256-bit SHA-256 digest of the object.
|
1330
|
+
# For more information, see [Checking object integrity][1] in the
|
1331
|
+
# *Amazon S3 User Guide*.
|
1332
|
+
#
|
1333
|
+
#
|
1334
|
+
#
|
1335
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1103
1336
|
# @option options [Time,DateTime,Date,Integer,String] :expires
|
1104
1337
|
# The date and time at which the object is no longer cacheable. For more
|
1105
1338
|
# information, see
|
@@ -1111,20 +1344,36 @@ module Aws::S3
|
|
1111
1344
|
# @option options [String] :grant_full_control
|
1112
1345
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
1113
1346
|
# object.
|
1347
|
+
#
|
1348
|
+
# This action is not supported by Amazon S3 on Outposts.
|
1114
1349
|
# @option options [String] :grant_read
|
1115
1350
|
# Allows grantee to read the object data and its metadata.
|
1351
|
+
#
|
1352
|
+
# This action is not supported by Amazon S3 on Outposts.
|
1116
1353
|
# @option options [String] :grant_read_acp
|
1117
1354
|
# Allows grantee to read the object ACL.
|
1355
|
+
#
|
1356
|
+
# This action is not supported by Amazon S3 on Outposts.
|
1118
1357
|
# @option options [String] :grant_write_acp
|
1119
1358
|
# Allows grantee to write the ACL for the applicable object.
|
1359
|
+
#
|
1360
|
+
# This action is not supported by Amazon S3 on Outposts.
|
1120
1361
|
# @option options [Hash<String,String>] :metadata
|
1121
1362
|
# A map of metadata to store with the object in S3.
|
1122
1363
|
# @option options [String] :server_side_encryption
|
1123
1364
|
# The server-side encryption algorithm used when storing this object in
|
1124
1365
|
# Amazon S3 (for example, AES256, aws:kms).
|
1125
1366
|
# @option options [String] :storage_class
|
1126
|
-
#
|
1127
|
-
#
|
1367
|
+
# By default, Amazon S3 uses the STANDARD Storage Class to store newly
|
1368
|
+
# created objects. The STANDARD storage class provides high durability
|
1369
|
+
# and high availability. Depending on performance needs, you can specify
|
1370
|
+
# a different Storage Class. Amazon S3 on Outposts only uses the
|
1371
|
+
# OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
|
1372
|
+
# in the *Amazon S3 User Guide*.
|
1373
|
+
#
|
1374
|
+
#
|
1375
|
+
#
|
1376
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
1128
1377
|
# @option options [String] :website_redirect_location
|
1129
1378
|
# If the bucket is configured as a website, redirects requests for this
|
1130
1379
|
# object to another object in the same bucket or to an external URL.
|
@@ -1165,26 +1414,32 @@ module Aws::S3
|
|
1165
1414
|
# ensure that the encryption key was transmitted without error.
|
1166
1415
|
# @option options [String] :ssekms_key_id
|
1167
1416
|
# If `x-amz-server-side-encryption` is present and has the value of
|
1168
|
-
# `aws:kms`, this header specifies the ID of the
|
1169
|
-
# Service (
|
1170
|
-
#
|
1171
|
-
#
|
1172
|
-
# If the value of `x-amz-server-side-encryption` is `aws:kms`, this
|
1173
|
-
# header specifies the ID of the symmetric customer managed AWS KMS CMK
|
1174
|
-
# that will be used for the object. If you specify
|
1417
|
+
# `aws:kms`, this header specifies the ID of the Amazon Web Services Key
|
1418
|
+
# Management Service (Amazon Web Services KMS) symmetrical customer
|
1419
|
+
# managed key that was used for the object. If you specify
|
1175
1420
|
# `x-amz-server-side-encryption:aws:kms`, but do not provide`
|
1176
|
-
# x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
1177
|
-
#
|
1421
|
+
# x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
1422
|
+
# Amazon Web Services managed key to protect the data. If the KMS key
|
1423
|
+
# does not exist in the same account issuing the command, you must use
|
1424
|
+
# the full ARN and not just the ID.
|
1178
1425
|
# @option options [String] :ssekms_encryption_context
|
1179
|
-
# Specifies the
|
1180
|
-
# The value of this header is a base64-encoded UTF-8
|
1181
|
-
# with the encryption context key-value pairs.
|
1426
|
+
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
1427
|
+
# object encryption. The value of this header is a base64-encoded UTF-8
|
1428
|
+
# string holding JSON with the encryption context key-value pairs.
|
1429
|
+
# @option options [Boolean] :bucket_key_enabled
|
1430
|
+
# Specifies whether Amazon S3 should use an S3 Bucket Key for object
|
1431
|
+
# encryption with server-side encryption using AWS KMS (SSE-KMS).
|
1432
|
+
# Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
|
1433
|
+
# for object encryption with SSE-KMS.
|
1434
|
+
#
|
1435
|
+
# Specifying this header with a PUT action doesn’t affect bucket-level
|
1436
|
+
# settings for S3 Bucket Key.
|
1182
1437
|
# @option options [String] :request_payer
|
1183
1438
|
# Confirms that the requester knows that they will be charged for the
|
1184
1439
|
# request. Bucket owners need not specify this parameter in their
|
1185
|
-
# requests. For information about downloading objects from
|
1186
|
-
#
|
1187
|
-
# in the *Amazon S3
|
1440
|
+
# requests. For information about downloading objects from Requester
|
1441
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
1442
|
+
# in the *Amazon S3 User Guide*.
|
1188
1443
|
#
|
1189
1444
|
#
|
1190
1445
|
#
|
@@ -1196,6 +1451,7 @@ module Aws::S3
|
|
1196
1451
|
# The Object Lock mode that you want to apply to this object.
|
1197
1452
|
# @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
|
1198
1453
|
# The date and time when you want this object's Object Lock to expire.
|
1454
|
+
# Must be formatted as a timestamp parameter.
|
1199
1455
|
# @option options [String] :object_lock_legal_hold_status
|
1200
1456
|
# Specifies whether a legal hold will be applied to this object. For
|
1201
1457
|
# more information about S3 Object Lock, see [Object Lock][1].
|
@@ -1204,9 +1460,9 @@ module Aws::S3
|
|
1204
1460
|
#
|
1205
1461
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
|
1206
1462
|
# @option options [String] :expected_bucket_owner
|
1207
|
-
# The account
|
1208
|
-
# a different account, the request
|
1209
|
-
#
|
1463
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
1464
|
+
# a different account, the request fails with the HTTP status code `403
|
1465
|
+
# Forbidden` (access denied).
|
1210
1466
|
# @return [Types::PutObjectOutput]
|
1211
1467
|
def put(options = {})
|
1212
1468
|
options = options.merge(
|
@@ -1298,11 +1554,12 @@ module Aws::S3
|
|
1298
1554
|
# value: "MetadataValue",
|
1299
1555
|
# },
|
1300
1556
|
# ],
|
1301
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
1557
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
|
1302
1558
|
# },
|
1303
1559
|
# },
|
1304
1560
|
# },
|
1305
1561
|
# request_payer: "requester", # accepts requester
|
1562
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
1306
1563
|
# expected_bucket_owner: "AccountId",
|
1307
1564
|
# })
|
1308
1565
|
# @param [Hash] options ({})
|
@@ -1313,17 +1570,32 @@ module Aws::S3
|
|
1313
1570
|
# @option options [String] :request_payer
|
1314
1571
|
# Confirms that the requester knows that they will be charged for the
|
1315
1572
|
# request. Bucket owners need not specify this parameter in their
|
1316
|
-
# requests. For information about downloading objects from
|
1317
|
-
#
|
1318
|
-
# in the *Amazon S3
|
1573
|
+
# requests. For information about downloading objects from Requester
|
1574
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
1575
|
+
# in the *Amazon S3 User Guide*.
|
1319
1576
|
#
|
1320
1577
|
#
|
1321
1578
|
#
|
1322
1579
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
1580
|
+
# @option options [String] :checksum_algorithm
|
1581
|
+
# Indicates the algorithm used to create the checksum for the object
|
1582
|
+
# when using the SDK. This header will not provide any additional
|
1583
|
+
# functionality if not using the SDK. When sending this header, there
|
1584
|
+
# must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
|
1585
|
+
# sent. Otherwise, Amazon S3 fails the request with the HTTP status code
|
1586
|
+
# `400 Bad Request`. For more information, see [Checking object
|
1587
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
1588
|
+
#
|
1589
|
+
# If you provide an individual checksum, Amazon S3 ignores any provided
|
1590
|
+
# `ChecksumAlgorithm` parameter.
|
1591
|
+
#
|
1592
|
+
#
|
1593
|
+
#
|
1594
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1323
1595
|
# @option options [String] :expected_bucket_owner
|
1324
|
-
# The account
|
1325
|
-
# a different account, the request
|
1326
|
-
#
|
1596
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
1597
|
+
# a different account, the request fails with the HTTP status code `403
|
1598
|
+
# Forbidden` (access denied).
|
1327
1599
|
# @return [Types::RestoreObjectOutput]
|
1328
1600
|
def restore_object(options = {})
|
1329
1601
|
options = options.merge(
|
@@ -1334,6 +1606,90 @@ module Aws::S3
|
|
1334
1606
|
resp.data
|
1335
1607
|
end
|
1336
1608
|
|
1609
|
+
# @example Request syntax with placeholder values
|
1610
|
+
#
|
1611
|
+
# object.head({
|
1612
|
+
# if_match: "IfMatch",
|
1613
|
+
# if_modified_since: Time.now,
|
1614
|
+
# if_none_match: "IfNoneMatch",
|
1615
|
+
# if_unmodified_since: Time.now,
|
1616
|
+
# range: "Range",
|
1617
|
+
# version_id: "ObjectVersionId",
|
1618
|
+
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
1619
|
+
# sse_customer_key: "SSECustomerKey",
|
1620
|
+
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
1621
|
+
# request_payer: "requester", # accepts requester
|
1622
|
+
# part_number: 1,
|
1623
|
+
# expected_bucket_owner: "AccountId",
|
1624
|
+
# checksum_mode: "ENABLED", # accepts ENABLED
|
1625
|
+
# })
|
1626
|
+
# @param [Hash] options ({})
|
1627
|
+
# @option options [String] :if_match
|
1628
|
+
# Return the object only if its entity tag (ETag) is the same as the one
|
1629
|
+
# specified; otherwise, return a 412 (precondition failed) error.
|
1630
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_modified_since
|
1631
|
+
# Return the object only if it has been modified since the specified
|
1632
|
+
# time; otherwise, return a 304 (not modified) error.
|
1633
|
+
# @option options [String] :if_none_match
|
1634
|
+
# Return the object only if its entity tag (ETag) is different from the
|
1635
|
+
# one specified; otherwise, return a 304 (not modified) error.
|
1636
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_unmodified_since
|
1637
|
+
# Return the object only if it has not been modified since the specified
|
1638
|
+
# time; otherwise, return a 412 (precondition failed) error.
|
1639
|
+
# @option options [String] :range
|
1640
|
+
# Because `HeadObject` returns only the metadata for an object, this
|
1641
|
+
# parameter has no effect.
|
1642
|
+
# @option options [String] :version_id
|
1643
|
+
# VersionId used to reference a specific version of the object.
|
1644
|
+
# @option options [String] :sse_customer_algorithm
|
1645
|
+
# Specifies the algorithm to use to when encrypting the object (for
|
1646
|
+
# example, AES256).
|
1647
|
+
# @option options [String] :sse_customer_key
|
1648
|
+
# Specifies the customer-provided encryption key for Amazon S3 to use in
|
1649
|
+
# encrypting data. This value is used to store the object and then it is
|
1650
|
+
# discarded; Amazon S3 does not store the encryption key. The key must
|
1651
|
+
# be appropriate for use with the algorithm specified in the
|
1652
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
1653
|
+
# @option options [String] :sse_customer_key_md5
|
1654
|
+
# Specifies the 128-bit MD5 digest of the encryption key according to
|
1655
|
+
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
1656
|
+
# ensure that the encryption key was transmitted without error.
|
1657
|
+
# @option options [String] :request_payer
|
1658
|
+
# Confirms that the requester knows that they will be charged for the
|
1659
|
+
# request. Bucket owners need not specify this parameter in their
|
1660
|
+
# requests. For information about downloading objects from Requester
|
1661
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
1662
|
+
# in the *Amazon S3 User Guide*.
|
1663
|
+
#
|
1664
|
+
#
|
1665
|
+
#
|
1666
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
1667
|
+
# @option options [Integer] :part_number
|
1668
|
+
# Part number of the object being read. This is a positive integer
|
1669
|
+
# between 1 and 10,000. Effectively performs a 'ranged' HEAD request
|
1670
|
+
# for the part specified. Useful querying about the size of the part and
|
1671
|
+
# the number of parts in this object.
|
1672
|
+
# @option options [String] :expected_bucket_owner
|
1673
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
1674
|
+
# a different account, the request fails with the HTTP status code `403
|
1675
|
+
# Forbidden` (access denied).
|
1676
|
+
# @option options [String] :checksum_mode
|
1677
|
+
# To retrieve the checksum, this parameter must be enabled.
|
1678
|
+
#
|
1679
|
+
# In addition, if you enable `ChecksumMode` and the object is encrypted
|
1680
|
+
# with Amazon Web Services Key Management Service (Amazon Web Services
|
1681
|
+
# KMS), you must have permission to use the `kms:Decrypt` action for the
|
1682
|
+
# request to succeed.
|
1683
|
+
# @return [Types::HeadObjectOutput]
|
1684
|
+
def head(options = {})
|
1685
|
+
options = options.merge(
|
1686
|
+
bucket: @bucket_name,
|
1687
|
+
key: @key
|
1688
|
+
)
|
1689
|
+
resp = @client.head_object(options)
|
1690
|
+
resp.data
|
1691
|
+
end
|
1692
|
+
|
1337
1693
|
# @!group Associations
|
1338
1694
|
|
1339
1695
|
# @return [ObjectAcl]
|
@@ -1447,6 +1803,7 @@ module Aws::S3
|
|
1447
1803
|
# request_payer: "requester", # accepts requester
|
1448
1804
|
# bypass_governance_retention: false,
|
1449
1805
|
# expected_bucket_owner: "AccountId",
|
1806
|
+
# checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
|
1450
1807
|
# })
|
1451
1808
|
# @param options ({})
|
1452
1809
|
# @option options [String] :mfa
|
@@ -1457,21 +1814,39 @@ module Aws::S3
|
|
1457
1814
|
# @option options [String] :request_payer
|
1458
1815
|
# Confirms that the requester knows that they will be charged for the
|
1459
1816
|
# request. Bucket owners need not specify this parameter in their
|
1460
|
-
# requests. For information about downloading objects from
|
1461
|
-
#
|
1462
|
-
# in the *Amazon S3
|
1817
|
+
# requests. For information about downloading objects from Requester
|
1818
|
+
# Pays buckets, see [Downloading Objects in Requester Pays Buckets][1]
|
1819
|
+
# in the *Amazon S3 User Guide*.
|
1463
1820
|
#
|
1464
1821
|
#
|
1465
1822
|
#
|
1466
1823
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
1467
1824
|
# @option options [Boolean] :bypass_governance_retention
|
1468
1825
|
# Specifies whether you want to delete this object even if it has a
|
1469
|
-
# Governance-type Object Lock in place.
|
1470
|
-
#
|
1826
|
+
# Governance-type Object Lock in place. To use this header, you must
|
1827
|
+
# have the `s3:BypassGovernanceRetention` permission.
|
1471
1828
|
# @option options [String] :expected_bucket_owner
|
1472
|
-
# The account
|
1473
|
-
# a different account, the request
|
1474
|
-
#
|
1829
|
+
# The account ID of the expected bucket owner. If the bucket is owned by
|
1830
|
+
# a different account, the request fails with the HTTP status code `403
|
1831
|
+
# Forbidden` (access denied).
|
1832
|
+
# @option options [String] :checksum_algorithm
|
1833
|
+
# Indicates the algorithm used to create the checksum for the object
|
1834
|
+
# when using the SDK. This header will not provide any additional
|
1835
|
+
# functionality if not using the SDK. When sending this header, there
|
1836
|
+
# must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
|
1837
|
+
# sent. Otherwise, Amazon S3 fails the request with the HTTP status code
|
1838
|
+
# `400 Bad Request`. For more information, see [Checking object
|
1839
|
+
# integrity][1] in the *Amazon S3 User Guide*.
|
1840
|
+
#
|
1841
|
+
# If you provide an individual checksum, Amazon S3 ignores any provided
|
1842
|
+
# `ChecksumAlgorithm` parameter.
|
1843
|
+
#
|
1844
|
+
# This checksum algorithm must be the same for all parts and it match
|
1845
|
+
# the checksum value supplied in the `CreateMultipartUpload` request.
|
1846
|
+
#
|
1847
|
+
#
|
1848
|
+
#
|
1849
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
1475
1850
|
# @return [void]
|
1476
1851
|
def batch_delete!(options = {})
|
1477
1852
|
batch_enum.each do |batch|
|