aws-sdk-s3 1.48.0 → 1.60.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/lib/aws-sdk-s3/bucket.rb +183 -54
- data/lib/aws-sdk-s3/bucket_acl.rb +9 -1
- data/lib/aws-sdk-s3/bucket_cors.rb +18 -1
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +2 -1
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +3 -1
- data/lib/aws-sdk-s3/bucket_logging.rb +11 -1
- data/lib/aws-sdk-s3/bucket_notification.rb +7 -3
- data/lib/aws-sdk-s3/bucket_policy.rb +2 -0
- data/lib/aws-sdk-s3/bucket_request_payment.rb +10 -0
- data/lib/aws-sdk-s3/bucket_tagging.rb +10 -1
- data/lib/aws-sdk-s3/bucket_versioning.rb +26 -0
- data/lib/aws-sdk-s3/bucket_website.rb +15 -4
- data/lib/aws-sdk-s3/client.rb +5133 -519
- data/lib/aws-sdk-s3/client_api.rb +33 -0
- data/lib/aws-sdk-s3/customizations/bucket.rb +44 -13
- data/lib/aws-sdk-s3/customizations/object.rb +65 -43
- data/lib/aws-sdk-s3/encryption/client.rb +4 -0
- data/lib/aws-sdk-s3/file_part.rb +9 -6
- data/lib/aws-sdk-s3/file_uploader.rb +13 -12
- data/lib/aws-sdk-s3/multipart_file_uploader.rb +14 -11
- data/lib/aws-sdk-s3/multipart_upload.rb +31 -16
- data/lib/aws-sdk-s3/multipart_upload_part.rb +38 -29
- data/lib/aws-sdk-s3/object.rb +330 -129
- data/lib/aws-sdk-s3/object_acl.rb +25 -7
- data/lib/aws-sdk-s3/object_summary.rb +243 -117
- data/lib/aws-sdk-s3/object_version.rb +67 -46
- data/lib/aws-sdk-s3/plugins/bucket_arn.rb +211 -0
- data/lib/aws-sdk-s3/plugins/bucket_dns.rb +7 -7
- data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +23 -3
- data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +59 -0
- data/lib/aws-sdk-s3/plugins/md5s.rb +3 -4
- data/lib/aws-sdk-s3/plugins/s3_signer.rb +16 -6
- data/lib/aws-sdk-s3/presigned_post.rb +4 -0
- data/lib/aws-sdk-s3/presigner.rb +6 -2
- data/lib/aws-sdk-s3/resource.rb +4 -2
- data/lib/aws-sdk-s3/types.rb +3027 -635
- data/lib/aws-sdk-s3.rb +1 -1
- metadata +6 -4
data/lib/aws-sdk-s3/object.rb
CHANGED
|
@@ -24,6 +24,7 @@ module Aws::S3
|
|
|
24
24
|
@key = extract_key(args, options)
|
|
25
25
|
@data = options.delete(:data)
|
|
26
26
|
@client = options.delete(:client) || Client.new(options)
|
|
27
|
+
@waiter_block_warned = false
|
|
27
28
|
end
|
|
28
29
|
|
|
29
30
|
# @!group Read-Only Attributes
|
|
@@ -46,7 +47,7 @@ module Aws::S3
|
|
|
46
47
|
data[:delete_marker]
|
|
47
48
|
end
|
|
48
49
|
|
|
49
|
-
|
|
50
|
+
# Indicates that a range of bytes was specified.
|
|
50
51
|
# @return [String]
|
|
51
52
|
def accept_ranges
|
|
52
53
|
data[:accept_ranges]
|
|
@@ -54,15 +55,33 @@ module Aws::S3
|
|
|
54
55
|
|
|
55
56
|
# If the object expiration is configured (see PUT Bucket lifecycle), the
|
|
56
57
|
# response includes this header. It includes the expiry-date and rule-id
|
|
57
|
-
# key
|
|
58
|
+
# key-value pairs providing object expiration information. The value of
|
|
58
59
|
# the rule-id is URL encoded.
|
|
59
60
|
# @return [String]
|
|
60
61
|
def expiration
|
|
61
62
|
data[:expiration]
|
|
62
63
|
end
|
|
63
64
|
|
|
64
|
-
#
|
|
65
|
-
#
|
|
65
|
+
# If the object is an archived object (an object whose storage class is
|
|
66
|
+
# GLACIER), the response includes this header if either the archive
|
|
67
|
+
# restoration is in progress (see RestoreObject or an archive copy is
|
|
68
|
+
# already restored.
|
|
69
|
+
#
|
|
70
|
+
# If an archive copy is already restored, the header value indicates
|
|
71
|
+
# when Amazon S3 is scheduled to delete the object copy. For example:
|
|
72
|
+
#
|
|
73
|
+
# `x-amz-restore: ongoing-request="false", expiry-date="Fri, 23 Dec 2012
|
|
74
|
+
# 00:00:00 GMT"`
|
|
75
|
+
#
|
|
76
|
+
# If the object restoration is in progress, the header returns the value
|
|
77
|
+
# `ongoing-request="true"`.
|
|
78
|
+
#
|
|
79
|
+
# For more information about archiving objects, see [Transitioning
|
|
80
|
+
# Objects: General Considerations][1].
|
|
81
|
+
#
|
|
82
|
+
#
|
|
83
|
+
#
|
|
84
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations
|
|
66
85
|
# @return [String]
|
|
67
86
|
def restore
|
|
68
87
|
data[:restore]
|
|
@@ -81,14 +100,14 @@ module Aws::S3
|
|
|
81
100
|
end
|
|
82
101
|
|
|
83
102
|
# An ETag is an opaque identifier assigned by a web server to a specific
|
|
84
|
-
# version of a resource found at a URL
|
|
103
|
+
# version of a resource found at a URL.
|
|
85
104
|
# @return [String]
|
|
86
105
|
def etag
|
|
87
106
|
data[:etag]
|
|
88
107
|
end
|
|
89
108
|
|
|
90
109
|
# This is set to the number of metadata entries not returned in
|
|
91
|
-
# x-amz-meta headers. This can happen if you create metadata using an
|
|
110
|
+
# `x-amz-meta` headers. This can happen if you create metadata using an
|
|
92
111
|
# API like SOAP that supports more flexible metadata than the REST API.
|
|
93
112
|
# For example, using SOAP, you can create metadata whose values are not
|
|
94
113
|
# legal HTTP headers.
|
|
@@ -154,8 +173,11 @@ module Aws::S3
|
|
|
154
173
|
data[:website_redirect_location]
|
|
155
174
|
end
|
|
156
175
|
|
|
157
|
-
#
|
|
158
|
-
#
|
|
176
|
+
# If the object is stored using server-side encryption either with an
|
|
177
|
+
# AWS KMS customer master key (CMK) or an Amazon S3-managed encryption
|
|
178
|
+
# key, the response includes this header with the value of the
|
|
179
|
+
# server-side encryption algorithm used when storing this object in
|
|
180
|
+
# Amazon S3 (for example, AES256, aws:kms).
|
|
159
181
|
# @return [String]
|
|
160
182
|
def server_side_encryption
|
|
161
183
|
data[:server_side_encryption]
|
|
@@ -176,7 +198,7 @@ module Aws::S3
|
|
|
176
198
|
end
|
|
177
199
|
|
|
178
200
|
# If server-side encryption with a customer-provided encryption key was
|
|
179
|
-
# requested, the response will include this header to provide round
|
|
201
|
+
# requested, the response will include this header to provide round-trip
|
|
180
202
|
# message integrity verification of the customer-provided encryption
|
|
181
203
|
# key.
|
|
182
204
|
# @return [String]
|
|
@@ -184,14 +206,22 @@ module Aws::S3
|
|
|
184
206
|
data[:sse_customer_key_md5]
|
|
185
207
|
end
|
|
186
208
|
|
|
187
|
-
# If present, specifies the ID of the AWS Key Management Service (
|
|
188
|
-
#
|
|
209
|
+
# If present, specifies the ID of the AWS Key Management Service (AWS
|
|
210
|
+
# KMS) symmetric customer managed customer master key (CMK) that was
|
|
211
|
+
# used for the object.
|
|
189
212
|
# @return [String]
|
|
190
213
|
def ssekms_key_id
|
|
191
214
|
data[:ssekms_key_id]
|
|
192
215
|
end
|
|
193
216
|
|
|
194
|
-
|
|
217
|
+
# Provides storage class information of the object. Amazon S3 returns
|
|
218
|
+
# this header for all objects except for Standard storage class objects.
|
|
219
|
+
#
|
|
220
|
+
# For more information, see [Storage Classes][1].
|
|
221
|
+
#
|
|
222
|
+
#
|
|
223
|
+
#
|
|
224
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
|
195
225
|
# @return [String]
|
|
196
226
|
def storage_class
|
|
197
227
|
data[:storage_class]
|
|
@@ -204,7 +234,37 @@ module Aws::S3
|
|
|
204
234
|
data[:request_charged]
|
|
205
235
|
end
|
|
206
236
|
|
|
207
|
-
|
|
237
|
+
# Amazon S3 can return this header if your request involves a bucket
|
|
238
|
+
# that is either a source or destination in a replication rule.
|
|
239
|
+
#
|
|
240
|
+
# In replication, you have a source bucket on which you configure
|
|
241
|
+
# replication and destination bucket where Amazon S3 stores object
|
|
242
|
+
# replicas. When you request an object (`GetObject`) or object metadata
|
|
243
|
+
# (`HeadObject`) from these buckets, Amazon S3 will return the
|
|
244
|
+
# `x-amz-replication-status` header in the response as follows:
|
|
245
|
+
#
|
|
246
|
+
# * If requesting an object from the source bucket — Amazon S3 will
|
|
247
|
+
# return the `x-amz-replication-status` header if the object in your
|
|
248
|
+
# request is eligible for replication.
|
|
249
|
+
#
|
|
250
|
+
# For example, suppose that in your replication configuration, you
|
|
251
|
+
# specify object prefix `TaxDocs` requesting Amazon S3 to replicate
|
|
252
|
+
# objects with key prefix `TaxDocs`. Any objects you upload with this
|
|
253
|
+
# key name prefix, for example `TaxDocs/document1.pdf`, are eligible
|
|
254
|
+
# for replication. For any object request with this key name prefix,
|
|
255
|
+
# Amazon S3 will return the `x-amz-replication-status` header with
|
|
256
|
+
# value PENDING, COMPLETED or FAILED indicating object replication
|
|
257
|
+
# status.
|
|
258
|
+
#
|
|
259
|
+
# * If requesting an object from the destination bucket — Amazon S3 will
|
|
260
|
+
# return the `x-amz-replication-status` header with value REPLICA if
|
|
261
|
+
# the object in your request is a replica that Amazon S3 created.
|
|
262
|
+
#
|
|
263
|
+
# For more information, see [Replication][1].
|
|
264
|
+
#
|
|
265
|
+
#
|
|
266
|
+
#
|
|
267
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
|
|
208
268
|
# @return [String]
|
|
209
269
|
def replication_status
|
|
210
270
|
data[:replication_status]
|
|
@@ -216,19 +276,36 @@ module Aws::S3
|
|
|
216
276
|
data[:parts_count]
|
|
217
277
|
end
|
|
218
278
|
|
|
219
|
-
# The
|
|
279
|
+
# The Object Lock mode, if any, that's in effect for this object. This
|
|
280
|
+
# header is only returned if the requester has the
|
|
281
|
+
# `s3:GetObjectRetention` permission. For more information about S3
|
|
282
|
+
# Object Lock, see [Object Lock][1].
|
|
283
|
+
#
|
|
284
|
+
#
|
|
285
|
+
#
|
|
286
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
|
|
220
287
|
# @return [String]
|
|
221
288
|
def object_lock_mode
|
|
222
289
|
data[:object_lock_mode]
|
|
223
290
|
end
|
|
224
291
|
|
|
225
|
-
# The date and time when
|
|
292
|
+
# The date and time when the Object Lock retention period expires. This
|
|
293
|
+
# header is only returned if the requester has the
|
|
294
|
+
# `s3:GetObjectRetention` permission.
|
|
226
295
|
# @return [Time]
|
|
227
296
|
def object_lock_retain_until_date
|
|
228
297
|
data[:object_lock_retain_until_date]
|
|
229
298
|
end
|
|
230
299
|
|
|
231
|
-
#
|
|
300
|
+
# Specifies whether a legal hold is in effect for this object. This
|
|
301
|
+
# header is only returned if the requester has the
|
|
302
|
+
# `s3:GetObjectLegalHold` permission. This header is not returned if the
|
|
303
|
+
# specified version of this object has never had a legal hold applied.
|
|
304
|
+
# For more information about S3 Object Lock, see [Object Lock][1].
|
|
305
|
+
#
|
|
306
|
+
#
|
|
307
|
+
#
|
|
308
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
|
|
232
309
|
# @return [String]
|
|
233
310
|
def object_lock_legal_hold_status
|
|
234
311
|
data[:object_lock_legal_hold_status]
|
|
@@ -510,8 +587,8 @@ module Aws::S3
|
|
|
510
587
|
# Specifies whether the object tag-set are copied from the source object
|
|
511
588
|
# or replaced with tag-set provided in the request.
|
|
512
589
|
# @option options [String] :server_side_encryption
|
|
513
|
-
# The
|
|
514
|
-
# S3 (
|
|
590
|
+
# The server-side encryption algorithm used when storing this object in
|
|
591
|
+
# Amazon S3 (for example, AES256, aws:kms).
|
|
515
592
|
# @option options [String] :storage_class
|
|
516
593
|
# The type of storage to use for the object. Defaults to 'STANDARD'.
|
|
517
594
|
# @option options [String] :website_redirect_location
|
|
@@ -519,31 +596,36 @@ module Aws::S3
|
|
|
519
596
|
# object to another object in the same bucket or to an external URL.
|
|
520
597
|
# Amazon S3 stores the value of this header in the object metadata.
|
|
521
598
|
# @option options [String] :sse_customer_algorithm
|
|
522
|
-
# Specifies the algorithm to use to when encrypting the object (
|
|
523
|
-
# AES256).
|
|
599
|
+
# Specifies the algorithm to use to when encrypting the object (for
|
|
600
|
+
# example, AES256).
|
|
524
601
|
# @option options [String] :sse_customer_key
|
|
525
602
|
# Specifies the customer-provided encryption key for Amazon S3 to use in
|
|
526
603
|
# encrypting data. This value is used to store the object and then it is
|
|
527
|
-
# discarded; Amazon does not store the encryption key. The key must
|
|
528
|
-
# appropriate for use with the algorithm specified in the
|
|
529
|
-
# x-amz-server-side-encryption-customer-algorithm header.
|
|
604
|
+
# discarded; Amazon S3 does not store the encryption key. The key must
|
|
605
|
+
# be appropriate for use with the algorithm specified in the
|
|
606
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
|
530
607
|
# @option options [String] :sse_customer_key_md5
|
|
531
608
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
|
532
609
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
|
533
|
-
# ensure the encryption key was transmitted without error.
|
|
610
|
+
# ensure that the encryption key was transmitted without error.
|
|
534
611
|
# @option options [String] :ssekms_key_id
|
|
535
612
|
# Specifies the AWS KMS key ID to use for object encryption. All GET and
|
|
536
613
|
# PUT requests for an object protected by AWS KMS will fail if not made
|
|
537
|
-
# via SSL or using SigV4.
|
|
538
|
-
# officially supported AWS SDKs and CLI
|
|
539
|
-
#
|
|
614
|
+
# via SSL or using SigV4. For information about configuring using any of
|
|
615
|
+
# the officially supported AWS SDKs and AWS CLI, see [Specifying the
|
|
616
|
+
# Signature Version in Request Authentication][1] in the *Amazon S3
|
|
617
|
+
# Developer Guide*.
|
|
618
|
+
#
|
|
619
|
+
#
|
|
620
|
+
#
|
|
621
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
|
|
540
622
|
# @option options [String] :ssekms_encryption_context
|
|
541
623
|
# Specifies the AWS KMS Encryption Context to use for object encryption.
|
|
542
624
|
# The value of this header is a base64-encoded UTF-8 string holding JSON
|
|
543
625
|
# with the encryption context key-value pairs.
|
|
544
626
|
# @option options [String] :copy_source_sse_customer_algorithm
|
|
545
|
-
# Specifies the algorithm to use when decrypting the source object
|
|
546
|
-
#
|
|
627
|
+
# Specifies the algorithm to use when decrypting the source object (for
|
|
628
|
+
# example, AES256).
|
|
547
629
|
# @option options [String] :copy_source_sse_customer_key
|
|
548
630
|
# Specifies the customer-provided encryption key for Amazon S3 to use to
|
|
549
631
|
# decrypt the source object. The encryption key provided in this header
|
|
@@ -551,21 +633,25 @@ module Aws::S3
|
|
|
551
633
|
# @option options [String] :copy_source_sse_customer_key_md5
|
|
552
634
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
|
553
635
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
|
554
|
-
# ensure the encryption key was transmitted without error.
|
|
636
|
+
# ensure that the encryption key was transmitted without error.
|
|
555
637
|
# @option options [String] :request_payer
|
|
556
|
-
# Confirms that the requester knows that
|
|
557
|
-
#
|
|
558
|
-
# requests.
|
|
559
|
-
# buckets
|
|
560
|
-
#
|
|
638
|
+
# Confirms that the requester knows that they will be charged for the
|
|
639
|
+
# request. Bucket owners need not specify this parameter in their
|
|
640
|
+
# requests. For information about downloading objects from requester
|
|
641
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
642
|
+
# in the *Amazon S3 Developer Guide*.
|
|
643
|
+
#
|
|
644
|
+
#
|
|
645
|
+
#
|
|
646
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
561
647
|
# @option options [String] :tagging
|
|
562
648
|
# The tag-set for the object destination object this value must be used
|
|
563
|
-
# in conjunction with the TaggingDirective
|
|
564
|
-
# as URL Query parameters
|
|
649
|
+
# in conjunction with the `TaggingDirective`. The tag-set must be
|
|
650
|
+
# encoded as URL Query parameters.
|
|
565
651
|
# @option options [String] :object_lock_mode
|
|
566
|
-
# The
|
|
652
|
+
# The Object Lock mode that you want to apply to the copied object.
|
|
567
653
|
# @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
|
|
568
|
-
# The date and time when you want the copied object's
|
|
654
|
+
# The date and time when you want the copied object's Object Lock to
|
|
569
655
|
# expire.
|
|
570
656
|
# @option options [String] :object_lock_legal_hold_status
|
|
571
657
|
# Specifies whether you want to apply a Legal Hold to the copied object.
|
|
@@ -591,16 +677,22 @@ module Aws::S3
|
|
|
591
677
|
# @option options [String] :mfa
|
|
592
678
|
# The concatenation of the authentication device's serial number, a
|
|
593
679
|
# space, and the value that is displayed on your authentication device.
|
|
680
|
+
# Required to permanently delete a versioned object if versioning is
|
|
681
|
+
# configured with MFA delete enabled.
|
|
594
682
|
# @option options [String] :version_id
|
|
595
683
|
# VersionId used to reference a specific version of the object.
|
|
596
684
|
# @option options [String] :request_payer
|
|
597
|
-
# Confirms that the requester knows that
|
|
598
|
-
#
|
|
599
|
-
# requests.
|
|
600
|
-
# buckets
|
|
601
|
-
#
|
|
685
|
+
# Confirms that the requester knows that they will be charged for the
|
|
686
|
+
# request. Bucket owners need not specify this parameter in their
|
|
687
|
+
# requests. For information about downloading objects from requester
|
|
688
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
689
|
+
# in the *Amazon S3 Developer Guide*.
|
|
690
|
+
#
|
|
691
|
+
#
|
|
692
|
+
#
|
|
693
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
602
694
|
# @option options [Boolean] :bypass_governance_retention
|
|
603
|
-
# Indicates whether
|
|
695
|
+
# Indicates whether S3 Object Lock should bypass Governance-mode
|
|
604
696
|
# restrictions to process this operation.
|
|
605
697
|
# @return [Types::DeleteObjectOutput]
|
|
606
698
|
def delete(options = {})
|
|
@@ -648,41 +740,45 @@ module Aws::S3
|
|
|
648
740
|
# time, otherwise return a 412 (precondition failed).
|
|
649
741
|
# @option options [String] :range
|
|
650
742
|
# Downloads the specified range bytes of an object. For more information
|
|
651
|
-
# about the HTTP Range header,
|
|
652
|
-
# http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
|
|
743
|
+
# about the HTTP Range header, see
|
|
744
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35]().
|
|
653
745
|
# @option options [String] :response_cache_control
|
|
654
|
-
# Sets the Cache-Control header of the response.
|
|
746
|
+
# Sets the `Cache-Control` header of the response.
|
|
655
747
|
# @option options [String] :response_content_disposition
|
|
656
|
-
# Sets the Content-Disposition header of the response
|
|
748
|
+
# Sets the `Content-Disposition` header of the response
|
|
657
749
|
# @option options [String] :response_content_encoding
|
|
658
|
-
# Sets the Content-Encoding header of the response.
|
|
750
|
+
# Sets the `Content-Encoding` header of the response.
|
|
659
751
|
# @option options [String] :response_content_language
|
|
660
|
-
# Sets the Content-Language header of the response.
|
|
752
|
+
# Sets the `Content-Language` header of the response.
|
|
661
753
|
# @option options [String] :response_content_type
|
|
662
|
-
# Sets the Content-Type header of the response.
|
|
754
|
+
# Sets the `Content-Type` header of the response.
|
|
663
755
|
# @option options [Time,DateTime,Date,Integer,String] :response_expires
|
|
664
|
-
# Sets the Expires header of the response.
|
|
756
|
+
# Sets the `Expires` header of the response.
|
|
665
757
|
# @option options [String] :version_id
|
|
666
758
|
# VersionId used to reference a specific version of the object.
|
|
667
759
|
# @option options [String] :sse_customer_algorithm
|
|
668
|
-
# Specifies the algorithm to use to when encrypting the object (
|
|
669
|
-
# AES256).
|
|
760
|
+
# Specifies the algorithm to use to when encrypting the object (for
|
|
761
|
+
# example, AES256).
|
|
670
762
|
# @option options [String] :sse_customer_key
|
|
671
763
|
# Specifies the customer-provided encryption key for Amazon S3 to use in
|
|
672
764
|
# encrypting data. This value is used to store the object and then it is
|
|
673
|
-
# discarded; Amazon does not store the encryption key. The key must
|
|
674
|
-
# appropriate for use with the algorithm specified in the
|
|
675
|
-
# x-amz-server-side-encryption-customer-algorithm header.
|
|
765
|
+
# discarded; Amazon S3 does not store the encryption key. The key must
|
|
766
|
+
# be appropriate for use with the algorithm specified in the
|
|
767
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
|
676
768
|
# @option options [String] :sse_customer_key_md5
|
|
677
769
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
|
678
770
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
|
679
|
-
# ensure the encryption key was transmitted without error.
|
|
771
|
+
# ensure that the encryption key was transmitted without error.
|
|
680
772
|
# @option options [String] :request_payer
|
|
681
|
-
# Confirms that the requester knows that
|
|
682
|
-
#
|
|
683
|
-
# requests.
|
|
684
|
-
# buckets
|
|
685
|
-
#
|
|
773
|
+
# Confirms that the requester knows that they will be charged for the
|
|
774
|
+
# request. Bucket owners need not specify this parameter in their
|
|
775
|
+
# requests. For information about downloading objects from requester
|
|
776
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
777
|
+
# in the *Amazon S3 Developer Guide*.
|
|
778
|
+
#
|
|
779
|
+
#
|
|
780
|
+
#
|
|
781
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
686
782
|
# @option options [Integer] :part_number
|
|
687
783
|
# Part number of the object being read. This is a positive integer
|
|
688
784
|
# between 1 and 10,000. Effectively performs a 'ranged' GET request
|
|
@@ -758,8 +854,8 @@ module Aws::S3
|
|
|
758
854
|
# @option options [Hash<String,String>] :metadata
|
|
759
855
|
# A map of metadata to store with the object in S3.
|
|
760
856
|
# @option options [String] :server_side_encryption
|
|
761
|
-
# The
|
|
762
|
-
# S3 (
|
|
857
|
+
# The server-side encryption algorithm used when storing this object in
|
|
858
|
+
# Amazon S3 (for example, AES256, aws:kms).
|
|
763
859
|
# @option options [String] :storage_class
|
|
764
860
|
# The type of storage to use for the object. Defaults to 'STANDARD'.
|
|
765
861
|
# @option options [String] :website_redirect_location
|
|
@@ -767,42 +863,51 @@ module Aws::S3
|
|
|
767
863
|
# object to another object in the same bucket or to an external URL.
|
|
768
864
|
# Amazon S3 stores the value of this header in the object metadata.
|
|
769
865
|
# @option options [String] :sse_customer_algorithm
|
|
770
|
-
# Specifies the algorithm to use to when encrypting the object (
|
|
771
|
-
# AES256).
|
|
866
|
+
# Specifies the algorithm to use to when encrypting the object (for
|
|
867
|
+
# example, AES256).
|
|
772
868
|
# @option options [String] :sse_customer_key
|
|
773
869
|
# Specifies the customer-provided encryption key for Amazon S3 to use in
|
|
774
870
|
# encrypting data. This value is used to store the object and then it is
|
|
775
|
-
# discarded; Amazon does not store the encryption key. The key must
|
|
776
|
-
# appropriate for use with the algorithm specified in the
|
|
777
|
-
# x-amz-server-side-encryption-customer-algorithm header.
|
|
871
|
+
# discarded; Amazon S3 does not store the encryption key. The key must
|
|
872
|
+
# be appropriate for use with the algorithm specified in the
|
|
873
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
|
778
874
|
# @option options [String] :sse_customer_key_md5
|
|
779
875
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
|
780
876
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
|
781
|
-
# ensure the encryption key was transmitted without error.
|
|
877
|
+
# ensure that the encryption key was transmitted without error.
|
|
782
878
|
# @option options [String] :ssekms_key_id
|
|
783
|
-
# Specifies the
|
|
784
|
-
#
|
|
785
|
-
# via SSL or using SigV4.
|
|
786
|
-
#
|
|
787
|
-
#
|
|
879
|
+
# Specifies the ID of the symmetric customer managed AWS KMS CMK to use
|
|
880
|
+
# for object encryption. All GET and PUT requests for an object
|
|
881
|
+
# protected by AWS KMS will fail if not made via SSL or using SigV4. For
|
|
882
|
+
# information about configuring using any of the officially supported
|
|
883
|
+
# AWS SDKs and AWS CLI, see [Specifying the Signature Version in Request
|
|
884
|
+
# Authentication][1] in the *Amazon S3 Developer Guide*.
|
|
885
|
+
#
|
|
886
|
+
#
|
|
887
|
+
#
|
|
888
|
+
# [1]: https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
|
|
788
889
|
# @option options [String] :ssekms_encryption_context
|
|
789
890
|
# Specifies the AWS KMS Encryption Context to use for object encryption.
|
|
790
891
|
# The value of this header is a base64-encoded UTF-8 string holding JSON
|
|
791
892
|
# with the encryption context key-value pairs.
|
|
792
893
|
# @option options [String] :request_payer
|
|
793
|
-
# Confirms that the requester knows that
|
|
794
|
-
#
|
|
795
|
-
# requests.
|
|
796
|
-
# buckets
|
|
797
|
-
#
|
|
894
|
+
# Confirms that the requester knows that they will be charged for the
|
|
895
|
+
# request. Bucket owners need not specify this parameter in their
|
|
896
|
+
# requests. For information about downloading objects from requester
|
|
897
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
898
|
+
# in the *Amazon S3 Developer Guide*.
|
|
899
|
+
#
|
|
900
|
+
#
|
|
901
|
+
#
|
|
902
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
798
903
|
# @option options [String] :tagging
|
|
799
904
|
# The tag-set for the object. The tag-set must be encoded as URL Query
|
|
800
|
-
# parameters
|
|
905
|
+
# parameters.
|
|
801
906
|
# @option options [String] :object_lock_mode
|
|
802
|
-
# Specifies the
|
|
907
|
+
# Specifies the Object Lock mode that you want to apply to the uploaded
|
|
803
908
|
# object.
|
|
804
909
|
# @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
|
|
805
|
-
# Specifies the date and time when you want the
|
|
910
|
+
# Specifies the date and time when you want the Object Lock to expire.
|
|
806
911
|
# @option options [String] :object_lock_legal_hold_status
|
|
807
912
|
# Specifies whether you want to apply a Legal Hold to the uploaded
|
|
808
913
|
# object.
|
|
@@ -857,30 +962,77 @@ module Aws::S3
|
|
|
857
962
|
# })
|
|
858
963
|
# @param [Hash] options ({})
|
|
859
964
|
# @option options [String] :acl
|
|
860
|
-
# The canned ACL to apply to the object.
|
|
965
|
+
# The canned ACL to apply to the object. For more information, see
|
|
966
|
+
# [Canned ACL][1].
|
|
967
|
+
#
|
|
968
|
+
#
|
|
969
|
+
#
|
|
970
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
|
|
861
971
|
# @option options [String, IO] :body
|
|
862
972
|
# Object data.
|
|
863
973
|
# @option options [String] :cache_control
|
|
864
|
-
#
|
|
974
|
+
# Can be used to specify caching behavior along the request/reply chain.
|
|
975
|
+
# For more information, see
|
|
976
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9][1].
|
|
977
|
+
#
|
|
978
|
+
#
|
|
979
|
+
#
|
|
980
|
+
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
|
|
865
981
|
# @option options [String] :content_disposition
|
|
866
|
-
# Specifies presentational information for the object.
|
|
982
|
+
# Specifies presentational information for the object. For more
|
|
983
|
+
# information, see
|
|
984
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1][1].
|
|
985
|
+
#
|
|
986
|
+
#
|
|
987
|
+
#
|
|
988
|
+
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1
|
|
867
989
|
# @option options [String] :content_encoding
|
|
868
990
|
# Specifies what content encodings have been applied to the object and
|
|
869
991
|
# thus what decoding mechanisms must be applied to obtain the media-type
|
|
870
|
-
# referenced by the Content-Type header field.
|
|
992
|
+
# referenced by the Content-Type header field. For more information, see
|
|
993
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11][1].
|
|
994
|
+
#
|
|
995
|
+
#
|
|
996
|
+
#
|
|
997
|
+
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11
|
|
871
998
|
# @option options [String] :content_language
|
|
872
999
|
# The language the content is in.
|
|
873
1000
|
# @option options [Integer] :content_length
|
|
874
1001
|
# Size of the body in bytes. This parameter is useful when the size of
|
|
875
|
-
# the body cannot be determined automatically.
|
|
1002
|
+
# the body cannot be determined automatically. For more information, see
|
|
1003
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13][1].
|
|
1004
|
+
#
|
|
1005
|
+
#
|
|
1006
|
+
#
|
|
1007
|
+
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13
|
|
876
1008
|
# @option options [String] :content_md5
|
|
877
|
-
# The base64-encoded 128-bit MD5 digest of the
|
|
878
|
-
#
|
|
879
|
-
#
|
|
1009
|
+
# The base64-encoded 128-bit MD5 digest of the message (without the
|
|
1010
|
+
# headers) according to RFC 1864. This header can be used as a message
|
|
1011
|
+
# integrity check to verify that the data is the same data that was
|
|
1012
|
+
# originally sent. Although it is optional, we recommend using the
|
|
1013
|
+
# Content-MD5 mechanism as an end-to-end integrity check. For more
|
|
1014
|
+
# information about REST request authentication, see [REST
|
|
1015
|
+
# Authentication][1].
|
|
1016
|
+
#
|
|
1017
|
+
#
|
|
1018
|
+
#
|
|
1019
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
|
|
880
1020
|
# @option options [String] :content_type
|
|
881
|
-
# A standard MIME type describing the format of the
|
|
1021
|
+
# A standard MIME type describing the format of the contents. For more
|
|
1022
|
+
# information, see
|
|
1023
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17][1].
|
|
1024
|
+
#
|
|
1025
|
+
#
|
|
1026
|
+
#
|
|
1027
|
+
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
|
|
882
1028
|
# @option options [Time,DateTime,Date,Integer,String] :expires
|
|
883
|
-
# The date and time at which the object is no longer cacheable.
|
|
1029
|
+
# The date and time at which the object is no longer cacheable. For more
|
|
1030
|
+
# information, see
|
|
1031
|
+
# [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21][1].
|
|
1032
|
+
#
|
|
1033
|
+
#
|
|
1034
|
+
#
|
|
1035
|
+
# [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21
|
|
884
1036
|
# @option options [String] :grant_full_control
|
|
885
1037
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
|
886
1038
|
# object.
|
|
@@ -893,52 +1045,89 @@ module Aws::S3
|
|
|
893
1045
|
# @option options [Hash<String,String>] :metadata
|
|
894
1046
|
# A map of metadata to store with the object in S3.
|
|
895
1047
|
# @option options [String] :server_side_encryption
|
|
896
|
-
# The
|
|
897
|
-
# S3 (
|
|
1048
|
+
# The server-side encryption algorithm used when storing this object in
|
|
1049
|
+
# Amazon S3 (for example, AES256, aws:kms).
|
|
898
1050
|
# @option options [String] :storage_class
|
|
899
|
-
#
|
|
1051
|
+
# If you don't specify, Standard is the default storage class. Amazon
|
|
1052
|
+
# S3 supports other storage classes.
|
|
900
1053
|
# @option options [String] :website_redirect_location
|
|
901
1054
|
# If the bucket is configured as a website, redirects requests for this
|
|
902
1055
|
# object to another object in the same bucket or to an external URL.
|
|
903
|
-
# Amazon S3 stores the value of this header in the object metadata.
|
|
1056
|
+
# Amazon S3 stores the value of this header in the object metadata. For
|
|
1057
|
+
# information about object metadata, see [Object Key and Metadata][1].
|
|
1058
|
+
#
|
|
1059
|
+
# In the following example, the request header sets the redirect to an
|
|
1060
|
+
# object (anotherPage.html) in the same bucket:
|
|
1061
|
+
#
|
|
1062
|
+
# `x-amz-website-redirect-location: /anotherPage.html`
|
|
1063
|
+
#
|
|
1064
|
+
# In the following example, the request header sets the object redirect
|
|
1065
|
+
# to another website:
|
|
1066
|
+
#
|
|
1067
|
+
# `x-amz-website-redirect-location: http://www.example.com/`
|
|
1068
|
+
#
|
|
1069
|
+
# For more information about website hosting in Amazon S3, see [Hosting
|
|
1070
|
+
# Websites on Amazon S3][2] and [How to Configure Website Page
|
|
1071
|
+
# Redirects][3].
|
|
1072
|
+
#
|
|
1073
|
+
#
|
|
1074
|
+
#
|
|
1075
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html
|
|
1076
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html
|
|
1077
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html
|
|
904
1078
|
# @option options [String] :sse_customer_algorithm
|
|
905
|
-
# Specifies the algorithm to use to when encrypting the object (
|
|
906
|
-
# AES256).
|
|
1079
|
+
# Specifies the algorithm to use to when encrypting the object (for
|
|
1080
|
+
# example, AES256).
|
|
907
1081
|
# @option options [String] :sse_customer_key
|
|
908
1082
|
# Specifies the customer-provided encryption key for Amazon S3 to use in
|
|
909
1083
|
# encrypting data. This value is used to store the object and then it is
|
|
910
|
-
# discarded; Amazon does not store the encryption key. The key must
|
|
911
|
-
# appropriate for use with the algorithm specified in the
|
|
912
|
-
# x-amz-server-side-encryption-customer-algorithm header.
|
|
1084
|
+
# discarded; Amazon S3 does not store the encryption key. The key must
|
|
1085
|
+
# be appropriate for use with the algorithm specified in the
|
|
1086
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
|
913
1087
|
# @option options [String] :sse_customer_key_md5
|
|
914
1088
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
|
915
1089
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
|
916
|
-
# ensure the encryption key was transmitted without error.
|
|
1090
|
+
# ensure that the encryption key was transmitted without error.
|
|
917
1091
|
# @option options [String] :ssekms_key_id
|
|
918
|
-
#
|
|
919
|
-
#
|
|
920
|
-
#
|
|
921
|
-
#
|
|
922
|
-
#
|
|
1092
|
+
# If `x-amz-server-side-encryption` is present and has the value of
|
|
1093
|
+
# `aws:kms`, this header specifies the ID of the AWS Key Management
|
|
1094
|
+
# Service (AWS KMS) symmetrical customer managed customer master key
|
|
1095
|
+
# (CMK) that was used for the object.
|
|
1096
|
+
#
|
|
1097
|
+
# If the value of `x-amz-server-side-encryption` is `aws:kms`, this
|
|
1098
|
+
# header specifies the ID of the symmetric customer managed AWS KMS CMK
|
|
1099
|
+
# that will be used for the object. If you specify
|
|
1100
|
+
# `x-amz-server-side-encryption:aws:kms`, but do not provide`
|
|
1101
|
+
# x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the AWS
|
|
1102
|
+
# managed CMK in AWS to protect the data.
|
|
923
1103
|
# @option options [String] :ssekms_encryption_context
|
|
924
1104
|
# Specifies the AWS KMS Encryption Context to use for object encryption.
|
|
925
1105
|
# The value of this header is a base64-encoded UTF-8 string holding JSON
|
|
926
1106
|
# with the encryption context key-value pairs.
|
|
927
1107
|
# @option options [String] :request_payer
|
|
928
|
-
# Confirms that the requester knows that
|
|
929
|
-
#
|
|
930
|
-
# requests.
|
|
931
|
-
# buckets
|
|
932
|
-
#
|
|
1108
|
+
# Confirms that the requester knows that they will be charged for the
|
|
1109
|
+
# request. Bucket owners need not specify this parameter in their
|
|
1110
|
+
# requests. For information about downloading objects from requester
|
|
1111
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
1112
|
+
# in the *Amazon S3 Developer Guide*.
|
|
1113
|
+
#
|
|
1114
|
+
#
|
|
1115
|
+
#
|
|
1116
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
933
1117
|
# @option options [String] :tagging
|
|
934
1118
|
# The tag-set for the object. The tag-set must be encoded as URL Query
|
|
935
1119
|
# parameters. (For example, "Key1=Value1")
|
|
936
1120
|
# @option options [String] :object_lock_mode
|
|
937
|
-
# The
|
|
1121
|
+
# The Object Lock mode that you want to apply to this object.
|
|
938
1122
|
# @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
|
|
939
|
-
# The date and time when you want this object's
|
|
1123
|
+
# The date and time when you want this object's Object Lock to expire.
|
|
940
1124
|
# @option options [String] :object_lock_legal_hold_status
|
|
941
|
-
#
|
|
1125
|
+
# Specifies whether a legal hold will be applied to this object. For
|
|
1126
|
+
# more information about S3 Object Lock, see [Object Lock][1].
|
|
1127
|
+
#
|
|
1128
|
+
#
|
|
1129
|
+
#
|
|
1130
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
|
|
942
1131
|
# @return [Types::PutObjectOutput]
|
|
943
1132
|
def put(options = {})
|
|
944
1133
|
options = options.merge(
|
|
@@ -1038,13 +1227,19 @@ module Aws::S3
|
|
|
1038
1227
|
# })
|
|
1039
1228
|
# @param [Hash] options ({})
|
|
1040
1229
|
# @option options [String] :version_id
|
|
1230
|
+
# VersionId used to reference a specific version of the object.
|
|
1041
1231
|
# @option options [Types::RestoreRequest] :restore_request
|
|
1232
|
+
# Container for restore job parameters.
|
|
1042
1233
|
# @option options [String] :request_payer
|
|
1043
|
-
# Confirms that the requester knows that
|
|
1044
|
-
#
|
|
1045
|
-
# requests.
|
|
1046
|
-
# buckets
|
|
1047
|
-
#
|
|
1234
|
+
# Confirms that the requester knows that they will be charged for the
|
|
1235
|
+
# request. Bucket owners need not specify this parameter in their
|
|
1236
|
+
# requests. For information about downloading objects from requester
|
|
1237
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
1238
|
+
# in the *Amazon S3 Developer Guide*.
|
|
1239
|
+
#
|
|
1240
|
+
#
|
|
1241
|
+
#
|
|
1242
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
1048
1243
|
# @return [Types::RestoreObjectOutput]
|
|
1049
1244
|
def restore_object(options = {})
|
|
1050
1245
|
options = options.merge(
|
|
@@ -1170,15 +1365,21 @@ module Aws::S3
|
|
|
1170
1365
|
# @option options [String] :mfa
|
|
1171
1366
|
# The concatenation of the authentication device's serial number, a
|
|
1172
1367
|
# space, and the value that is displayed on your authentication device.
|
|
1368
|
+
# Required to permanently delete a versioned object if versioning is
|
|
1369
|
+
# configured with MFA delete enabled.
|
|
1173
1370
|
# @option options [String] :request_payer
|
|
1174
|
-
# Confirms that the requester knows that
|
|
1175
|
-
#
|
|
1176
|
-
# requests.
|
|
1177
|
-
# buckets
|
|
1178
|
-
#
|
|
1371
|
+
# Confirms that the requester knows that they will be charged for the
|
|
1372
|
+
# request. Bucket owners need not specify this parameter in their
|
|
1373
|
+
# requests. For information about downloading objects from requester
|
|
1374
|
+
# pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
|
|
1375
|
+
# in the *Amazon S3 Developer Guide*.
|
|
1376
|
+
#
|
|
1377
|
+
#
|
|
1378
|
+
#
|
|
1379
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
|
1179
1380
|
# @option options [Boolean] :bypass_governance_retention
|
|
1180
1381
|
# Specifies whether you want to delete this object even if it has a
|
|
1181
|
-
# Governance-type
|
|
1382
|
+
# Governance-type Object Lock in place. You must have sufficient
|
|
1182
1383
|
# permissions to perform this operation.
|
|
1183
1384
|
# @return [void]
|
|
1184
1385
|
def batch_delete!(options = {})
|