aws-sdk-s3 1.88.1 → 1.105.1

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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +833 -0
  3. data/LICENSE.txt +202 -0
  4. data/VERSION +1 -0
  5. data/lib/aws-sdk-s3/arn/access_point_arn.rb +14 -11
  6. data/lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb +68 -0
  7. data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +69 -0
  8. data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +9 -10
  9. data/lib/aws-sdk-s3/bucket.rb +30 -29
  10. data/lib/aws-sdk-s3/bucket_acl.rb +9 -6
  11. data/lib/aws-sdk-s3/bucket_cors.rb +8 -7
  12. data/lib/aws-sdk-s3/bucket_lifecycle.rb +6 -5
  13. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +3 -3
  14. data/lib/aws-sdk-s3/bucket_logging.rb +6 -6
  15. data/lib/aws-sdk-s3/bucket_notification.rb +4 -4
  16. data/lib/aws-sdk-s3/bucket_policy.rb +6 -5
  17. data/lib/aws-sdk-s3/bucket_request_payment.rb +8 -8
  18. data/lib/aws-sdk-s3/bucket_tagging.rb +6 -5
  19. data/lib/aws-sdk-s3/bucket_versioning.rb +13 -10
  20. data/lib/aws-sdk-s3/bucket_website.rb +6 -5
  21. data/lib/aws-sdk-s3/client.rb +1823 -1323
  22. data/lib/aws-sdk-s3/client_api.rb +65 -1
  23. data/lib/aws-sdk-s3/customizations/bucket.rb +8 -3
  24. data/lib/aws-sdk-s3/customizations/object.rb +41 -16
  25. data/lib/aws-sdk-s3/encryption/client.rb +1 -1
  26. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +0 -4
  27. data/lib/aws-sdk-s3/encryptionV2/client.rb +1 -1
  28. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +0 -4
  29. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +0 -4
  30. data/lib/aws-sdk-s3/errors.rb +1 -1
  31. data/lib/aws-sdk-s3/event_streams.rb +1 -1
  32. data/lib/aws-sdk-s3/file_downloader.rb +6 -1
  33. data/lib/aws-sdk-s3/file_uploader.rb +3 -3
  34. data/lib/aws-sdk-s3/multipart_upload.rb +7 -7
  35. data/lib/aws-sdk-s3/multipart_upload_part.rb +9 -8
  36. data/lib/aws-sdk-s3/object.rb +164 -75
  37. data/lib/aws-sdk-s3/object_acl.rb +10 -7
  38. data/lib/aws-sdk-s3/object_summary.rb +75 -71
  39. data/lib/aws-sdk-s3/object_version.rb +18 -17
  40. data/lib/aws-sdk-s3/plugins/accelerate.rb +7 -1
  41. data/lib/aws-sdk-s3/plugins/arn.rb +91 -42
  42. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +1 -1
  43. data/lib/aws-sdk-s3/plugins/dualstack.rb +25 -31
  44. data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +1 -1
  45. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +11 -10
  46. data/lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb +25 -0
  47. data/lib/aws-sdk-s3/plugins/s3_signer.rb +35 -5
  48. data/lib/aws-sdk-s3/presigner.rb +19 -5
  49. data/lib/aws-sdk-s3/resource.rb +5 -3
  50. data/lib/aws-sdk-s3/types.rb +1397 -845
  51. data/lib/aws-sdk-s3/waiters.rb +1 -1
  52. data/lib/aws-sdk-s3.rb +2 -2
  53. metadata +17 -12
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -42,7 +42,7 @@ module Aws::S3
42
42
  @key
43
43
  end
44
44
 
45
- # The date the Object was Last Modified
45
+ # Creation date of the object.
46
46
  # @return [Time]
47
47
  def last_modified
48
48
  data[:last_modified]
@@ -55,13 +55,14 @@ module Aws::S3
55
55
  # below:
56
56
  #
