aws-sdk-s3 1.85.0 → 1.86.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 149a7e68554a7b8ab408e8ca71af6db2265bfde1ff763880cf160202cbc55dfe
4
- data.tar.gz: e526a261743e9f58ce1ae89674e73a287def1ed75d3a3653077cbe4a4c51723e
3
+ metadata.gz: ae9607d0a1a7f9a817154ea0aaa3e233a12314f17b81e01f7f4eafede254b3f1
4
+ data.tar.gz: 7967ccffa09c030b22aff79554176c58a69e1fd26951e707269e3098fb974932
5
5
  SHA512:
6
- metadata.gz: f7ff92c23369d0dbe26b3f313d8c32560e0d9afbe6b6b9da2f9f3285be8eafe29436a9fcba65c7beb419fa0d10f2ec2a7b6af3a6452e735643126e743ff63b7f
7
- data.tar.gz: b86680a9d6c2eff8c99f5b18a363759da6e7847e0984ed111cc20e766e903fb85fa877ae6517ec83f3e2c1540eafbfb1086a47a7a7e4ed3ac6896ed62f8fd51f
6
+ metadata.gz: 31e6a0c27444e4eba97143a3ab99943c5d6eb8884b07da991860ffa1ca828476fa00040fbb749acc87d29c8873f99e649261c83470a7d43da71a38c4d2114067
7
+ data.tar.gz: 3e710faed8bede6e9d963cc3065d3ed781d8ab96cd3e5306464126aced783910dbcf005867cf266bc7a1a22e9da6623eeeafd0a67bcd3883f282fe72764a302f
@@ -69,6 +69,6 @@ require_relative 'aws-sdk-s3/event_streams'
69
69
  # @!group service
70
70
  module Aws::S3
71
71
 
72
- GEM_VERSION = '1.85.0'
72
+ GEM_VERSION = '1.86.0'
73
73
 
74
74
  end
@@ -34,7 +34,8 @@ module Aws::S3
34
34
  @name
35
35
  end
36
36
 
37
- # Date the bucket was created.
37
+ # Date the bucket was created. This date can change when making changes
38
+ # to your bucket, such as editing its bucket policy.
38
39
  # @return [Time]
39
40
  def creation_date
40
41
  data[:creation_date]
@@ -354,6 +355,7 @@ module Aws::S3
354
355
  # sse_customer_key_md5: "SSECustomerKeyMD5",
355
356
  # ssekms_key_id: "SSEKMSKeyId",
356
357
  # ssekms_encryption_context: "SSEKMSEncryptionContext",
358
+ # bucket_key_enabled: false,
357
359
  # request_payer: "requester", # accepts requester
358
360
  # tagging: "TaggingHeader",
359
361
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
@@ -525,6 +527,14 @@ module Aws::S3
525
527
  # Specifies the AWS KMS Encryption Context to use for object encryption.
526
528
  # The value of this header is a base64-encoded UTF-8 string holding JSON
527
529
  # with the encryption context key-value pairs.
530
+ # @option options [Boolean] :bucket_key_enabled
531
+ # Specifies whether Amazon S3 should use an S3 Bucket Key for object
532
+ # encryption with server-side encryption using AWS KMS (SSE-KMS).
533
+ # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
534
+ # for object encryption with SSE-KMS.
535
+ #
536
+ # Specifying this header with a PUT operation doesn’t affect
537
+ # bucket-level settings for S3 Bucket Key.
528
538
  # @option options [String] :request_payer
529
539
  # Confirms that the requester knows that they will be charged for the
530
540
  # request. Bucket owners need not specify this parameter in their
@@ -659,6 +659,7 @@ module Aws::S3
659
659
  # * {Types::CompleteMultipartUploadOutput#server_side_encryption #server_side_encryption} => String
660
660
  # * {Types::CompleteMultipartUploadOutput#version_id #version_id} => String
661
661
  # * {Types::CompleteMultipartUploadOutput#ssekms_key_id #ssekms_key_id} => String
662
+ # * {Types::CompleteMultipartUploadOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
662
663
  # * {Types::CompleteMultipartUploadOutput#request_charged #request_charged} => String
663
664
  #
664
665
  #
@@ -720,6 +721,7 @@ module Aws::S3
720
721
  # resp.server_side_encryption #=> String, one of "AES256", "aws:kms"
721
722
  # resp.version_id #=> String
722
723
  # resp.ssekms_key_id #=> String
724
+ # resp.bucket_key_enabled #=> Boolean
723
725
  # resp.request_charged #=> String, one of "requester"
724
726
  #
725
727
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompleteMultipartUpload AWS API Documentation
@@ -830,22 +832,20 @@ module Aws::S3
830
832
  #
831
833
  # </note>
832
834
  #
833
- # **Encryption**
835
+ # **Server-side encryption**
834
836
  #
835
- # The source object that you are copying can be encrypted or
836
- # unencrypted. The source object can be encrypted with server-side
837
- # encryption using AWS managed encryption keys (SSE-S3 or SSE-KMS) or by
838
- # using a customer-provided encryption key. With server-side encryption,
839
- # Amazon S3 encrypts your data as it writes it to disks in its data
840
- # centers and decrypts the data when you access it.
837
+ # When you perform a CopyObject operation, you can optionally use the
838
+ # appropriate encryption-related headers to encrypt the object using
839
+ # server-side encryption with AWS managed encryption keys (SSE-S3 or
840
+ # SSE-KMS) or a customer-provided encryption key. With server-side
841
+ # encryption, Amazon S3 encrypts your data as it writes it to disks in
842
+ # its data centers and decrypts the data when you access it. For more
843
+ # information about server-side encryption, see [Using Server-Side
844
+ # Encryption][8].
841
845
  #
