aws-sdk-s3 1.79.0 → 1.82.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.rb +2 -1
- data/lib/aws-sdk-s3/arn/access_point_arn.rb +62 -0
- data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +71 -0
- data/lib/aws-sdk-s3/bucket.rb +34 -3
- data/lib/aws-sdk-s3/bucket_acl.rb +5 -0
- data/lib/aws-sdk-s3/bucket_cors.rb +12 -1
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +12 -1
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +12 -1
- data/lib/aws-sdk-s3/bucket_logging.rb +5 -0
- data/lib/aws-sdk-s3/bucket_notification.rb +5 -0
- data/lib/aws-sdk-s3/bucket_policy.rb +12 -1
- data/lib/aws-sdk-s3/bucket_request_payment.rb +5 -0
- data/lib/aws-sdk-s3/bucket_tagging.rb +12 -1
- data/lib/aws-sdk-s3/bucket_versioning.rb +15 -0
- data/lib/aws-sdk-s3/bucket_website.rb +12 -1
- data/lib/aws-sdk-s3/client.rb +1753 -555
- data/lib/aws-sdk-s3/client_api.rb +87 -0
- data/lib/aws-sdk-s3/customizations/bucket.rb +7 -4
- data/lib/aws-sdk-s3/multipart_upload.rb +15 -0
- data/lib/aws-sdk-s3/multipart_upload_part.rb +63 -6
- data/lib/aws-sdk-s3/object.rb +97 -14
- data/lib/aws-sdk-s3/object_acl.rb +5 -0
- data/lib/aws-sdk-s3/object_summary.rb +92 -10
- data/lib/aws-sdk-s3/object_version.rb +22 -2
- data/lib/aws-sdk-s3/plugins/arn.rb +187 -0
- data/lib/aws-sdk-s3/plugins/bucket_dns.rb +0 -2
- data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +1 -1
- data/lib/aws-sdk-s3/plugins/s3_signer.rb +29 -7
- data/lib/aws-sdk-s3/presigned_post.rb +1 -0
- data/lib/aws-sdk-s3/presigner.rb +1 -0
- data/lib/aws-sdk-s3/types.rb +1296 -147
- metadata +7 -5
- data/lib/aws-sdk-s3/plugins/bucket_arn.rb +0 -212
@@ -12,13 +12,12 @@ module Aws
|
|
12
12
|
# Define a new initialize method that extracts out a bucket ARN.
|
13
13
|
define_method(:initialize) do |*args|
|
14
14
|
old_initialize.bind(self).call(*args)
|
15
|
-
|
15
|
+
resolved_region, arn = Plugins::ARN.resolve_arn!(
|
16
16
|
name,
|
17
17
|
client.config.region,
|
18
18
|
client.config.s3_use_arn_region
|
19
19
|
)
|
20
|
-
@
|
21
|
-
@client.config.region = region
|
20
|
+
@resolved_region = resolved_region
|
22
21
|
@arn = arn
|
23
22
|
end
|
24
23
|
|
@@ -102,7 +101,11 @@ module Aws
|
|
102
101
|
if options[:virtual_host]
|
103
102
|
"http://#{name}"
|
104
103
|
elsif @arn
|
105
|
-
Plugins::
|
104
|
+
Plugins::ARN.resolve_url!(
|
105
|
+
client.config.endpoint.dup,
|
106
|
+
@arn,
|
107
|
+
@resolved_region
|
108
|
+
).to_s
|
106
109
|
else
|
107
110
|
s3_bucket_url
|
108
111
|
end
|
@@ -220,6 +220,7 @@ module Aws::S3
|
|
220
220
|
#
|
221
221
|
# multipart_upload.abort({
|
222
222
|
# request_payer: "requester", # accepts requester
|
223
|
+
# expected_bucket_owner: "AccountId",
|
223
224
|
# })
|
224
225
|
# @param [Hash] options ({})
|
225
226
|
# @option options [String] :request_payer
|
@@ -232,6 +233,10 @@ module Aws::S3
|
|
232
233
|
#
|
233
234
|
#
|
234
235
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
236
|
+
# @option options [String] :expected_bucket_owner
|
237
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
238
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
239
|
+
# Denied)` error.
|
235
240
|
# @return [Types::AbortMultipartUploadOutput]
|
236
241
|
def abort(options = {})
|
237
242
|
options = options.merge(
|
@@ -255,6 +260,7 @@ module Aws::S3
|
|
255
260
|
# ],
|
256
261
|
# },
|
257
262
|
# request_payer: "requester", # accepts requester
|
263
|
+
# expected_bucket_owner: "AccountId",
|
258
264
|
# })
|
259
265
|
# @param [Hash] options ({})
|
260
266
|
# @option options [Types::CompletedMultipartUpload] :multipart_upload
|
@@ -269,6 +275,10 @@ module Aws::S3
|
|
269
275
|
#
|
270
276
|
#
|
271
277
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
278
|
+
# @option options [String] :expected_bucket_owner
|
279
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
280
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
281
|
+
# Denied)` error.
|
272
282
|
# @return [Object]
|
273
283
|
def complete(options = {})
|
274
284
|
options = options.merge(
|
@@ -311,6 +321,7 @@ module Aws::S3
|
|
311
321
|
#
|
312
322
|
# parts = multipart_upload.parts({
|
313
323
|
# request_payer: "requester", # accepts requester
|
324
|
+
# expected_bucket_owner: "AccountId",
|
314
325
|
# })
|
315
326
|
# @param [Hash] options ({})
|
316
327
|
# @option options [String] :request_payer
|
@@ -323,6 +334,10 @@ module Aws::S3
|
|
323
334
|
#
|
324
335
|
#
|
325
336
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
337
|
+
# @option options [String] :expected_bucket_owner
|
338
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
339
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
340
|
+
# Denied)` error.
|
326
341
|
# @return [MultipartUploadPart::Collection]
|
327
342
|
def parts(options = {})
|
328
343
|
batches = Enumerator.new do |y|
|
@@ -221,11 +221,55 @@ module Aws::S3
|
|
221
221
|
# copy_source_sse_customer_key: "CopySourceSSECustomerKey",
|
222
222
|
# copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
|
223
223
|
# request_payer: "requester", # accepts requester
|
224
|
+
# expected_bucket_owner: "AccountId",
|
225
|
+
# expected_source_bucket_owner: "AccountId",
|
224
226
|
# })
|
225
227
|
# @param [Hash] options ({})
|
226
228
|
# @option options [required, String] :copy_source
|
227
|
-
#
|
228
|
-
#
|
229
|
+
# Specifies the source object for the copy operation. You specify the
|
230
|
+
# value in one of two formats, depending on whether you want to access
|
231
|
+
# the source object through an [access point][1]\:
|
232
|
+
#
|
233
|
+
# * For objects not accessed through an access point, specify the name
|
234
|
+
# of the source bucket and key of the source object, separated by a
|
235
|
+
# slash (/). For example, to copy the object `reports/january.pdf`
|
236
|
+
# from the bucket `awsexamplebucket`, use
|
237
|
+
# `awsexamplebucket/reports/january.pdf`. The value must be URL
|
238
|
+
# encoded.
|
239
|
+
#
|
240
|
+
# * For objects accessed through access points, specify the Amazon
|
241
|
+
# Resource Name (ARN) of the object as accessed through the access
|
242
|
+
# point, in the format
|
243
|
+
# `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
|
244
|
+
# For example, to copy the object `reports/january.pdf` through access
|
245
|
+
# point `my-access-point` owned by account `123456789012` in Region
|
246
|
+
# `us-west-2`, use the URL encoding of
|
247
|
+
# `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
|
248
|
+
# The value must be URL encoded.
|
249
|
+
#
|
250
|
+
# <note markdown="1"> Amazon S3 supports copy operations using access points only when the
|
251
|
+
# source and destination buckets are in the same AWS Region.
|
252
|
+
#
|
253
|
+
# </note>
|
254
|
+
#
|
255
|
+
# Alternatively, for objects accessed through Amazon S3 on Outposts,
|
256
|
+
# specify the ARN of the object as accessed in the format
|
257
|
+
# `arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>`.
|
258
|
+
# For example, to copy the object `reports/january.pdf` through
|
259
|
+
# outpost `my-outpost` owned by account `123456789012` in Region
|
260
|
+
# `us-west-2`, use the URL encoding of
|
261
|
+
# `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
|
262
|
+
# The value must be URL encoded.
|
263
|
+
#
|
264
|
+
# To copy a specific version of an object, append
|
265
|
+
# `?versionId=<version-id>` to the value (for example,
|
266
|
+
# `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
|
267
|
+
# If you don't specify a version ID, Amazon S3 copies the latest
|
268
|
+
# version of the source object.
|
269
|
+
#
|
270
|
+
#
|
271
|
+
#
|
272
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
|
229
273
|
# @option options [String] :copy_source_if_match
|
230
274
|
# Copies the object if its entity tag (ETag) matches the specified tag.
|
231
275
|
# @option options [Time,DateTime,Date,Integer,String] :copy_source_if_modified_since
|
@@ -250,8 +294,8 @@ module Aws::S3
|
|
250
294
|
# encrypting data. This value is used to store the object and then it is
|
251
295
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
252
296
|
# be appropriate for use with the algorithm specified in the
|
253
|
-
# `x-amz-server-side
|
254
|
-
#
|
297
|
+
# `x-amz-server-side-encryption-customer-algorithm` header. This must be
|
298
|
+
# the same encryption key specified in the initiate multipart upload
|
255
299
|
# request.
|
256
300
|
# @option options [String] :sse_customer_key_md5
|
257
301
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
@@ -278,6 +322,14 @@ module Aws::S3
|
|
278
322
|
#
|
279
323
|
#
|
280
324
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
325
|
+
# @option options [String] :expected_bucket_owner
|
326
|
+
# The account id of the expected destination bucket owner. If the
|
327
|
+
# destination bucket is owned by a different account, the request will
|
328
|
+
# fail with an HTTP `403 (Access Denied)` error.
|
329
|
+
# @option options [String] :expected_source_bucket_owner
|
330
|
+
# The account id of the expected source bucket owner. If the source
|
331
|
+
# bucket is owned by a different account, the request will fail with an
|
332
|
+
# HTTP `403 (Access Denied)` error.
|
281
333
|
# @return [Types::UploadPartCopyOutput]
|
282
334
|
def copy_from(options = {})
|
283
335
|
options = options.merge(
|
@@ -300,6 +352,7 @@ module Aws::S3
|
|
300
352
|
# sse_customer_key: "SSECustomerKey",
|
301
353
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
302
354
|
# request_payer: "requester", # accepts requester
|
355
|
+
# expected_bucket_owner: "AccountId",
|
303
356
|
# })
|
304
357
|
# @param [Hash] options ({})
|
305
358
|
# @option options [String, StringIO, File] :body
|
@@ -319,8 +372,8 @@ module Aws::S3
|
|
319
372
|
# encrypting data. This value is used to store the object and then it is
|
320
373
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
321
374
|
# be appropriate for use with the algorithm specified in the
|
322
|
-
# `x-amz-server-side
|
323
|
-
#
|
375
|
+
# `x-amz-server-side-encryption-customer-algorithm header`. This must be
|
376
|
+
# the same encryption key specified in the initiate multipart upload
|
324
377
|
# request.
|
325
378
|
# @option options [String] :sse_customer_key_md5
|
326
379
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
@@ -336,6 +389,10 @@ module Aws::S3
|
|
336
389
|
#
|
337
390
|
#
|
338
391
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
392
|
+
# @option options [String] :expected_bucket_owner
|
393
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
394
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
395
|
+
# Denied)` error.
|
339
396
|
# @return [Types::UploadPartOutput]
|
340
397
|
def upload(options = {})
|
341
398
|
options = options.merge(
|
data/lib/aws-sdk-s3/object.rb
CHANGED
@@ -67,8 +67,8 @@ module Aws::S3
|
|
67
67
|
|
68
68
|
# If the object is an archived object (an object whose storage class is
|
69
69
|
# GLACIER), the response includes this header if either the archive
|
70
|
-
# restoration is in progress (see RestoreObject or an archive copy
|
71
|
-
# already restored.
|
70
|
+
# restoration is in progress (see [RestoreObject][1] or an archive copy
|
71
|
+
# is already restored.
|
72
72
|
#
|
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:
|
@@ -80,11 +80,12 @@ module Aws::S3
|
|
80
80
|
# `ongoing-request="true"`.
|
81
81
|
#
|
82
82
|
# For more information about archiving objects, see [Transitioning
|
83
|
-
# Objects: General Considerations][
|
83
|
+
# Objects: General Considerations][2].
|
84
84
|
#
|
85
85
|
#
|
86
86
|
#
|
87
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/
|
87
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
|
88
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations
|
88
89
|
# @return [String]
|
89
90
|
def restore
|
90
91
|
data[:restore]
|
@@ -529,7 +530,7 @@ module Aws::S3
|
|
529
530
|
# metadata_directive: "COPY", # accepts COPY, REPLACE
|
530
531
|
# tagging_directive: "COPY", # accepts COPY, REPLACE
|
531
532
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
532
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
533
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
533
534
|
# website_redirect_location: "WebsiteRedirectLocation",
|
534
535
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
535
536
|
# sse_customer_key: "SSECustomerKey",
|
@@ -544,6 +545,8 @@ module Aws::S3
|
|
544
545
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
545
546
|
# object_lock_retain_until_date: Time.now,
|
546
547
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
548
|
+
# expected_bucket_owner: "AccountId",
|
549
|
+
# expected_source_bucket_owner: "AccountId",
|
547
550
|
# })
|
548
551
|
# @param [Hash] options ({})
|
549
552
|
# @option options [String] :acl
|
@@ -561,8 +564,50 @@ module Aws::S3
|
|
561
564
|
# @option options [String] :content_type
|
562
565
|
# A standard MIME type describing the format of the object data.
|
563
566
|
# @option options [required, String] :copy_source
|
564
|
-
#
|
565
|
-
#
|
567
|
+
# Specifies the source object for the copy operation. You specify the
|
568
|
+
# value in one of two formats, depending on whether you want to access
|
569
|
+
# the source object through an [access point][1]\:
|
570
|
+
#
|
571
|
+
# * For objects not accessed through an access point, specify the name
|
572
|
+
# of the source bucket and the key of the source object, separated by
|
573
|
+
# a slash (/). For example, to copy the object `reports/january.pdf`
|
574
|
+
# from the bucket `awsexamplebucket`, use
|
575
|
+
# `awsexamplebucket/reports/january.pdf`. The value must be URL
|
576
|
+
# encoded.
|
577
|
+
#
|
578
|
+
# * For objects accessed through access points, specify the Amazon
|
579
|
+
# Resource Name (ARN) of the object as accessed through the access
|
580
|
+
# point, in the format
|
581
|
+
# `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
|
582
|
+
# For example, to copy the object `reports/january.pdf` through access
|
583
|
+
# point `my-access-point` owned by account `123456789012` in Region
|
584
|
+
# `us-west-2`, use the URL encoding of
|
585
|
+
# `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
|
586
|
+
# The value must be URL encoded.
|
587
|
+
#
|
588
|
+
# <note markdown="1"> Amazon S3 supports copy operations using access points only when the
|
589
|
+
# source and destination buckets are in the same AWS Region.
|
590
|
+
#
|
591
|
+
# </note>
|
592
|
+
#
|
593
|
+
# Alternatively, for objects accessed through Amazon S3 on Outposts,
|
594
|
+
# specify the ARN of the object as accessed in the format
|
595
|
+
# `arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>`.
|
596
|
+
# For example, to copy the object `reports/january.pdf` through
|
597
|
+
# outpost `my-outpost` owned by account `123456789012` in Region
|
598
|
+
# `us-west-2`, use the URL encoding of
|
599
|
+
# `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
|
600
|
+
# The value must be URL encoded.
|
601
|
+
#
|
602
|
+
# To copy a specific version of an object, append
|
603
|
+
# `?versionId=<version-id>` to the value (for example,
|
604
|
+
# `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
|
605
|
+
# If you don't specify a version ID, Amazon S3 copies the latest
|
606
|
+
# version of the source object.
|
607
|
+
#
|
608
|
+
#
|
609
|
+
#
|
610
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
|
566
611
|
# @option options [String] :copy_source_if_match
|
567
612
|
# Copies the object if its entity tag (ETag) matches the specified tag.
|
568
613
|
# @option options [Time,DateTime,Date,Integer,String] :copy_source_if_modified_since
|
@@ -609,7 +654,7 @@ module Aws::S3
|
|
609
654
|
# encrypting data. This value is used to store the object and then it is
|
610
655
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
611
656
|
# be appropriate for use with the algorithm specified in the
|
612
|
-
# `x-amz-server-side
|
657
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
613
658
|
# @option options [String] :sse_customer_key_md5
|
614
659
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
615
660
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -661,6 +706,14 @@ module Aws::S3
|
|
661
706
|
# expire.
|
662
707
|
# @option options [String] :object_lock_legal_hold_status
|
663
708
|
# Specifies whether you want to apply a Legal Hold to the copied object.
|
709
|
+
# @option options [String] :expected_bucket_owner
|
710
|
+
# The account id of the expected destination bucket owner. If the
|
711
|
+
# destination bucket is owned by a different account, the request will
|
712
|
+
# fail with an HTTP `403 (Access Denied)` error.
|
713
|
+
# @option options [String] :expected_source_bucket_owner
|
714
|
+
# The account id of the expected source bucket owner. If the source
|
715
|
+
# bucket is owned by a different account, the request will fail with an
|
716
|
+
# HTTP `403 (Access Denied)` error.
|
664
717
|
# @return [Types::CopyObjectOutput]
|
665
718
|
def copy_from(options = {})
|
666
719
|
options = options.merge(
|
@@ -678,6 +731,7 @@ module Aws::S3
|
|
678
731
|
# version_id: "ObjectVersionId",
|
679
732
|
# request_payer: "requester", # accepts requester
|
680
733
|
# bypass_governance_retention: false,
|
734
|
+
# expected_bucket_owner: "AccountId",
|
681
735
|
# })
|
682
736
|
# @param [Hash] options ({})
|
683
737
|
# @option options [String] :mfa
|
@@ -700,6 +754,10 @@ module Aws::S3
|
|
700
754
|
# @option options [Boolean] :bypass_governance_retention
|
701
755
|
# Indicates whether S3 Object Lock should bypass Governance-mode
|
702
756
|
# restrictions to process this operation.
|
757
|
+
# @option options [String] :expected_bucket_owner
|
758
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
759
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
760
|
+
# Denied)` error.
|
703
761
|
# @return [Types::DeleteObjectOutput]
|
704
762
|
def delete(options = {})
|
705
763
|
options = options.merge(
|
@@ -730,6 +788,7 @@ module Aws::S3
|
|
730
788
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
731
789
|
# request_payer: "requester", # accepts requester
|
732
790
|
# part_number: 1,
|
791
|
+
# expected_bucket_owner: "AccountId",
|
733
792
|
# })
|
734
793
|
# @param [Hash] options ({})
|
735
794
|
# @option options [String] :if_match
|
@@ -779,7 +838,7 @@ module Aws::S3
|
|
779
838
|
# encrypting data. This value is used to store the object and then it is
|
780
839
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
781
840
|
# be appropriate for use with the algorithm specified in the
|
782
|
-
# `x-amz-server-side
|
841
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
783
842
|
# @option options [String] :sse_customer_key_md5
|
784
843
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
785
844
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -799,6 +858,10 @@ module Aws::S3
|
|
799
858
|
# between 1 and 10,000. Effectively performs a 'ranged' GET request
|
800
859
|
# for the part specified. Useful for downloading just a part of an
|
801
860
|
# object.
|
861
|
+
# @option options [String] :expected_bucket_owner
|
862
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
863
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
864
|
+
# Denied)` error.
|
802
865
|
# @return [Types::GetObjectOutput]
|
803
866
|
def get(options = {}, &block)
|
804
867
|
options = options.merge(
|
@@ -827,7 +890,7 @@ module Aws::S3
|
|
827
890
|
# "MetadataKey" => "MetadataValue",
|
828
891
|
# },
|
829
892
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
830
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
893
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
831
894
|
# website_redirect_location: "WebsiteRedirectLocation",
|
832
895
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
833
896
|
# sse_customer_key: "SSECustomerKey",
|
@@ -839,6 +902,7 @@ module Aws::S3
|
|
839
902
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
840
903
|
# object_lock_retain_until_date: Time.now,
|
841
904
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
905
|
+
# expected_bucket_owner: "AccountId",
|
842
906
|
# })
|
843
907
|
# @param [Hash] options ({})
|
844
908
|
# @option options [String] :acl
|
@@ -885,7 +949,7 @@ module Aws::S3
|
|
885
949
|
# encrypting data. This value is used to store the object and then it is
|
886
950
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
887
951
|
# be appropriate for use with the algorithm specified in the
|
888
|
-
# `x-amz-server-side
|
952
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
889
953
|
# @option options [String] :sse_customer_key_md5
|
890
954
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
891
955
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -926,6 +990,10 @@ module Aws::S3
|
|
926
990
|
# @option options [String] :object_lock_legal_hold_status
|
927
991
|
# Specifies whether you want to apply a Legal Hold to the uploaded
|
928
992
|
# object.
|
993
|
+
# @option options [String] :expected_bucket_owner
|
994
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
995
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
996
|
+
# Denied)` error.
|
929
997
|
# @return [MultipartUpload]
|
930
998
|
def initiate_multipart_upload(options = {})
|
931
999
|
options = options.merge(
|
@@ -962,7 +1030,7 @@ module Aws::S3
|
|
962
1030
|
# "MetadataKey" => "MetadataValue",
|
963
1031
|
# },
|
964
1032
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
965
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
1033
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
966
1034
|
# website_redirect_location: "WebsiteRedirectLocation",
|
967
1035
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
968
1036
|
# sse_customer_key: "SSECustomerKey",
|
@@ -974,6 +1042,7 @@ module Aws::S3
|
|
974
1042
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
975
1043
|
# object_lock_retain_until_date: Time.now,
|
976
1044
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
1045
|
+
# expected_bucket_owner: "AccountId",
|
977
1046
|
# })
|
978
1047
|
# @param [Hash] options ({})
|
979
1048
|
# @option options [String] :acl
|
@@ -1098,7 +1167,7 @@ module Aws::S3
|
|
1098
1167
|
# encrypting data. This value is used to store the object and then it is
|
1099
1168
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
1100
1169
|
# be appropriate for use with the algorithm specified in the
|
1101
|
-
# `x-amz-server-side
|
1170
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
1102
1171
|
# @option options [String] :sse_customer_key_md5
|
1103
1172
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
1104
1173
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -1143,6 +1212,10 @@ module Aws::S3
|
|
1143
1212
|
#
|
1144
1213
|
#
|
1145
1214
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
|
1215
|
+
# @option options [String] :expected_bucket_owner
|
1216
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
1217
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
1218
|
+
# Denied)` error.
|
1146
1219
|
# @return [Types::PutObjectOutput]
|
1147
1220
|
def put(options = {})
|
1148
1221
|
options = options.merge(
|
@@ -1234,11 +1307,12 @@ module Aws::S3
|
|
1234
1307
|
# value: "MetadataValue",
|
1235
1308
|
# },
|
1236
1309
|
# ],
|
1237
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
1310
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
1238
1311
|
# },
|
1239
1312
|
# },
|
1240
1313
|
# },
|
1241
1314
|
# request_payer: "requester", # accepts requester
|
1315
|
+
# expected_bucket_owner: "AccountId",
|
1242
1316
|
# })
|
1243
1317
|
# @param [Hash] options ({})
|
1244
1318
|
# @option options [String] :version_id
|
@@ -1255,6 +1329,10 @@ module Aws::S3
|
|
1255
1329
|
#
|
1256
1330
|
#
|
1257
1331
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
1332
|
+
# @option options [String] :expected_bucket_owner
|
1333
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
1334
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
1335
|
+
# Denied)` error.
|
1258
1336
|
# @return [Types::RestoreObjectOutput]
|
1259
1337
|
def restore_object(options = {})
|
1260
1338
|
options = options.merge(
|
@@ -1377,6 +1455,7 @@ module Aws::S3
|
|
1377
1455
|
# mfa: "MFA",
|
1378
1456
|
# request_payer: "requester", # accepts requester
|
1379
1457
|
# bypass_governance_retention: false,
|
1458
|
+
# expected_bucket_owner: "AccountId",
|
1380
1459
|
# })
|
1381
1460
|
# @param options ({})
|
1382
1461
|
# @option options [String] :mfa
|
@@ -1398,6 +1477,10 @@ module Aws::S3
|
|
1398
1477
|
# Specifies whether you want to delete this object even if it has a
|
1399
1478
|
# Governance-type Object Lock in place. You must have sufficient
|
1400
1479
|
# permissions to perform this operation.
|
1480
|
+
# @option options [String] :expected_bucket_owner
|
1481
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
1482
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
1483
|
+
# Denied)` error.
|
1401
1484
|
# @return [void]
|
1402
1485
|
def batch_delete!(options = {})
|
1403
1486
|
batch_enum.each do |batch|
|