57
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.
58
+ # or through the Amazon Web Services Management Console, and are
59
+ # encrypted by SSE-S3 or plaintext, have ETags that are an MD5 digest
60
+ # of their object data.
61
61
  #
62
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.
63
+ # or through the Amazon Web Services Management Console, and are
64
+ # encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5 digest
65
+ # of their object data.
65
66
  #
66
67
  # * If an object is created by either the Multipart Upload or Part Copy
67
68
  # operation, the ETag is not an MD5 digest, regardless of the method
@@ -354,7 +355,8 @@ module Aws::S3
354
355
  # The value must be URL encoded.
355
356
  #
356
357
  # <note markdown="1"> Amazon S3 supports copy operations using access points only when the
357
- # source and destination buckets are in the same AWS Region.
358
+ # source and destination buckets are in the same Amazon Web Services
359
+ # Region.
358
360
  #
359
361
  # </note>
360
362
  #
@@ -375,7 +377,7 @@ module Aws::S3
375
377
  #
376
378
  #
377
379
  #
378
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
380
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html
379
381
  # @option options [String] :copy_source_if_match
380
382
  # Copies the object if its entity tag (ETag) matches the specified tag.
381
383
  # @option options [Time,DateTime,Date,Integer,String] :copy_source_if_modified_since
@@ -422,7 +424,7 @@ module Aws::S3
422
424
  # and high availability. Depending on performance needs, you can specify
423
425
  # a different Storage Class. Amazon S3 on Outposts only uses the
424
426
  # OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
425
- # in the *Amazon S3 Service Developer Guide*.
427
+ # in the *Amazon S3 User Guide*.
426
428
  #
427
429
  #
428
430
  #
@@ -445,28 +447,29 @@ module Aws::S3
445
447
  # RFC 1321. Amazon S3 uses this header for a message integrity check to
446
448
  # ensure that the encryption key was transmitted without error.
447
449
  # @option options [String] :ssekms_key_id
448
- # Specifies the AWS KMS key ID to use for object encryption. All GET and
449
- # PUT requests for an object protected by AWS KMS will fail if not made
450
- # via SSL or using SigV4. For information about configuring using any of
451
- # the officially supported AWS SDKs and AWS CLI, see [Specifying the
452
- # Signature Version in Request Authentication][1] in the *Amazon S3
453
- # Developer Guide*.
450
+ # Specifies the Amazon Web Services KMS key ID to use for object
451
+ # encryption. All GET and PUT requests for an object protected by Amazon
452
+ # Web Services KMS will fail if not made via SSL or using SigV4. For
453
+ # information about configuring using any of the officially supported
454
+ # Amazon Web Services SDKs and Amazon Web Services CLI, see [Specifying
455
+ # the Signature Version in Request Authentication][1] in the *Amazon S3
456
+ # User Guide*.
454
457
  #
455
458
  #
456
459
  #
457
460
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
458
461
  # @option options [String] :ssekms_encryption_context
459
- # Specifies the AWS KMS Encryption Context to use for object encryption.
460
- # The value of this header is a base64-encoded UTF-8 string holding JSON
461
- # with the encryption context key-value pairs.
462
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
463
+ # object encryption. The value of this header is a base64-encoded UTF-8
464
+ # string holding JSON with the encryption context key-value pairs.
462
465
  # @option options [Boolean] :bucket_key_enabled
463
466
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
464
467
  # encryption with server-side encryption using AWS KMS (SSE-KMS).
465
468
  # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
466
469
  # for object encryption with SSE-KMS.
467
470
  #
468
- # Specifying this header with a COPY operation doesn’t affect
469
- # bucket-level settings for S3 Bucket Key.
471
+ # Specifying this header with a COPY action doesn’t affect bucket-level
472
+ # settings for S3 Bucket Key.
470
473
  # @option options [String] :copy_source_sse_customer_algorithm
471
474
  # Specifies the algorithm to use when decrypting the source object (for
472
475
  # example, AES256).
@@ -483,7 +486,7 @@ module Aws::S3
483
486
  # request. Bucket owners need not specify this parameter in their