842
- # You can optionally use the appropriate encryption-related headers to
843
- # request server-side encryption for the target object. You have the
844
- # option to provide your own encryption key or use SSE-S3 or SSE-KMS,
845
- # regardless of the form of server-side encryption that was used to
846
- # encrypt the source object. You can even request encryption if the
847
- # source object was not encrypted. For more information about
848
- # server-side encryption, see [Using Server-Side Encryption][8].
846
+ # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
847
+ # the object. For more information, see [Amazon S3 Bucket Keys][9] in
848
+ # the *Amazon Simple Storage Service Developer Guide*.
849
849
  #
850
850
  # **Access Control List (ACL)-Specific Request Headers**
851
851
  #
@@ -855,13 +855,13 @@ module Aws::S3
855
855
  # permissions to individual AWS accounts or to predefined groups defined
856
856
  # by Amazon S3. These permissions are then added to the ACL on the
857
857
  # object. For more information, see [Access Control List (ACL)
858
- # Overview][9] and [Managing ACLs Using the REST API][10].
858
+ # Overview][10] and [Managing ACLs Using the REST API][11].
859
859
  #
860
860
  # **Storage Class Options**
861
861
  #
862
862
  # You can use the `CopyObject` operation to change the storage class of
863
863
  # an object that is already stored in Amazon S3 using the `StorageClass`
864
- # parameter. For more information, see [Storage Classes][11] in the
864
+ # parameter. For more information, see [Storage Classes][12] in the
865
865
  # *Amazon S3 Service Developer Guide*.
866
866
  #
867
867
  # **Versioning**
@@ -882,15 +882,15 @@ module Aws::S3
882
882
  #
883
883
  # If the source object's storage class is GLACIER, you must restore a
884
884
  # copy of this object before you can use it as a source object for the
885
- # copy operation. For more information, see [RestoreObject][12].
885
+ # copy operation. For more information, see [RestoreObject][13].
886
886
  #
887
887
  # The following operations are related to `CopyObject`\:
888
888
  #
889
- # * [PutObject][13]
889
+ # * [PutObject][14]
890
890
  #
891
- # * [GetObject][14]
891
+ # * [GetObject][15]
892
892
  #
893
- # For more information, see [Copying Objects][15].
893
+ # For more information, see [Copying Objects][16].
894
894
  #
895
895
  #
896
896
  #
@@ -902,13 +902,14 @@ module Aws::S3
902
902
  # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html
903
903
  # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html
904
904
  # [8]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
905
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
906
- # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
907
- # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
908
- # [12]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
909
- # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
910
- # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
911
- # [15]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
905
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
906
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
907
+ # [11]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
908
+ # [12]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
909
+ # [13]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
910
+ # [14]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
911
+ # [15]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
912
+ # [16]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html
912
913
  #
913
914
  # @option params [String] :acl
914
915
  # The canned ACL to apply to the object.
@@ -1109,6 +1110,15 @@ module Aws::S3
1109
1110
  # The value of this header is a base64-encoded UTF-8 string holding JSON
1110
1111
  # with the encryption context key-value pairs.
1111
1112
  #
1113
+ # @option params [Boolean] :bucket_key_enabled
1114
+ # Specifies whether Amazon S3 should use an S3 Bucket Key for object
1115
+ # encryption with server-side encryption using AWS KMS (SSE-KMS).
1116
+ # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
1117
+ # for object encryption with SSE-KMS.
1118
+ #
1119
+ # Specifying this header with a COPY operation doesn’t affect
1120
+ # bucket-level settings for S3 Bucket Key.
1121
+ #
1112
1122
  # @option params [String] :copy_source_sse_customer_algorithm
1113
1123
  # Specifies the algorithm to use when decrypting the source object (for
1114
1124
  # example, AES256).
@@ -1170,6 +1180,7 @@ module Aws::S3
1170
1180
  # * {Types::CopyObjectOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
1171
1181
  # * {Types::CopyObjectOutput#ssekms_key_id #ssekms_key_id} => String
1172
1182
  # * {Types::CopyObjectOutput#ssekms_encryption_context #ssekms_encryption_context} => String
1183
+ # * {Types::CopyObjectOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
1173
1184
  # * {Types::CopyObjectOutput#request_charged #request_charged} => String
1174
1185
  #
1175
1186
  #
@@ -1225,6 +1236,7 @@ module Aws::S3
1225
1236
  # sse_customer_key_md5: "SSECustomerKeyMD5",
1226
1237
  # ssekms_key_id: "SSEKMSKeyId",
1227
1238
  # ssekms_encryption_context: "SSEKMSEncryptionContext",
1239
+ # bucket_key_enabled: false,
1228
1240
  # copy_source_sse_customer_algorithm: "CopySourceSSECustomerAlgorithm",
1229
1241
  # copy_source_sse_customer_key: "CopySourceSSECustomerKey",
1230
1242
  # copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
@@ -1249,6 +1261,7 @@ module Aws::S3
1249
1261
  # resp.sse_customer_key_md5 #=> String
1250
1262
  # resp.ssekms_key_id #=> String
1251
1263
  # resp.ssekms_encryption_context #=> String
1264
+ # resp.bucket_key_enabled #=> Boolean
1252
1265
  # resp.request_charged #=> String, one of "requester"
1253
1266
  #
1254
1267
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObject AWS API Documentation
@@ -1405,33 +1418,33 @@ module Aws::S3
1405
1418
  # * {Types::CreateBucketOutput#location #location} => String
1406
1419
  #
1407
1420
  #
1408
- # @example Example: To create a bucket
1421
+ # @example Example: To create a bucket in a specific region
1409
1422
  #
