aws-sdk-s3 1.75.0 → 1.83.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aws-sdk-s3.rb +3 -2
- 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 +56 -7
- 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 +2127 -678
- data/lib/aws-sdk-s3/client_api.rb +148 -0
- data/lib/aws-sdk-s3/customizations/bucket.rb +7 -4
- data/lib/aws-sdk-s3/customizations/object.rb +4 -3
- data/lib/aws-sdk-s3/encryption.rb +2 -0
- data/lib/aws-sdk-s3/encryption/client.rb +11 -0
- data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +64 -29
- data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +41 -5
- data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +5 -5
- data/lib/aws-sdk-s3/encryption/io_decrypter.rb +7 -6
- data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +32 -3
- data/lib/aws-sdk-s3/encryption/utils.rb +23 -0
- data/lib/aws-sdk-s3/encryptionV2/client.rb +201 -23
- data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +40 -12
- data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +77 -10
- data/lib/aws-sdk-s3/encryptionV2/default_key_provider.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +7 -4
- data/lib/aws-sdk-s3/encryptionV2/errors.rb +24 -0
- data/lib/aws-sdk-s3/encryptionV2/io_auth_decrypter.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/io_decrypter.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/key_provider.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +90 -20
- data/lib/aws-sdk-s3/encryptionV2/materials.rb +2 -0
- data/lib/aws-sdk-s3/encryptionV2/utils.rb +2 -15
- data/lib/aws-sdk-s3/encryption_v2.rb +4 -1
- data/lib/aws-sdk-s3/file_uploader.rb +1 -1
- data/lib/aws-sdk-s3/multipart_upload.rb +15 -0
- data/lib/aws-sdk-s3/multipart_upload_part.rb +64 -7
- data/lib/aws-sdk-s3/object.rb +158 -19
- data/lib/aws-sdk-s3/object_acl.rb +13 -0
- data/lib/aws-sdk-s3/object_summary.rb +171 -17
- data/lib/aws-sdk-s3/object_version.rb +27 -3
- 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 +3 -2
- data/lib/aws-sdk-s3/resource.rb +1 -1
- data/lib/aws-sdk-s3/types.rb +1616 -222
- metadata +7 -5
- data/lib/aws-sdk-s3/plugins/bucket_arn.rb +0 -212
@@ -228,6 +228,7 @@ module Aws::S3
|
|
228
228
|
# grant_write_acp: "GrantWriteACP",
|
229
229
|
# request_payer: "requester", # accepts requester
|
230
230
|
# version_id: "ObjectVersionId",
|
231
|
+
# expected_bucket_owner: "AccountId",
|
231
232
|
# })
|
232
233
|
# @param [Hash] options ({})
|
233
234
|
# @option options [String] :acl
|
@@ -252,15 +253,23 @@ module Aws::S3
|
|
252
253
|
# @option options [String] :grant_full_control
|
253
254
|
# Allows grantee the read, write, read ACP, and write ACP permissions on
|
254
255
|
# the bucket.
|
256
|
+
#
|
257
|
+
# This action is not supported by Amazon S3 on Outposts.
|
255
258
|
# @option options [String] :grant_read
|
256
259
|
# Allows grantee to list the objects in the bucket.
|
260
|
+
#
|
261
|
+
# This action is not supported by Amazon S3 on Outposts.
|
257
262
|
# @option options [String] :grant_read_acp
|
258
263
|
# Allows grantee to read the bucket ACL.
|
264
|
+
#
|
265
|
+
# This action is not supported by Amazon S3 on Outposts.
|
259
266
|
# @option options [String] :grant_write
|
260
267
|
# Allows grantee to create, overwrite, and delete any object in the
|
261
268
|
# bucket.
|
262
269
|
# @option options [String] :grant_write_acp
|
263
270
|
# Allows grantee to write the ACL for the applicable bucket.
|
271
|
+
#
|
272
|
+
# This action is not supported by Amazon S3 on Outposts.
|
264
273
|
# @option options [String] :request_payer
|
265
274
|
# Confirms that the requester knows that they will be charged for the
|
266
275
|
# request. Bucket owners need not specify this parameter in their
|
@@ -273,6 +282,10 @@ module Aws::S3
|
|
273
282
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
274
283
|
# @option options [String] :version_id
|
275
284
|
# VersionId used to reference a specific version of the object.
|
285
|
+
# @option options [String] :expected_bucket_owner
|
286
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
287
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
288
|
+
# Denied)` error.
|
276
289
|
# @return [Types::PutObjectAclOutput]
|
277
290
|
def put(options = {})
|
278
291
|
options = options.merge(
|
@@ -48,8 +48,24 @@ module Aws::S3
|
|
48
48
|
data[:last_modified]
|
49
49
|
end
|
50
50
|
|
51
|
-
# The entity tag is
|
52
|
-
#
|
51
|
+
# The entity tag is a hash of the object. The ETag reflects changes only
|
52
|
+
# to the contents of an object, not its metadata. The ETag may or may
|
53
|
+
# not be an MD5 digest of the object data. Whether or not it is depends
|
54
|
+
# on how the object was created and how it is encrypted as described
|
55
|
+
# below:
|
56
|
+
#
|
57
|
+
# * Objects created by the PUT Object, POST Object, or Copy operation,
|
58
|
+
# or through the AWS Management Console, and are encrypted by SSE-S3
|
59
|
+
# or plaintext, have ETags that are an MD5 digest of their object
|
60
|
+
# data.
|
61
|
+
#
|
62
|
+
# * Objects created by the PUT Object, POST Object, or Copy operation,
|
63
|
+
# or through the AWS Management Console, and are encrypted by SSE-C or
|
64
|
+
# SSE-KMS, have ETags that are not an MD5 digest of their object data.
|
65
|
+
#
|
66
|
+
# * If an object is created by either the Multipart Upload or Part Copy
|
67
|
+
# operation, the ETag is not an MD5 digest, regardless of the method
|
68
|
+
# of encryption.
|
53
69
|
# @return [String]
|
54
70
|
def etag
|
55
71
|
data[:etag]
|
@@ -279,7 +295,7 @@ module Aws::S3
|
|
279
295
|
# metadata_directive: "COPY", # accepts COPY, REPLACE
|
280
296
|
# tagging_directive: "COPY", # accepts COPY, REPLACE
|
281
297
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
282
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
298
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
283
299
|
# website_redirect_location: "WebsiteRedirectLocation",
|
284
300
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
285
301
|
# sse_customer_key: "SSECustomerKey",
|
@@ -294,10 +310,14 @@ module Aws::S3
|
|
294
310
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
295
311
|
# object_lock_retain_until_date: Time.now,
|
296
312
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
313
|
+
# expected_bucket_owner: "AccountId",
|
314
|
+
# expected_source_bucket_owner: "AccountId",
|
297
315
|
# })
|
298
316
|
# @param [Hash] options ({})
|
299
317
|
# @option options [String] :acl
|
300
318
|
# The canned ACL to apply to the object.
|
319
|
+
#
|
320
|
+
# This action is not supported by Amazon S3 on Outposts.
|
301
321
|
# @option options [String] :cache_control
|
302
322
|
# Specifies caching behavior along the request/reply chain.
|
303
323
|
# @option options [String] :content_disposition
|
@@ -311,8 +331,50 @@ module Aws::S3
|
|
311
331
|
# @option options [String] :content_type
|
312
332
|
# A standard MIME type describing the format of the object data.
|
313
333
|
# @option options [required, String] :copy_source
|
314
|
-
#
|
315
|
-
#
|
334
|
+
# Specifies the source object for the copy operation. You specify the
|
335
|
+
# value in one of two formats, depending on whether you want to access
|
336
|
+
# the source object through an [access point][1]\:
|
337
|
+
#
|
338
|
+
# * For objects not accessed through an access point, specify the name
|
339
|
+
# of the source bucket and the key of the source object, separated by
|
340
|
+
# a slash (/). For example, to copy the object `reports/january.pdf`
|
341
|
+
# from the bucket `awsexamplebucket`, use
|
342
|
+
# `awsexamplebucket/reports/january.pdf`. The value must be URL
|
343
|
+
# encoded.
|
344
|
+
#
|
345
|
+
# * For objects accessed through access points, specify the Amazon
|
346
|
+
# Resource Name (ARN) of the object as accessed through the access
|
347
|
+
# point, in the format
|
348
|
+
# `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
|
349
|
+
# For example, to copy the object `reports/january.pdf` through access
|
350
|
+
# point `my-access-point` owned by account `123456789012` in Region
|
351
|
+
# `us-west-2`, use the URL encoding of
|
352
|
+
# `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
|
353
|
+
# The value must be URL encoded.
|
354
|
+
#
|
355
|
+
# <note markdown="1"> Amazon S3 supports copy operations using access points only when the
|
356
|
+
# source and destination buckets are in the same AWS Region.
|
357
|
+
#
|
358
|
+
# </note>
|
359
|
+
#
|
360
|
+
# Alternatively, for objects accessed through Amazon S3 on Outposts,
|
361
|
+
# specify the ARN of the object as accessed in the format
|
362
|
+
# `arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/object/<key>`.
|
363
|
+
# For example, to copy the object `reports/january.pdf` through
|
364
|
+
# outpost `my-outpost` owned by account `123456789012` in Region
|
365
|
+
# `us-west-2`, use the URL encoding of
|
366
|
+
# `arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf`.
|
367
|
+
# The value must be URL encoded.
|
368
|
+
#
|
369
|
+
# To copy a specific version of an object, append
|
370
|
+
# `?versionId=<version-id>` to the value (for example,
|
371
|
+
# `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
|
372
|
+
# If you don't specify a version ID, Amazon S3 copies the latest
|
373
|
+
# version of the source object.
|
374
|
+
#
|
375
|
+
#
|
376
|
+
#
|
377
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
|
316
378
|
# @option options [String] :copy_source_if_match
|
317
379
|
# Copies the object if its entity tag (ETag) matches the specified tag.
|
318
380
|
# @option options [Time,DateTime,Date,Integer,String] :copy_source_if_modified_since
|
@@ -328,12 +390,20 @@ module Aws::S3
|
|
328
390
|
# @option options [String] :grant_full_control
|
329
391
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
330
392
|
# object.
|
393
|
+
#
|
394
|
+
# This action is not supported by Amazon S3 on Outposts.
|
331
395
|
# @option options [String] :grant_read
|
332
396
|
# Allows grantee to read the object data and its metadata.
|
397
|
+
#
|
398
|
+
# This action is not supported by Amazon S3 on Outposts.
|
333
399
|
# @option options [String] :grant_read_acp
|
334
400
|
# Allows grantee to read the object ACL.
|
401
|
+
#
|
402
|
+
# This action is not supported by Amazon S3 on Outposts.
|
335
403
|
# @option options [String] :grant_write_acp
|
336
404
|
# Allows grantee to write the ACL for the applicable object.
|
405
|
+
#
|
406
|
+
# This action is not supported by Amazon S3 on Outposts.
|
337
407
|
# @option options [Hash<String,String>] :metadata
|
338
408
|
# A map of metadata to store with the object in S3.
|
339
409
|
# @option options [String] :metadata_directive
|
@@ -346,7 +416,16 @@ module Aws::S3
|
|
346
416
|
# The server-side encryption algorithm used when storing this object in
|
347
417
|
# Amazon S3 (for example, AES256, aws:kms).
|
348
418
|
# @option options [String] :storage_class
|
349
|
-
#
|
419
|
+
# By default, Amazon S3 uses the STANDARD Storage Class to store newly
|
420
|
+
# created objects. The STANDARD storage class provides high durability
|
421
|
+
# and high availability. Depending on performance needs, you can specify
|
422
|
+
# a different Storage Class. Amazon S3 on Outposts only uses the
|
423
|
+
# OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
|
424
|
+
# in the *Amazon S3 Service Developer Guide*.
|
425
|
+
#
|
426
|
+
#
|
427
|
+
#
|
428
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
350
429
|
# @option options [String] :website_redirect_location
|
351
430
|
# If the bucket is configured as a website, redirects requests for this
|
352
431
|
# object to another object in the same bucket or to an external URL.
|
@@ -359,7 +438,7 @@ module Aws::S3
|
|
359
438
|
# encrypting data. This value is used to store the object and then it is
|
360
439
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
361
440
|
# be appropriate for use with the algorithm specified in the
|
362
|
-
# `x-amz-server-side
|
441
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
363
442
|
# @option options [String] :sse_customer_key_md5
|
364
443
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
365
444
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -411,6 +490,14 @@ module Aws::S3
|
|
411
490
|
# expire.
|
412
491
|
# @option options [String] :object_lock_legal_hold_status
|
413
492
|
# Specifies whether you want to apply a Legal Hold to the copied object.
|
493
|
+
# @option options [String] :expected_bucket_owner
|
494
|
+
# The account id of the expected destination bucket owner. If the
|
495
|
+
# destination bucket is owned by a different account, the request will
|
496
|
+
# fail with an HTTP `403 (Access Denied)` error.
|
497
|
+
# @option options [String] :expected_source_bucket_owner
|
498
|
+
# The account id of the expected source bucket owner. If the source
|
499
|
+
# bucket is owned by a different account, the request will fail with an
|
500
|
+
# HTTP `403 (Access Denied)` error.
|
414
501
|
# @return [Types::CopyObjectOutput]
|
415
502
|
def copy_from(options = {})
|
416
503
|
options = options.merge(
|
@@ -428,6 +515,7 @@ module Aws::S3
|
|
428
515
|
# version_id: "ObjectVersionId",
|
429
516
|
# request_payer: "requester", # accepts requester
|
430
517
|
# bypass_governance_retention: false,
|
518
|
+
# expected_bucket_owner: "AccountId",
|
431
519
|
# })
|
432
520
|
# @param [Hash] options ({})
|
433
521
|
# @option options [String] :mfa
|
@@ -450,6 +538,10 @@ module Aws::S3
|
|
450
538
|
# @option options [Boolean] :bypass_governance_retention
|
451
539
|
# Indicates whether S3 Object Lock should bypass Governance-mode
|
452
540
|
# restrictions to process this operation.
|
541
|
+
# @option options [String] :expected_bucket_owner
|
542
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
543
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
544
|
+
# Denied)` error.
|
453
545
|
# @return [Types::DeleteObjectOutput]
|
454
546
|
def delete(options = {})
|
455
547
|
options = options.merge(
|
@@ -480,6 +572,7 @@ module Aws::S3
|
|
480
572
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
481
573
|
# request_payer: "requester", # accepts requester
|
482
574
|
# part_number: 1,
|
575
|
+
# expected_bucket_owner: "AccountId",
|
483
576
|
# })
|
484
577
|
# @param [Hash] options ({})
|
485
578
|
# @option options [String] :if_match
|
@@ -529,7 +622,7 @@ module Aws::S3
|
|
529
622
|
# encrypting data. This value is used to store the object and then it is
|
530
623
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
531
624
|
# be appropriate for use with the algorithm specified in the
|
532
|
-
# `x-amz-server-side
|
625
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
533
626
|
# @option options [String] :sse_customer_key_md5
|
534
627
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
535
628
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -549,6 +642,10 @@ module Aws::S3
|
|
549
642
|
# between 1 and 10,000. Effectively performs a 'ranged' GET request
|
550
643
|
# for the part specified. Useful for downloading just a part of an
|
551
644
|
# object.
|
645
|
+
# @option options [String] :expected_bucket_owner
|
646
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
647
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
648
|
+
# Denied)` error.
|
552
649
|
# @return [Types::GetObjectOutput]
|
553
650
|
def get(options = {}, &block)
|
554
651
|
options = options.merge(
|
@@ -577,7 +674,7 @@ module Aws::S3
|
|
577
674
|
# "MetadataKey" => "MetadataValue",
|
578
675
|
# },
|
579
676
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
580
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
677
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
581
678
|
# website_redirect_location: "WebsiteRedirectLocation",
|
582
679
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
583
680
|
# sse_customer_key: "SSECustomerKey",
|
@@ -589,10 +686,13 @@ module Aws::S3
|
|
589
686
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
590
687
|
# object_lock_retain_until_date: Time.now,
|
591
688
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
689
|
+
# expected_bucket_owner: "AccountId",
|
592
690
|
# })
|
593
691
|
# @param [Hash] options ({})
|
594
692
|
# @option options [String] :acl
|
595
693
|
# The canned ACL to apply to the object.
|
694
|
+
#
|
695
|
+
# This action is not supported by Amazon S3 on Outposts.
|
596
696
|
# @option options [String] :cache_control
|
597
697
|
# Specifies caching behavior along the request/reply chain.
|
598
698
|
# @option options [String] :content_disposition
|
@@ -610,19 +710,36 @@ module Aws::S3
|
|
610
710
|
# @option options [String] :grant_full_control
|
611
711
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
612
712
|
# object.
|
713
|
+
#
|
714
|
+
# This action is not supported by Amazon S3 on Outposts.
|
613
715
|
# @option options [String] :grant_read
|
614
716
|
# Allows grantee to read the object data and its metadata.
|
717
|
+
#
|
718
|
+
# This action is not supported by Amazon S3 on Outposts.
|
615
719
|
# @option options [String] :grant_read_acp
|
616
720
|
# Allows grantee to read the object ACL.
|
721
|
+
#
|
722
|
+
# This action is not supported by Amazon S3 on Outposts.
|
617
723
|
# @option options [String] :grant_write_acp
|
618
724
|
# Allows grantee to write the ACL for the applicable object.
|
725
|
+
#
|
726
|
+
# This action is not supported by Amazon S3 on Outposts.
|
619
727
|
# @option options [Hash<String,String>] :metadata
|
620
728
|
# A map of metadata to store with the object in S3.
|
621
729
|
# @option options [String] :server_side_encryption
|
622
730
|
# The server-side encryption algorithm used when storing this object in
|
623
731
|
# Amazon S3 (for example, AES256, aws:kms).
|
624
732
|
# @option options [String] :storage_class
|
625
|
-
#
|
733
|
+
# By default, Amazon S3 uses the STANDARD Storage Class to store newly
|
734
|
+
# created objects. The STANDARD storage class provides high durability
|
735
|
+
# and high availability. Depending on performance needs, you can specify
|
736
|
+
# a different Storage Class. Amazon S3 on Outposts only uses the
|
737
|
+
# OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
|
738
|
+
# in the *Amazon S3 Service Developer Guide*.
|
739
|
+
#
|
740
|
+
#
|
741
|
+
#
|
742
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
626
743
|
# @option options [String] :website_redirect_location
|
627
744
|
# If the bucket is configured as a website, redirects requests for this
|
628
745
|
# object to another object in the same bucket or to an external URL.
|
@@ -635,7 +752,7 @@ module Aws::S3
|
|
635
752
|
# encrypting data. This value is used to store the object and then it is
|
636
753
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
637
754
|
# be appropriate for use with the algorithm specified in the
|
638
|
-
# `x-amz-server-side
|
755
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
639
756
|
# @option options [String] :sse_customer_key_md5
|
640
757
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
641
758
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -676,6 +793,10 @@ module Aws::S3
|
|
676
793
|
# @option options [String] :object_lock_legal_hold_status
|
677
794
|
# Specifies whether you want to apply a Legal Hold to the uploaded
|
678
795
|
# object.
|
796
|
+
# @option options [String] :expected_bucket_owner
|
797
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
798
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
799
|
+
# Denied)` error.
|
679
800
|
# @return [MultipartUpload]
|
680
801
|
def initiate_multipart_upload(options = {})
|
681
802
|
options = options.merge(
|
@@ -712,7 +833,7 @@ module Aws::S3
|
|
712
833
|
# "MetadataKey" => "MetadataValue",
|
713
834
|
# },
|
714
835
|
# server_side_encryption: "AES256", # accepts AES256, aws:kms
|
715
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
836
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
716
837
|
# website_redirect_location: "WebsiteRedirectLocation",
|
717
838
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
718
839
|
# sse_customer_key: "SSECustomerKey",
|
@@ -724,16 +845,19 @@ module Aws::S3
|
|
724
845
|
# object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
|
725
846
|
# object_lock_retain_until_date: Time.now,
|
726
847
|
# object_lock_legal_hold_status: "ON", # accepts ON, OFF
|
848
|
+
# expected_bucket_owner: "AccountId",
|
727
849
|
# })
|
728
850
|
# @param [Hash] options ({})
|
729
851
|
# @option options [String] :acl
|
730
852
|
# The canned ACL to apply to the object. For more information, see
|
731
853
|
# [Canned ACL][1].
|
732
854
|
#
|
855
|
+
# This action is not supported by Amazon S3 on Outposts.
|
856
|
+
#
|
733
857
|
#
|
734
858
|
#
|
735
859
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL
|
736
|
-
# @option options [String,
|
860
|
+
# @option options [String, StringIO, File] :body
|
737
861
|
# Object data.
|
738
862
|
# @option options [String] :cache_control
|
739
863
|
# Can be used to specify caching behavior along the request/reply chain.
|
@@ -801,20 +925,36 @@ module Aws::S3
|
|
801
925
|
# @option options [String] :grant_full_control
|
802
926
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
803
927
|
# object.
|
928
|
+
#
|
929
|
+
# This action is not supported by Amazon S3 on Outposts.
|
804
930
|
# @option options [String] :grant_read
|
805
931
|
# Allows grantee to read the object data and its metadata.
|
932
|
+
#
|
933
|
+
# This action is not supported by Amazon S3 on Outposts.
|
806
934
|
# @option options [String] :grant_read_acp
|
807
935
|
# Allows grantee to read the object ACL.
|
936
|
+
#
|
937
|
+
# This action is not supported by Amazon S3 on Outposts.
|
808
938
|
# @option options [String] :grant_write_acp
|
809
939
|
# Allows grantee to write the ACL for the applicable object.
|
940
|
+
#
|
941
|
+
# This action is not supported by Amazon S3 on Outposts.
|
810
942
|
# @option options [Hash<String,String>] :metadata
|
811
943
|
# A map of metadata to store with the object in S3.
|
812
944
|
# @option options [String] :server_side_encryption
|
813
945
|
# The server-side encryption algorithm used when storing this object in
|
814
946
|
# Amazon S3 (for example, AES256, aws:kms).
|
815
947
|
# @option options [String] :storage_class
|
816
|
-
#
|
817
|
-
#
|
948
|
+
# By default, Amazon S3 uses the STANDARD Storage Class to store newly
|
949
|
+
# created objects. The STANDARD storage class provides high durability
|
950
|
+
# and high availability. Depending on performance needs, you can specify
|
951
|
+
# a different Storage Class. Amazon S3 on Outposts only uses the
|
952
|
+
# OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
|
953
|
+
# in the *Amazon S3 Service Developer Guide*.
|
954
|
+
#
|
955
|
+
#
|
956
|
+
#
|
957
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
|
818
958
|
# @option options [String] :website_redirect_location
|
819
959
|
# If the bucket is configured as a website, redirects requests for this
|
820
960
|
# object to another object in the same bucket or to an external URL.
|
@@ -848,7 +988,7 @@ module Aws::S3
|
|
848
988
|
# encrypting data. This value is used to store the object and then it is
|
849
989
|
# discarded; Amazon S3 does not store the encryption key. The key must
|
850
990
|
# be appropriate for use with the algorithm specified in the
|
851
|
-
# `x-amz-server-side
|
991
|
+
# `x-amz-server-side-encryption-customer-algorithm` header.
|
852
992
|
# @option options [String] :sse_customer_key_md5
|
853
993
|
# Specifies the 128-bit MD5 digest of the encryption key according to
|
854
994
|
# RFC 1321. Amazon S3 uses this header for a message integrity check to
|
@@ -893,6 +1033,10 @@ module Aws::S3
|
|
893
1033
|
#
|
894
1034
|
#
|
895
1035
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
|
1036
|
+
# @option options [String] :expected_bucket_owner
|
1037
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
1038
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
1039
|
+
# Denied)` error.
|
896
1040
|
# @return [Types::PutObjectOutput]
|
897
1041
|
def put(options = {})
|
898
1042
|
options = options.merge(
|
@@ -984,11 +1128,12 @@ module Aws::S3
|
|
984
1128
|
# value: "MetadataValue",
|
985
1129
|
# },
|
986
1130
|
# ],
|
987
|
-
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
|
1131
|
+
# storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
|
988
1132
|
# },
|
989
1133
|
# },
|
990
1134
|
# },
|
991
1135
|
# request_payer: "requester", # accepts requester
|
1136
|
+
# expected_bucket_owner: "AccountId",
|
992
1137
|
# })
|
993
1138
|
# @param [Hash] options ({})
|
994
1139
|
# @option options [String] :version_id
|
@@ -1005,6 +1150,10 @@ module Aws::S3
|
|
1005
1150
|
#
|
1006
1151
|
#
|
1007
1152
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
|
1153
|
+
# @option options [String] :expected_bucket_owner
|
1154
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
1155
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
1156
|
+
# Denied)` error.
|
1008
1157
|
# @return [Types::RestoreObjectOutput]
|
1009
1158
|
def restore_object(options = {})
|
1010
1159
|
options = options.merge(
|
@@ -1136,6 +1285,7 @@ module Aws::S3
|
|
1136
1285
|
# mfa: "MFA",
|
1137
1286
|
# request_payer: "requester", # accepts requester
|
1138
1287
|
# bypass_governance_retention: false,
|
1288
|
+
# expected_bucket_owner: "AccountId",
|
1139
1289
|
# })
|
1140
1290
|
# @param options ({})
|
1141
1291
|
# @option options [String] :mfa
|
@@ -1157,6 +1307,10 @@ module Aws::S3
|
|
1157
1307
|
# Specifies whether you want to delete this object even if it has a
|
1158
1308
|
# Governance-type Object Lock in place. You must have sufficient
|
1159
1309
|
# permissions to perform this operation.
|
1310
|
+
# @option options [String] :expected_bucket_owner
|
1311
|
+
# The account id of the expected bucket owner. If the bucket is owned by
|
1312
|
+
# a different account, the request will fail with an HTTP `403 (Access
|
1313
|
+
# Denied)` error.
|
1160
1314
|
# @return [void]
|
1161
1315
|
def batch_delete!(options = {})
|
1162
1316
|
batch_enum.each do |batch|
|