484
487
  # requests. For information about downloading objects from requester
485
488
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
486
- # in the *Amazon S3 Developer Guide*.
489
+ # in the *Amazon S3 User Guide*.
487
490
  #
488
491
  #
489
492
  #
@@ -500,11 +503,11 @@ module Aws::S3
500
503
  # @option options [String] :object_lock_legal_hold_status
501
504
  # Specifies whether you want to apply a Legal Hold to the copied object.
502
505
  # @option options [String] :expected_bucket_owner
503
- # The account id of the expected destination bucket owner. If the
506
+ # The account ID of the expected destination bucket owner. If the
504
507
  # destination bucket is owned by a different account, the request will
505
508
  # fail with an HTTP `403 (Access Denied)` error.
506
509
  # @option options [String] :expected_source_bucket_owner
507
- # The account id of the expected source bucket owner. If the source
510
+ # The account ID of the expected source bucket owner. If the source
508
511
  # bucket is owned by a different account, the request will fail with an
509
512
  # HTTP `403 (Access Denied)` error.
510
513
  # @return [Types::CopyObjectOutput]
@@ -539,16 +542,17 @@ module Aws::S3
539
542
  # request. Bucket owners need not specify this parameter in their
540
543
  # requests. For information about downloading objects from requester
541
544
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
542
- # in the *Amazon S3 Developer Guide*.
545
+ # in the *Amazon S3 User Guide*.
543
546
  #
544
547
  #
545
548
  #
546
549
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
547
550
  # @option options [Boolean] :bypass_governance_retention
548
551
  # Indicates whether S3 Object Lock should bypass Governance-mode
549
- # restrictions to process this operation.
552
+ # restrictions to process this operation. To use this header, you must
553
+ # have the `s3:PutBucketPublicAccessBlock` permission.
550
554
  # @option options [String] :expected_bucket_owner
551
- # The account id of the expected bucket owner. If the bucket is owned by
555
+ # The account ID of the expected bucket owner. If the bucket is owned by
552
556
  # a different account, the request will fail with an HTTP `403 (Access
553
557
  # Denied)` error.
554
558
  # @return [Types::DeleteObjectOutput]
@@ -624,13 +628,13 @@ module Aws::S3
624
628
  # @option options [String] :version_id
625
629
  # VersionId used to reference a specific version of the object.
626
630
  # @option options [String] :sse_customer_algorithm
627
- # Specifies the algorithm to use to when encrypting the object (for
631
+ # Specifies the algorithm to use to when decrypting the object (for
628
632
  # example, AES256).
629
633
  # @option options [String] :sse_customer_key
630
- # Specifies the customer-provided encryption key for Amazon S3 to use in
631
- # encrypting data. This value is used to store the object and then it is
632
- # discarded; Amazon S3 does not store the encryption key. The key must
633
- # be appropriate for use with the algorithm specified in the
634
+ # Specifies the customer-provided encryption key for Amazon S3 used to
635
+ # encrypt the data. This value is used to decrypt the object when
636
+ # recovering it and must match the one used when storing the data. The
637
+ # key must be appropriate for use with the algorithm specified in the
634
638
  # `x-amz-server-side-encryption-customer-algorithm` header.
635
639
  # @option options [String] :sse_customer_key_md5
636
640
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -641,7 +645,7 @@ module Aws::S3
641
645
  # request. Bucket owners need not specify this parameter in their
642
646
  # requests. For information about downloading objects from requester
643
647
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
644
- # in the *Amazon S3 Developer Guide*.
648
+ # in the *Amazon S3 User Guide*.
645
649
  #
646
650
  #
647
651
  #
@@ -652,7 +656,7 @@ module Aws::S3
652
656
  # for the part specified. Useful for downloading just a part of an
653
657
  # object.
654
658
  # @option options [String] :expected_bucket_owner
655
- # The account id of the expected bucket owner. If the bucket is owned by
659
+ # The account ID of the expected bucket owner. If the bucket is owned by
656
660
  # a different account, the request will fail with an HTTP `403 (Access