1410
- # # The following example creates a bucket.
1423
+ # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1411
1424
  #
1412
1425
  # resp = client.create_bucket({
1413
1426
  # bucket: "examplebucket",
1427
+ # create_bucket_configuration: {
1428
+ # location_constraint: "eu-west-1",
1429
+ # },
1414
1430
  # })
1415
1431
  #
1416
1432
  # resp.to_h outputs the following:
1417
1433
  # {
1418
- # location: "/examplebucket",
1434
+ # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1419
1435
  # }
1420
1436
  #
1421
- # @example Example: To create a bucket in a specific region
1437
+ # @example Example: To create a bucket
1422
1438
  #
1423
- # # The following example creates a bucket. The request specifies an AWS region where to create the bucket.
1439
+ # # The following example creates a bucket.
1424
1440
  #
1425
1441
  # resp = client.create_bucket({
1426
1442
  # bucket: "examplebucket",
1427
- # create_bucket_configuration: {
1428
- # location_constraint: "eu-west-1",
1429
- # },
1430
1443
  # })
1431
1444
  #
1432
1445
  # resp.to_h outputs the following:
1433
1446
  # {
1434
- # location: "http://examplebucket.<Region>.s3.amazonaws.com/",
1447
+ # location: "/examplebucket",
1435
1448
  # }
1436
1449
  #
1437
1450
  # @example Request syntax with placeholder values
@@ -1827,6 +1840,15 @@ module Aws::S3
1827
1840
  # The value of this header is a base64-encoded UTF-8 string holding JSON
1828
1841
  # with the encryption context key-value pairs.
1829
1842
  #
1843
+ # @option params [Boolean] :bucket_key_enabled
1844
+ # Specifies whether Amazon S3 should use an S3 Bucket Key for object
1845
+ # encryption with server-side encryption using AWS KMS (SSE-KMS).
1846
+ # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
1847
+ # for object encryption with SSE-KMS.
1848
+ #
1849
+ # Specifying this header with an object operation doesn’t affect
1850
+ # bucket-level settings for S3 Bucket Key.
1851
+ #
1830
1852
  # @option params [String] :request_payer
1831
1853
  # Confirms that the requester knows that they will be charged for the
1832
1854
  # request. Bucket owners need not specify this parameter in their
@@ -1870,6 +1892,7 @@ module Aws::S3
1870
1892
  # * {Types::CreateMultipartUploadOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
1871
1893
  # * {Types::CreateMultipartUploadOutput#ssekms_key_id #ssekms_key_id} => String
1872
1894
  # * {Types::CreateMultipartUploadOutput#ssekms_encryption_context #ssekms_encryption_context} => String
1895
+ # * {Types::CreateMultipartUploadOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
1873
1896
  # * {Types::CreateMultipartUploadOutput#request_charged #request_charged} => String
1874
1897
  #
1875
1898
  #
@@ -1916,6 +1939,7 @@ module Aws::S3
1916
1939
  # sse_customer_key_md5: "SSECustomerKeyMD5",
1917
1940
  # ssekms_key_id: "SSEKMSKeyId",
1918
1941
  # ssekms_encryption_context: "SSEKMSEncryptionContext",
1942
+ # bucket_key_enabled: false,
1919
1943
  # request_payer: "requester", # accepts requester
1920
1944
  # tagging: "TaggingHeader",
1921
1945
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
@@ -1936,6 +1960,7 @@ module Aws::S3
1936
1960
  # resp.sse_customer_key_md5 #=> String
1937
1961
  # resp.ssekms_key_id #=> String
1938
1962
  # resp.ssekms_encryption_context #=> String
1963
+ # resp.bucket_key_enabled #=> Boolean
1939
1964
  # resp.request_charged #=> String, one of "requester"
1940
1965
  #
1941
1966
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload AWS API Documentation
@@ -2929,35 +2954,35 @@ module Aws::S3
2929
2954
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
2930
2955
  #
2931
2956
  #
2932
- # @example Example: To remove tag set from an object version
2957
+ # @example Example: To remove tag set from an object
2933
2958
  #
2934
- # # The following example removes tag set associated with the specified object version. The request specifies both the
2935
- # # object key and object version.
2959
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2960
+ # # operation removes tag set from the latest object version.
2936
2961
  #
2937
2962
  # resp = client.delete_object_tagging({
2938
2963
  # bucket: "examplebucket",
2939
2964
  # key: "HappyFace.jpg",
2940
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2941
2965
  # })
2942
2966
  #
2943
2967
  # resp.to_h outputs the following:
2944
2968
  # {
2945
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2969
+ # version_id: "null",
2946
2970
  # }
2947
2971
  #
2948
- # @example Example: To remove tag set from an object
2972
+ # @example Example: To remove tag set from an object version
2949
2973
  #
2950
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2951
- # # operation removes tag set from the latest object version.
2974
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
2975
+ # # object key and object version.
2952
2976
  #
2953
2977
  # resp = client.delete_object_tagging({
2954
2978
  # bucket: "examplebucket",
2955
2979
  # key: "HappyFace.jpg",
2980
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2956
2981
  # })
2957
2982
  #
2958
2983
  # resp.to_h outputs the following:
2959
2984
  # {
2960
- # version_id: "null",
2985
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2961
2986
  # }
2962
2987
  #
2963
2988
  # @example Request syntax with placeholder values
@@ -3097,22 +3122,20 @@ module Aws::S3
3097
3122
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
3098
3123
  #
3099
3124
  #
3100
- # @example Example: To delete multiple object versions from a versioned bucket
3125
+ # @example Example: To delete multiple objects from a versioned bucket
3101
3126
  #