657
661
  # Denied)` error.
658
662
  # @return [Types::GetObjectOutput]
@@ -745,7 +749,7 @@ module Aws::S3
745
749
  # and high availability. Depending on performance needs, you can specify
746
750
  # a different Storage Class. Amazon S3 on Outposts only uses the
747
751
  # OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
748
- # in the *Amazon S3 Service Developer Guide*.
752
+ # in the *Amazon S3 User Guide*.
749
753
  #
750
754
  #
751
755
  #
@@ -768,34 +772,35 @@ module Aws::S3
768
772
  # RFC 1321. Amazon S3 uses this header for a message integrity check to
769
773
  # ensure that the encryption key was transmitted without error.
770
774
  # @option options [String] :ssekms_key_id
771
- # Specifies the ID of the symmetric customer managed AWS KMS CMK to use
772
- # for object encryption. All GET and PUT requests for an object
773
- # protected by AWS KMS will fail if not made via SSL or using SigV4. For
774
- # information about configuring using any of the officially supported
775
- # AWS SDKs and AWS CLI, see [Specifying the Signature Version in Request
776
- # Authentication][1] in the *Amazon S3 Developer Guide*.
775
+ # Specifies the ID of the symmetric customer managed key to use for
776
+ # object encryption. All GET and PUT requests for an object protected by
777
+ # Amazon Web Services KMS will fail if not made via SSL or using SigV4.
778
+ # For information about configuring using any of the officially
779
+ # supported Amazon Web Services SDKs and Amazon Web Services CLI, see
780
+ # [Specifying the Signature Version in Request Authentication][1] in the
781
+ # *Amazon S3 User Guide*.
777
782
  #
778
783
  #
779
784
  #
780
- # [1]: https://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
785
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
781
786
  # @option options [String] :ssekms_encryption_context
782
- # Specifies the AWS KMS Encryption Context to use for object encryption.
783
- # The value of this header is a base64-encoded UTF-8 string holding JSON
784
- # with the encryption context key-value pairs.
787
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
788
+ # object encryption. The value of this header is a base64-encoded UTF-8
789
+ # string holding JSON with the encryption context key-value pairs.
785
790
  # @option options [Boolean] :bucket_key_enabled
786
791
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
787
792
  # encryption with server-side encryption using AWS KMS (SSE-KMS).
788
793
  # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
789
794
  # for object encryption with SSE-KMS.
790
795
  #
791
- # Specifying this header with an object operation doesn’t affect
796
+ # Specifying this header with an object action doesn’t affect
792
797
  # bucket-level settings for S3 Bucket Key.
793
798
  # @option options [String] :request_payer
794
799
  # Confirms that the requester knows that they will be charged for the
795
800
  # request. Bucket owners need not specify this parameter in their
796
801
  # requests. For information about downloading objects from requester
797
802
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
798
- # in the *Amazon S3 Developer Guide*.
803
+ # in the *Amazon S3 User Guide*.
799
804
  #
800
805
  #
801
806
  #
@@ -812,7 +817,7 @@ module Aws::S3
812
817
  # Specifies whether you want to apply a Legal Hold to the uploaded
813
818
  # object.
814
819
  # @option options [String] :expected_bucket_owner
815
- # The account id of the expected bucket owner. If the bucket is owned by
820
+ # The account ID of the expected bucket owner. If the bucket is owned by
816
821
  # a different account, the request will fail with an HTTP `403 (Access
817
822
  # Denied)` error.
818
823
  # @return [MultipartUpload]
@@ -969,7 +974,7 @@ module Aws::S3
969
974
  # and high availability. Depending on performance needs, you can specify
970
975
  # a different Storage Class. Amazon S3 on Outposts only uses the
971
976
  # OUTPOSTS Storage Class. For more information, see [Storage Classes][1]
972
- # in the *Amazon S3 Service Developer Guide*.
977
+ # in the *Amazon S3 User Guide*.
973
978
  #
974
979
  #
975
980
  #
@@ -1014,34 +1019,32 @@ module Aws::S3
1014
1019
  # ensure that the encryption key was transmitted without error.
1015
1020
  # @option options [String] :ssekms_key_id
1016
1021
  # If `x-amz-server-side-encryption` is present and has the value of
1017
- # `aws:kms`, this header specifies the ID of the AWS Key Management
1018
- # Service (AWS KMS) symmetrical customer managed customer master key
1019
- # (CMK) that was used for the object.
1020
- #
1021
- # If the value of `x-amz-server-side-encryption` is `aws:kms`, this
1022
- # header specifies the ID of the symmetric customer managed AWS KMS CMK
1023
- # that will be used for the object. If you specify
1022
+ # `aws:kms`, this header specifies the ID of the Amazon Web Services Key
1023
+ # Management Service (Amazon Web Services KMS) symmetrical customer
1024
+ # managed key that was used for the object. If you specify
1024
1025
  # `x-amz-server-side-encryption:aws:kms`, but do not provide`
1025
- # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the AWS
1026
- # managed CMK in AWS to protect the data.
1026
+ # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
1027
+ # Amazon Web Services managed key to protect the data. If the KMS key
1028
+ # does not exist in the same account issuing the command, you must use
1029
+ # the full ARN and not just the ID.
1027
1030
  # @option options [String] :ssekms_encryption_context
1028
- # Specifies the AWS KMS Encryption Context to use for object encryption.
1029
- # The value of this header is a base64-encoded UTF-8 string holding JSON
1030
- # with the encryption context key-value pairs.
1031
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
1032
+ # object encryption. The value of this header is a base64-encoded UTF-8
1033
+ # string holding JSON with the encryption context key-value pairs.
1031
1034
  # @option options [Boolean] :bucket_key_enabled
1032
1035
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
1033
1036
  # encryption with server-side encryption using AWS KMS (SSE-KMS).
1034
1037
  # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
1035
1038
  # for object encryption with SSE-KMS.
1036
1039
  #
1037
- # Specifying this header with a PUT operation doesn’t affect
1038
- # bucket-level settings for S3 Bucket Key.
1040
+ # Specifying this header with a PUT action doesn’t affect bucket-level
1041
+ # settings for S3 Bucket Key.
1039
1042
  # @option options [String] :request_payer
1040
1043
  # Confirms that the requester knows that they will be charged for the
1041
1044
  # request. Bucket owners need not specify this parameter in their
1042
1045
  # requests. For information about downloading objects from requester
1043
1046
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
1044
- # in the *Amazon S3 Developer Guide*.
1047
+ # in the *Amazon S3 User Guide*.
1045
1048
  #
1046
1049
  #
1047
1050
  #
@@ -1053,6 +1056,7 @@ module Aws::S3
1053
1056
  # The Object Lock mode that you want to apply to this object.
1054
1057
  # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
1055
1058
  # The date and time when you want this object's Object Lock to expire.
1059
+ # Must be formatted as a timestamp parameter.
1056
1060
  # @option options [String] :object_lock_legal_hold_status
1057
1061
  # Specifies whether a legal hold will be applied to this object. For
1058
1062
  # more information about S3 Object Lock, see [Object Lock][1].
@@ -1061,7 +1065,7 @@ module Aws::S3
1061
1065
  #
1062
1066
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
1063
1067
  # @option options [String] :expected_bucket_owner
1064
- # The account id of the expected bucket owner. If the bucket is owned by
1068
+ # The account ID of the expected bucket owner. If the bucket is owned by
1065
1069
  # a different account, the request will fail with an HTTP `403 (Access
1066
1070
  # Denied)` error.
1067
1071
  # @return [Types::PutObjectOutput]
@@ -1172,13 +1176,13 @@ module Aws::S3
1172
1176
  # request. Bucket owners need not specify this parameter in their
1173
1177
  # requests. For information about downloading objects from requester