3102
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3103
- # # versions and returns the key and versions of deleted objects in the response.
3127
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3128
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3104
3129
  #
3105
3130
  # resp = client.delete_objects({
3106
3131
  # bucket: "examplebucket",
3107
3132
  # delete: {
3108
3133
  # objects: [
3109
3134
  # {
3110
- # key: "HappyFace.jpg",
3111
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3135
+ # key: "objectkey1",
3112
3136
  # },
3113
3137
  # {
3114
- # key: "HappyFace.jpg",
3115
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3138
+ # key: "objectkey2",
3116
3139
  # },
3117
3140
  # ],
3118
3141
  # quiet: false,
@@ -3123,30 +3146,34 @@ module Aws::S3
3123
3146
  # {
3124
3147
  # deleted: [
3125
3148
  # {
3126
- # key: "HappyFace.jpg",
3127
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3149
+ # delete_marker: true,
3150
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3151
+ # key: "objectkey1",
3128
3152
  # },
3129
3153
  # {
3130
- # key: "HappyFace.jpg",
3131
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3154
+ # delete_marker: true,
3155
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3156
+ # key: "objectkey2",
3132
3157
  # },
3133
3158
  # ],
3134
3159
  # }
3135
3160
  #
3136
- # @example Example: To delete multiple objects from a versioned bucket
3161
+ # @example Example: To delete multiple object versions from a versioned bucket
3137
3162
  #
3138
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3139
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3163
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3164
+ # # versions and returns the key and versions of deleted objects in the response.
3140
3165
  #
3141
3166
  # resp = client.delete_objects({
3142
3167
  # bucket: "examplebucket",
3143
3168
  # delete: {
3144
3169
  # objects: [
3145
3170
  # {
3146
- # key: "objectkey1",
3171
+ # key: "HappyFace.jpg",
3172
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3147
3173
  # },
3148
3174
  # {
3149
- # key: "objectkey2",
3175
+ # key: "HappyFace.jpg",
3176
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3150
3177
  # },
3151
3178
  # ],
3152
3179
  # quiet: false,
@@ -3157,14 +3184,12 @@ module Aws::S3
3157
3184
  # {
3158
3185
  # deleted: [
3159
3186
  # {
3160
- # delete_marker: true,
3161
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3162
- # key: "objectkey1",
3187
+ # key: "HappyFace.jpg",
3188
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3163
3189
  # },
3164
3190
  # {
3165
- # delete_marker: true,
3166
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3167
- # key: "objectkey2",
3191
+ # key: "HappyFace.jpg",
3192
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3168
3193
  # },
3169
3194
  # ],
3170
3195
  # }
@@ -3614,6 +3639,7 @@ module Aws::S3
3614
3639
  # resp.server_side_encryption_configuration.rules #=> Array
3615
3640
  # resp.server_side_encryption_configuration.rules[0].apply_server_side_encryption_by_default.sse_algorithm #=> String, one of "AES256", "aws:kms"
3616
3641
  # resp.server_side_encryption_configuration.rules[0].apply_server_side_encryption_by_default.kms_master_key_id #=> String
3642
+ # resp.server_side_encryption_configuration.rules[0].bucket_key_enabled #=> Boolean
3617
3643
  #
3618
3644
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryption AWS API Documentation
3619
3645
  #
@@ -4705,6 +4731,7 @@ module Aws::S3
4705
4731
  # resp.replication_configuration.rules[0].filter.and.tags[0].value #=> String
4706
4732
  # resp.replication_configuration.rules[0].status #=> String, one of "Enabled", "Disabled"
4707
4733
  # resp.replication_configuration.rules[0].source_selection_criteria.sse_kms_encrypted_objects.status #=> String, one of "Enabled", "Disabled"
4734
+ # resp.replication_configuration.rules[0].source_selection_criteria.replica_modifications.status #=> String, one of "Enabled", "Disabled"
4708
4735
  # resp.replication_configuration.rules[0].existing_object_replication.status #=> String, one of "Enabled", "Disabled"
4709
4736
  # resp.replication_configuration.rules[0].destination.bucket #=> String
4710
4737
  # resp.replication_configuration.rules[0].destination.account #=> String
@@ -5333,6 +5360,7 @@ module Aws::S3
5333
5360
  # * {Types::GetObjectOutput#sse_customer_algorithm #sse_customer_algorithm} => String
5334
5361
  # * {Types::GetObjectOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
5335
5362
  # * {Types::GetObjectOutput#ssekms_key_id #ssekms_key_id} => String
5363
+ # * {Types::GetObjectOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
5336
5364
  # * {Types::GetObjectOutput#storage_class #storage_class} => String
5337
5365
  # * {Types::GetObjectOutput#request_charged #request_charged} => String
5338
5366
  # * {Types::GetObjectOutput#replication_status #replication_status} => String
@@ -5343,49 +5371,49 @@ module Aws::S3
5343
5371
  # * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
5344
5372
  #
5345
5373
  #
5346
- # @example Example: To retrieve a byte range of an object
5374
+ # @example Example: To retrieve an object
5347
5375
  #
5348
- # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
5349
- # # specific byte range.
5376
+ # # The following example retrieves an object for an S3 bucket.
5350
5377
  #
5351
5378
  # resp = client.get_object({
5352
5379
  # bucket: "examplebucket",
5353
- # key: "SampleFile.txt",
5354
- # range: "bytes=0-9",
5380
+ # key: "HappyFace.jpg",
5355
5381
  # })
5356
5382
  #
5357
5383
  # resp.to_h outputs the following:
5358
5384
  # {
5359
5385
  # accept_ranges: "bytes",