1174
1178
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
1175
- # in the *Amazon S3 Developer Guide*.
1179
+ # in the *Amazon S3 User Guide*.
1176
1180
  #
1177
1181
  #
1178
1182
  #
1179
1183
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
1180
1184
  # @option options [String] :expected_bucket_owner
1181
- # The account id of the expected bucket owner. If the bucket is owned by
1185
+ # The account ID of the expected bucket owner. If the bucket is owned by
1182
1186
  # a different account, the request will fail with an HTTP `403 (Access
1183
1187
  # Denied)` error.
1184
1188
  # @return [Types::RestoreObjectOutput]
@@ -1325,17 +1329,17 @@ module Aws::S3
1325
1329
  # request. Bucket owners need not specify this parameter in their
1326
1330
  # requests. For information about downloading objects from requester
1327
1331
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
1328
- # in the *Amazon S3 Developer Guide*.
1332
+ # in the *Amazon S3 User Guide*.
1329
1333
  #
1330
1334
  #
1331
1335
  #
1332
1336
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
1333
1337
  # @option options [Boolean] :bypass_governance_retention
1334
1338
  # Specifies whether you want to delete this object even if it has a
1335
- # Governance-type Object Lock in place. You must have sufficient
1336
- # permissions to perform this operation.
1339
+ # Governance-type Object Lock in place. To use this header, you must
1340
+ # have the `s3:PutBucketPublicAccessBlock` permission.
1337
1341
  # @option options [String] :expected_bucket_owner
1338
- # The account id of the expected bucket owner. If the bucket is owned by
1342
+ # The account ID of the expected bucket owner. If the bucket is owned by
1339
1343
  # a different account, the request will fail with an HTTP `403 (Access
1340
1344
  # Denied)` error.
1341
1345
  # @return [void]
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -247,16 +247,17 @@ module Aws::S3
247
247
  # request. Bucket owners need not specify this parameter in their
248
248
  # requests. For information about downloading objects from requester
249
249
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
250
- # in the *Amazon S3 Developer Guide*.
250
+ # in the *Amazon S3 User Guide*.
251
251
  #
252
252
  #
253
253
  #
254
254
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
255
255
  # @option options [Boolean] :bypass_governance_retention
256
256
  # Indicates whether S3 Object Lock should bypass Governance-mode
257
- # restrictions to process this operation.
257
+ # restrictions to process this operation. To use this header, you must
258
+ # have the `s3:PutBucketPublicAccessBlock` permission.
258
259
  # @option options [String] :expected_bucket_owner
259
- # The account id of the expected bucket owner. If the bucket is owned by
260
+ # The account ID of the expected bucket owner. If the bucket is owned by
260
261
  # a different account, the request will fail with an HTTP `403 (Access
261
262
  # Denied)` error.
262
263
  # @return [Types::DeleteObjectOutput]
@@ -330,13 +331,13 @@ module Aws::S3
330
331
  # @option options [Time,DateTime,Date,Integer,String] :response_expires
331
332
  # Sets the `Expires` header of the response.
332
333
  # @option options [String] :sse_customer_algorithm
333
- # Specifies the algorithm to use to when encrypting the object (for
334
+ # Specifies the algorithm to use to when decrypting the object (for
334
335
  # example, AES256).
335
336
  # @option options [String] :sse_customer_key
336
- # Specifies the customer-provided encryption key for Amazon S3 to use in
337
- # encrypting data. This value is used to store the object and then it is
338
- # discarded; Amazon S3 does not store the encryption key. The key must
339
- # be appropriate for use with the algorithm specified in the
337
+ # Specifies the customer-provided encryption key for Amazon S3 used to
338
+ # encrypt the data. This value is used to decrypt the object when
339
+ # recovering it and must match the one used when storing the data. The
340
+ # key must be appropriate for use with the algorithm specified in the
340
341
  # `x-amz-server-side-encryption-customer-algorithm` header.
341
342
  # @option options [String] :sse_customer_key_md5
342
343
  # Specifies the 128-bit MD5 digest of the encryption key according to