5360
- # content_length: 10,
5361
- # content_range: "bytes 0-9/43",
5362
- # content_type: "text/plain",
5363
- # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
5364
- # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
5386
+ # content_length: 3191,
5387
+ # content_type: "image/jpeg",
5388
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
5389
+ # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
5365
5390
  # metadata: {
5366
5391
  # },
5392
+ # tag_count: 2,
5367
5393
  # version_id: "null",
5368
5394
  # }
5369
5395
  #
5370
- # @example Example: To retrieve an object
5396
+ # @example Example: To retrieve a byte range of an object
5371
5397
  #
5372
- # # The following example retrieves an object for an S3 bucket.
5398
+ # # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
5399
+ # # specific byte range.
5373
5400
  #
5374
5401
  # resp = client.get_object({
5375
5402
  # bucket: "examplebucket",
5376
- # key: "HappyFace.jpg",
5403
+ # key: "SampleFile.txt",
5404
+ # range: "bytes=0-9",
5377
5405
  # })
5378
5406
  #
5379
5407
  # resp.to_h outputs the following:
5380
5408
  # {
5381
5409
  # accept_ranges: "bytes",
5382
- # content_length: 3191,
5383
- # content_type: "image/jpeg",
5384
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
5385
- # last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
5410
+ # content_length: 10,
5411
+ # content_range: "bytes 0-9/43",
5412
+ # content_type: "text/plain",
5413
+ # etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
5414
+ # last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
5386
5415
  # metadata: {
5387
5416
  # },
5388
- # tag_count: 2,
5389
5417
  # version_id: "null",
5390
5418
  # }
5391
5419
  #
@@ -5470,6 +5498,7 @@ module Aws::S3
5470
5498
  # resp.sse_customer_algorithm #=> String
5471
5499
  # resp.sse_customer_key_md5 #=> String
5472
5500
  # resp.ssekms_key_id #=> String
5501
+ # resp.bucket_key_enabled #=> Boolean
5473
5502
  # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
5474
5503
  # resp.request_charged #=> String, one of "requester"
5475
5504
  # resp.replication_status #=> String, one of "COMPLETE", "PENDING", "FAILED", "REPLICA"
@@ -6443,6 +6472,7 @@ module Aws::S3
6443
6472
  # * {Types::HeadObjectOutput#sse_customer_algorithm #sse_customer_algorithm} => String
6444
6473
  # * {Types::HeadObjectOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
6445
6474
  # * {Types::HeadObjectOutput#ssekms_key_id #ssekms_key_id} => String
6475
+ # * {Types::HeadObjectOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
6446
6476
  # * {Types::HeadObjectOutput#storage_class #storage_class} => String
6447
6477
  # * {Types::HeadObjectOutput#request_charged #request_charged} => String
6448
6478
  # * {Types::HeadObjectOutput#replication_status #replication_status} => String
@@ -6518,6 +6548,7 @@ module Aws::S3
6518
6548
  # resp.sse_customer_algorithm #=> String
6519
6549
  # resp.sse_customer_key_md5 #=> String
6520
6550
  # resp.ssekms_key_id #=> String
6551
+ # resp.bucket_key_enabled #=> Boolean
6521
6552
  # resp.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA", "INTELLIGENT_TIERING", "GLACIER", "DEEP_ARCHIVE", "OUTPOSTS"
6522
6553
  # resp.request_charged #=> String, one of "requester"
6523
6554
  # resp.replication_status #=> String, one of "COMPLETE", "PENDING", "FAILED", "REPLICA"
@@ -8669,14 +8700,17 @@ module Aws::S3
8669
8700
  req.send_request(options)
8670
8701
  end
8671
8702
 
8672
- # This implementation of the `PUT` operation uses the `encryption`
8673
- # subresource to set the default encryption state of an existing bucket.
8674
- #
8675
- # This implementation of the `PUT` operation sets default encryption for
8676
- # a bucket using server-side encryption with Amazon S3-managed keys
8677
- # SSE-S3 or AWS KMS customer master keys (CMKs) (SSE-KMS). For
8678
- # information about the Amazon S3 default encryption feature, see
8679
- # [Amazon S3 Default Bucket Encryption][1].
8703
+ # This operation uses the `encryption` subresource to configure default
8704
+ # encryption and Amazon S3 Bucket Key for an existing bucket.
8705
+ #
8706
+ # Default encryption for a bucket can use server-side encryption with
8707
+ # Amazon S3-managed keys (SSE-S3) or AWS KMS customer master keys
8708
+ # (SSE-KMS). If you specify default encryption using SSE-KMS, you can
8709
+ # also configure Amazon S3 Bucket Key. For information about default
8710
+ # encryption, see [Amazon S3 default bucket encryption][1] in the
8711
+ # *Amazon Simple Storage Service Developer Guide*. For more information
8712
+ # about S3 Bucket Keys, see [Amazon S3 Bucket Keys][2] in the *Amazon
8713
+ # Simple Storage Service Developer Guide*.
8680
8714
  #
8681
8715
  # This operation requires AWS Signature Version 4. For more information,
8682
8716
  # see [ Authenticating Requests (AWS Signature Version
@@ -8686,23 +8720,24 @@ module Aws::S3
8686
8720
  # `s3:PutEncryptionConfiguration` action. The bucket owner has this
8687
8721
  # permission by default. The bucket owner can grant this permission to
8688
8722
  # others. For more information about permissions, see [Permissions
8689
- # Related to Bucket Subresource Operations][2] and [Managing Access
8690
- # Permissions to Your Amazon S3 Resources][3] in the Amazon Simple
8723
+ # Related to Bucket Subresource Operations][3] and [Managing Access
8724
+ # Permissions to Your Amazon S3 Resources][4] in the Amazon Simple
8691
8725
  # Storage Service Developer Guide.