@@ -347,7 +348,7 @@ module Aws::S3
347
348
  # request. Bucket owners need not specify this parameter in their
348
349
  # requests. For information about downloading objects from requester
349
350
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
350
- # in the *Amazon S3 Developer Guide*.
351
+ # in the *Amazon S3 User Guide*.
351
352
  #
352
353
  #
353
354
  #
@@ -358,7 +359,7 @@ module Aws::S3
358
359
  # for the part specified. Useful for downloading just a part of an
359
360
  # object.
360
361
  # @option options [String] :expected_bucket_owner
361
- # The account id of the expected bucket owner. If the bucket is owned by
362
+ # The account ID of the expected bucket owner. If the bucket is owned by
362
363
  # a different account, the request will fail with an HTTP `403 (Access
363
364
  # Denied)` error.
364
365
  # @return [Types::GetObjectOutput]
@@ -431,7 +432,7 @@ module Aws::S3
431
432
  # request. Bucket owners need not specify this parameter in their
432
433
  # requests. For information about downloading objects from requester
433
434
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
434
- # in the *Amazon S3 Developer Guide*.
435
+ # in the *Amazon S3 User Guide*.
435
436
  #
436
437
  #
437
438
  #
@@ -442,7 +443,7 @@ module Aws::S3
442
443
  # for the part specified. Useful querying about the size of the part and
443
444
  # the number of parts in this object.
444
445
  # @option options [String] :expected_bucket_owner
445
- # The account id of the expected bucket owner. If the bucket is owned by
446
+ # The account ID of the expected bucket owner. If the bucket is owned by
446
447
  # a different account, the request will fail with an HTTP `403 (Access
447
448
  # Denied)` error.
448
449
  # @return [Types::HeadObjectOutput]
@@ -536,17 +537,17 @@ module Aws::S3
536
537
  # request. Bucket owners need not specify this parameter in their
537
538
  # requests. For information about downloading objects from requester
538
539
  # pays buckets, see [Downloading Objects in Requestor Pays Buckets][1]
539
- # in the *Amazon S3 Developer Guide*.
540
+ # in the *Amazon S3 User Guide*.
540
541
  #
541
542
  #
542
543
  #
543
544
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
544
545
  # @option options [Boolean] :bypass_governance_retention
545
546
  # Specifies whether you want to delete this object even if it has a
546
- # Governance-type Object Lock in place. You must have sufficient
547
- # permissions to perform this operation.
547
+ # Governance-type Object Lock in place. To use this header, you must
548
+ # have the `s3:PutBucketPublicAccessBlock` permission.
548
549
  # @option options [String] :expected_bucket_owner
549
- # The account id of the expected bucket owner. If the bucket is owned by
550
+ # The account ID of the expected bucket owner. If the bucket is owned by
550
551
  # a different account, the request will fail with an HTTP `403 (Access
551
552
  # Denied)` error.
552
553
  # @return [void]
@@ -41,11 +41,17 @@ each bucket. [Go here for more information](http://docs.aws.amazon.com/AmazonS3/
41
41
  accelerate = context.params.delete(:use_accelerate_endpoint)
42
42
  end
43
43
  accelerate = context.config.use_accelerate_endpoint if accelerate.nil?
44
- # Raise if :endpoint and dualstack are both provided
44
+ # Raise if :endpoint and accelerate are both provided
45
45
  if accelerate && !context.config.regional_endpoint
46
46
  raise ArgumentError,
47
47
  'Cannot use both :use_accelerate_endpoint and :endpoint'
48
48
  end
49
+ # Raise if :use_fips_endpoint and accelerate are both provided
50
+ if accelerate && context.config.use_fips_endpoint
51
+ raise ArgumentError,
52
+ 'Cannot use both :use_accelerate_endpoint and '\
53
+ ':use_fips_endpoint'
54
+ end
49
55
  context[:use_accelerate_endpoint] = accelerate
50
56
  @handler.call(context)
51
57
  end