8692
8726
  #
8693
8727
  # **Related Resources**
8694
8728
  #
8695
- # * [GetBucketEncryption][4]
8729
+ # * [GetBucketEncryption][5]
8696
8730
  #
8697
- # * [DeleteBucketEncryption][5]
8731
+ # * [DeleteBucketEncryption][6]
8698
8732
  #
8699
8733
  #
8700
8734
  #
8701
8735
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html
8702
- # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
8703
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8704
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html
8705
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html
8736
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
8737
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
8738
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html
8739
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html
8740
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html
8706
8741
  #
8707
8742
  # @option params [required, String] :bucket
8708
8743
  # Specifies default encryption for a bucket using server-side encryption
@@ -8744,6 +8779,7 @@ module Aws::S3
8744
8779
  # sse_algorithm: "AES256", # required, accepts AES256, aws:kms
8745
8780
  # kms_master_key_id: "SSEKMSKeyId",
8746
8781
  # },
8782
+ # bucket_key_enabled: false,
8747
8783
  # },
8748
8784
  # ],
8749
8785
  # },
@@ -9931,15 +9967,15 @@ module Aws::S3
9931
9967
  #
9932
9968
  # Specify the replication configuration in the request body. In the
9933
9969
  # replication configuration, you provide the name of the destination
9934
- # bucket where you want Amazon S3 to replicate objects, the IAM role
9935
- # that Amazon S3 can assume to replicate objects on your behalf, and
9936
- # other relevant information.
9970
+ # bucket or buckets where you want Amazon S3 to replicate objects, the
9971
+ # IAM role that Amazon S3 can assume to replicate objects on your
9972
+ # behalf, and other relevant information.
9937
9973
  #
9938
9974
  # A replication configuration must include at least one rule, and can
9939
9975
  # contain a maximum of 1,000. Each rule identifies a subset of objects
9940
9976
  # to replicate by filtering the objects in the source bucket. To choose
9941
9977
  # additional subsets of objects to replicate, add a rule for each
9942
- # subset. All rules must specify the same destination bucket.
9978
+ # subset.
9943
9979
  #
9944
9980
  # To specify a subset of the objects in the source bucket to apply a
9945
9981
  # replication rule to, add the Filter element as a child of the Rule
@@ -10080,6 +10116,9 @@ module Aws::S3
10080
10116
  # sse_kms_encrypted_objects: {
10081
10117
  # status: "Enabled", # required, accepts Enabled, Disabled
10082
10118
  # },
10119
+ # replica_modifications: {
10120
+ # status: "Enabled", # required, accepts Enabled, Disabled
10121
+ # },
10083
10122
  # },
10084
10123
  # existing_object_replication: {
10085
10124
  # status: "Enabled", # required, accepts Enabled, Disabled
@@ -10647,8 +10686,13 @@ module Aws::S3
10647
10686
  # encryption, Amazon S3 encrypts your data as it writes it to disks in
10648
10687
  # its data centers and decrypts the data when you access it. You have
10649
10688
  # the option to provide your own encryption key or use AWS managed
10650
- # encryption keys. For more information, see [Using Server-Side
10651
- # Encryption][2].
10689
+ # encryption keys (SSE-S3 or SSE-KMS). For more information, see [Using
10690
+ # Server-Side Encryption][2].
10691
+ #
10692
+ # If you request server-side encryption using AWS Key Management Service
10693
+ # (SSE-KMS), you can enable an S3 Bucket Key at the object-level. For
10694
+ # more information, see [Amazon S3 Bucket Keys][3] in the *Amazon Simple
10695
+ # Storage Service Developer Guide*.
10652
10696
  #
10653
10697
  # **Access Control List (ACL)-Specific Request Headers**
10654
10698
  #
@@ -10657,8 +10701,8 @@ module Aws::S3
10657
10701
  # adding a new object, you can grant permissions to individual AWS
10658
10702
  # accounts or to predefined groups defined by Amazon S3. These
10659
10703
  # permissions are then added to the ACL on the object. For more
10660
- # information, see [Access Control List (ACL) Overview][3] and [Managing
10661
- # ACLs Using the REST API][4].
10704
+ # information, see [Access Control List (ACL) Overview][4] and [Managing
10705
+ # ACLs Using the REST API][5].
10662
10706
  #
10663
10707
  # **Storage Class Options**
10664
10708
  #
@@ -10666,7 +10710,7 @@ module Aws::S3
10666
10710
  # created objects. The STANDARD storage class provides high durability
10667
10711
  # and high availability. Depending on performance needs, you can specify
10668
10712
  # a different Storage Class. Amazon S3 on Outposts only uses the
10669
- # OUTPOSTS Storage Class. For more information, see [Storage Classes][5]
10713
+ # OUTPOSTS Storage Class. For more information, see [Storage Classes][6]
10670
10714
  # in the *Amazon S3 Service Developer Guide*.
10671
10715
  #
10672
10716
  # **Versioning**
@@ -10678,26 +10722,27 @@ module Aws::S3
10678
10722
  # object simultaneously, it stores all of the objects.
10679
10723
  #
10680
10724
  # For more information about versioning, see [Adding Objects to
10681
- # Versioning Enabled Buckets][6]. For information about returning the
10682
- # versioning state of a bucket, see [GetBucketVersioning][7].
10725
+ # Versioning Enabled Buckets][7]. For information about returning the
10726
+ # versioning state of a bucket, see [GetBucketVersioning][8].
10683
10727
  #
10684
10728
  # **Related Resources**
10685
10729
  #
10686
- # * [CopyObject][8]
10730
+ # * [CopyObject][9]
10687
10731
  #
10688
- # * [DeleteObject][9]
10732
+ # * [DeleteObject][10]
10689
10733
  #
10690
10734
  #
10691
10735
  #
10692
10736
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html
10693
10737
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
10694
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
10695
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
10696
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
10697
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html
10698
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html
10699
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
10700
- # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
10738
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
10739
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html
10740
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html
10741
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html
10742
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html
10743
+ # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html
10744
+ # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
10745
+ # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
10701
10746
  #
10702
10747
  # @option params [String] :acl
10703
10748
  # The canned ACL to apply to the object. For more information, see
@@ -10911,6 +10956,15 @@ module Aws::S3
10911
10956
  # The value of this header is a base64-encoded UTF-8 string holding JSON
10912
10957
  # with the encryption context key-value pairs.
10913
10958
  #
10959
+ # @option params [Boolean] :bucket_key_enabled
10960
+ # Specifies whether Amazon S3 should use an S3 Bucket Key for object
10961
+ # encryption with server-side encryption using AWS KMS (SSE-KMS).
10962
+ # Setting this header to `true` causes Amazon S3 to use an S3 Bucket Key
10963
+ # for object encryption with SSE-KMS.
10964
+ #
10965
+ # Specifying this header with a PUT operation doesn’t affect
10966
+ # bucket-level settings for S3 Bucket Key.
10967
+ #
10914
10968
  # @option params [String] :request_payer
10915
10969
  # Confirms that the requester knows that they will be charged for the
10916
10970
  # request. Bucket owners need not specify this parameter in their
@@ -10955,9 +11009,27 @@ module Aws::S3
10955
11009
  # * {Types::PutObjectOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
10956
11010
  # * {Types::PutObjectOutput#ssekms_key_id #ssekms_key_id} => String
10957
11011
  # * {Types::PutObjectOutput#ssekms_encryption_context #ssekms_encryption_context} => String
11012
+ # * {Types::PutObjectOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
10958
11013
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
10959
11014
  #
10960
11015
  #
11016
+ # @example Example: To upload an object
11017
+ #
11018
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11019
+ # # syntax. S3 returns VersionId of the newly created object.
11020
+ #
11021
+ # resp = client.put_object({
11022
+ # body: "HappyFace.jpg",
11023
+ # bucket: "examplebucket",
11024
+ # key: "HappyFace.jpg",
11025
+ # })
11026
+ #
11027
+ # resp.to_h outputs the following:
11028
+ # {
11029
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11030
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11031
+ # }
11032
+ #
10961
11033
  # @example Example: To upload an object and specify canned ACL.
10962
11034
  #
10963
11035
  # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
@@ -10976,22 +11048,24 @@ module Aws::S3
10976
11048
  # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
10977
11049
  # }
10978
11050
  #
10979
- # @example Example: To upload an object and specify optional tags
11051
+ # @example Example: To upload an object (specify optional headers)
10980
11052
  #
10981
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
10982
- # # S3 returns version ID of the newly created object.
11053
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11054
+ # # storage class and use server-side encryption.
10983
11055
  #
10984
11056
  # resp = client.put_object({
10985
- # body: "c:\\HappyFace.jpg",
11057
+ # body: "HappyFace.jpg",
10986
11058
  # bucket: "examplebucket",
10987
11059
  # key: "HappyFace.jpg",
10988
- # tagging: "key1=value1&key2=value2",
11060
+ # server_side_encryption: "AES256",
11061
+ # storage_class: "STANDARD_IA",
10989
11062
  # })
10990
11063
  #
10991
11064
  # resp.to_h outputs the following:
10992
11065
  # {
10993
11066
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
10994
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11067
+ # server_side_encryption: "AES256",
11068
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
10995
11069
  # }
10996
11070
  #
10997
11071
  # @example Example: To upload an object and specify server-side encryption and object tags
@@ -11051,41 +11125,22 @@ module Aws::S3
11051
11125
  # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11052
11126
  # }
11053
11127
  #
11054
- # @example Example: To upload an object
11055
- #
11056
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11057
- # # syntax. S3 returns VersionId of the newly created object.
11058
- #
11059
- # resp = client.put_object({
11060
- # body: "HappyFace.jpg",
11061
- # bucket: "examplebucket",
11062
- # key: "HappyFace.jpg",
11063
- # })
11064
- #
11065
- # resp.to_h outputs the following:
11066
- # {
11067
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11068
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11069
- # }
11070
- #
11071
- # @example Example: To upload an object (specify optional headers)
11128
+ # @example Example: To upload an object and specify optional tags
11072
11129
  #
11073
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11074
- # # storage class and use server-side encryption.
11130
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
11131
+ # # S3 returns version ID of the newly created object.
11075
11132
  #
11076
11133
  # resp = client.put_object({
11077
- # body: "HappyFace.jpg",
11134
+ # body: "c:\\HappyFace.jpg",
11078
11135
  # bucket: "examplebucket",
11079
11136
  # key: "HappyFace.jpg",
11080
- # server_side_encryption: "AES256",
11081
- # storage_class: "STANDARD_IA",
11137
+ # tagging: "key1=value1&key2=value2",
11082
11138
  # })
11083
11139
  #
11084
11140
  # resp.to_h outputs the following:
11085
11141
  # {
11086
11142
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11087
- # server_side_encryption: "AES256",
11088
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11143
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11089
11144
  # }
11090
11145
  #
11091
11146
  # @example Streaming a file from disk
@@ -11124,6 +11179,7 @@ module Aws::S3
11124
11179
  # sse_customer_key_md5: "SSECustomerKeyMD5",
11125
11180
  # ssekms_key_id: "SSEKMSKeyId",
11126
11181
  # ssekms_encryption_context: "SSEKMSEncryptionContext",
11182
+ # bucket_key_enabled: false,
11127
11183
  # request_payer: "requester", # accepts requester
11128
11184
  # tagging: "TaggingHeader",
11129
11185
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
@@ -11142,6 +11198,7 @@ module Aws::S3
11142
11198
  # resp.sse_customer_key_md5 #=> String
11143
11199
  # resp.ssekms_key_id #=> String
11144
11200
  # resp.ssekms_encryption_context #=> String
11201
+ # resp.bucket_key_enabled #=> Boolean
11145
11202
  # resp.request_charged #=> String, one of "requester"
11146
11203
  #
11147
11204
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject AWS API Documentation
@@ -13053,6 +13110,7 @@ module Aws::S3
13053
13110
  # * {Types::UploadPartOutput#sse_customer_algorithm #sse_customer_algorithm} => String
13054
13111
  # * {Types::UploadPartOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
13055
13112
  # * {Types::UploadPartOutput#ssekms_key_id #ssekms_key_id} => String
13113
+ # * {Types::UploadPartOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
13056
13114
  # * {Types::UploadPartOutput#request_charged #request_charged} => String
13057
13115
  #
13058
13116
  #
@@ -13098,6 +13156,7 @@ module Aws::S3
13098
13156
  # resp.sse_customer_algorithm #=> String
13099
13157
  # resp.sse_customer_key_md5 #=> String
13100
13158
  # resp.ssekms_key_id #=> String
13159
+ # resp.bucket_key_enabled #=> Boolean
13101
13160
  # resp.request_charged #=> String, one of "requester"
13102
13161
  #
13103
13162
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPart AWS API Documentation
@@ -13403,48 +13462,49 @@ module Aws::S3
13403
13462
  # * {Types::UploadPartCopyOutput#sse_customer_algorithm #sse_customer_algorithm} => String
13404
13463
  # * {Types::UploadPartCopyOutput#sse_customer_key_md5 #sse_customer_key_md5} => String
13405
13464
  # * {Types::UploadPartCopyOutput#ssekms_key_id #ssekms_key_id} => String
13465
+ # * {Types::UploadPartCopyOutput#bucket_key_enabled #bucket_key_enabled} => Boolean
13406
13466
  # * {Types::UploadPartCopyOutput#request_charged #request_charged} => String
13407
13467
  #
13408
13468
  #
13409
- # @example Example: To upload a part by copying byte range from an existing object as data source
13469
+ # @example Example: To upload a part by copying data from an existing object as data source
13410
13470
  #
13411
- # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
13412
- # # data source.
13471
+ # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
13413
13472
  #
13414
13473
  # resp = client.upload_part_copy({
13415
13474
  # bucket: "examplebucket",
13416
13475
  # copy_source: "/bucketname/sourceobjectkey",
13417
- # copy_source_range: "bytes=1-100000",
13418
13476
  # key: "examplelargeobject",
13419
- # part_number: 2,
13477
+ # part_number: 1,
13420
13478
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
13421
13479
  # })
13422
13480
  #
13423
13481
  # resp.to_h outputs the following:
13424
13482
  # {
13425
13483
  # copy_part_result: {
13426
- # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
13427
- # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
13484
+ # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
13485
+ # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
13428
13486
  # },
13429
13487
  # }
13430
13488
  #
13431
- # @example Example: To upload a part by copying data from an existing object as data source
13489
+ # @example Example: To upload a part by copying byte range from an existing object as data source
13432
13490
  #
13433
- # # The following example uploads a part of a multipart upload by copying data from an existing object as data source.
13491
+ # # The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as
13492
+ # # data source.
13434
13493
  #
13435
13494
  # resp = client.upload_part_copy({
13436
13495
  # bucket: "examplebucket",
13437
13496
  # copy_source: "/bucketname/sourceobjectkey",
13497
+ # copy_source_range: "bytes=1-100000",
13438
13498
  # key: "examplelargeobject",
13439
- # part_number: 1,
13499
+ # part_number: 2,
13440
13500
  # upload_id: "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--",
13441
13501
  # })
13442
13502
  #
13443
13503
  # resp.to_h outputs the following:
13444
13504
  # {
13445
13505
  # copy_part_result: {
13446
- # etag: "\"b0c6f0e7e054ab8fa2536a2677f8734d\"",
13447
- # last_modified: Time.parse("2016-12-29T21:24:43.000Z"),
13506
+ # etag: "\"65d16d19e65a7508a51f043180edcc36\"",
13507
+ # last_modified: Time.parse("2016-12-29T21:44:28.000Z"),
13448
13508
  # },
13449
13509
  # }
13450
13510
  #
@@ -13481,6 +13541,7 @@ module Aws::S3
13481
13541
  # resp.sse_customer_algorithm #=> String
13482
13542
  # resp.sse_customer_key_md5 #=> String
13483
13543
  # resp.ssekms_key_id #=> String
13544
+ # resp.bucket_key_enabled #=> Boolean
13484
13545
  # resp.request_charged #=> String, one of "requester"
13485
13546
  #
13486
13547
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartCopy AWS API Documentation
@@ -13505,7 +13566,7 @@ module Aws::S3
13505
13566
  params: params,
13506
13567
  config: config)
13507
13568
  context[:gem_name] = 'aws-sdk-s3'
13508
- context[:gem_version] = '1.85.0'
13569
+ context[:gem_version] = '1.86.0'
13509
13570
  Seahorse::Client::Request.new(handlers, context)
13510
13571
  end
13511
13572