aws-sdk-s3 1.136.0 → 1.138.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: 3a563e0602ed3c1393406bb2158324b9571f7c579924f3f349fe237333d218d1
4
- data.tar.gz: 4559f4a20a3abd9dcddde15fd814012e3874813d2e5cc15cd0066125aea8348f
3
+ metadata.gz: 51bd0889662b403a46fb2d6870555562c1e97e398d664012bb74695ed5ccbb0c
4
+ data.tar.gz: 5ed8d9ef98331a6be26e908f3daeb5be5d70a64f22637747da5bd03d5a6613d3
5
5
  SHA512:
6
- metadata.gz: 03eda70ab440bdf32208be9a6f8bbe5435d77090ef6198129b9cb06b91d2aba9fb5bb3820d53380af6863f4538344d6833d507d5c46b3609d648f2c52a26561c
7
- data.tar.gz: 43cd7b5022e8602f9590463478de5adf88de7cc31d1d13179551b9434a21fd6150c61009b98796eddc91a772c70e47698e58720f79733ad03ea638c27e052653
6
+ metadata.gz: 6c1dde98eebcde3534bfa3f9ca0235fe80965299415f6788c485cb1aab93b5bb7c9f20f9ad8d829fce1e1dfbf0a54844072de23c5f8ccaad19d5c1a3a86e7ecf
7
+ data.tar.gz: c55ee296c6421e468657804dee7925b4ec777bf829618d7da114199bbd760232e05bcefa6d53e849dcf7fac7cca7dc660ac2ea96fd03fc7b6195a0416d55cc14
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.138.0 (2023-11-21)
5
+ ------------------
6
+
7
+ * Feature - Add support for automatic date based partitioning in S3 Server Access Logs.
8
+
9
+ 1.137.0 (2023-11-17)
10
+ ------------------
11
+
12
+ * Feature - Removes all default 0 values for numbers and false values for booleans
13
+
4
14
  1.136.0 (2023-09-26)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.136.0
1
+ 1.138.0
@@ -641,7 +641,8 @@ module Aws::S3
641
641
  # string holding JSON with the encryption context key-value pairs. This
642
642
  # value is stored as object metadata and automatically gets passed on to
643
643
  # Amazon Web Services KMS for future `GetObject` or `CopyObject`
644
- # operations on this object.
644
+ # operations on this object. This value must be explicitly added during
645
+ # CopyObject operations.
645
646
  # @option options [Boolean] :bucket_key_enabled
646
647
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
647
648
  # encryption with server-side encryption using Key Management Service
@@ -203,6 +203,13 @@ module Aws::S3
203
203
  # },
204
204
  # ],
205
205
  # target_prefix: "TargetPrefix", # required
206
+ # target_object_key_format: {
207
+ # simple_prefix: {
208
+ # },
209
+ # partitioned_prefix: {
210
+ # partition_date_source: "EventTime", # accepts EventTime, DeliveryTime
211
+ # },
212
+ # },
206
213
  # },
207
214
  # },
208
215
  # content_md5: "ContentMD5",
@@ -799,13 +799,14 @@ module Aws::S3
799
799
  #
800
800
  # @option params [String] :sse_customer_algorithm
801
801
  # The server-side encryption (SSE) algorithm used to encrypt the object.
802
- # This parameter is needed only when the object was created using a
803
- # checksum algorithm. For more information, see [Protecting data using
804
- # SSE-C keys][1] in the *Amazon S3 User Guide*.
802
+ # This parameter is required only when the object was created using a
803
+ # checksum algorithm or if your bucket policy requires the use of SSE-C.
804
+ # For more information, see [Protecting data using SSE-C keys][1] in the
805
+ # *Amazon S3 User Guide*.
805
806
  #
806
807
  #
807
808
  #
808
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
809
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html#ssec-require-condition-key
809
810
  #
810
811
  # @option params [String] :sse_customer_key
811
812
  # The server-side encryption (SSE) customer managed key. This parameter
@@ -1383,7 +1384,9 @@ module Aws::S3
1383
1384
  # @option params [String] :ssekms_encryption_context
1384
1385
  # Specifies the Amazon Web Services KMS Encryption Context to use for
1385
1386
  # object encryption. The value of this header is a base64-encoded UTF-8
1386
- # string holding JSON with the encryption context key-value pairs.
1387
+ # string holding JSON with the encryption context key-value pairs. This
1388
+ # value must be explicitly added to specify encryption context for
1389
+ # CopyObject requests.
1387
1390
  #
1388
1391
  # @option params [Boolean] :bucket_key_enabled
1389
1392
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
@@ -3495,22 +3498,20 @@ module Aws::S3
3495
3498
  # * {Types::DeleteObjectsOutput#errors #errors} => Array<Types::Error>
3496
3499
  #
3497
3500
  #
3498
- # @example Example: To delete multiple object versions from a versioned bucket
3501
+ # @example Example: To delete multiple objects from a versioned bucket
3499
3502
  #
3500
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3501
- # # versions and returns the key and versions of deleted objects in the response.
3503
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3504
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3502
3505
  #
3503
3506
  # resp = client.delete_objects({
3504
3507
  # bucket: "examplebucket",
3505
3508
  # delete: {
3506
3509
  # objects: [
3507
3510
  # {
3508
- # key: "HappyFace.jpg",
3509
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3511
+ # key: "objectkey1",
3510
3512
  # },
3511
3513
  # {
3512
- # key: "HappyFace.jpg",
3513
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3514
+ # key: "objectkey2",
3514
3515
  # },
3515
3516
  # ],
3516
3517
  # quiet: false,
@@ -3521,30 +3522,34 @@ module Aws::S3
3521
3522
  # {
3522
3523
  # deleted: [
3523
3524
  # {
3524
- # key: "HappyFace.jpg",
3525
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3525
+ # delete_marker: true,
3526
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3527
+ # key: "objectkey1",
3526
3528
  # },
3527
3529
  # {
3528
- # key: "HappyFace.jpg",
3529
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3530
+ # delete_marker: true,
3531
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3532
+ # key: "objectkey2",
3530
3533
  # },
3531
3534
  # ],
3532
3535
  # }
3533
3536
  #
3534
- # @example Example: To delete multiple objects from a versioned bucket
3537
+ # @example Example: To delete multiple object versions from a versioned bucket
3535
3538
  #
3536
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3537
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3539
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3540
+ # # versions and returns the key and versions of deleted objects in the response.
3538
3541
  #
3539
3542
  # resp = client.delete_objects({
3540
3543
  # bucket: "examplebucket",
3541
3544
  # delete: {
3542
3545
  # objects: [
3543
3546
  # {
3544
- # key: "objectkey1",
3547
+ # key: "HappyFace.jpg",
3548
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3545
3549
  # },
3546
3550
  # {
3547
- # key: "objectkey2",
3551
+ # key: "HappyFace.jpg",
3552
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3548
3553
  # },
3549
3554
  # ],
3550
3555
  # quiet: false,
@@ -3555,14 +3560,12 @@ module Aws::S3
3555
3560
  # {
3556
3561
  # deleted: [
3557
3562
  # {
3558
- # delete_marker: true,
3559
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3560
- # key: "objectkey1",
3563
+ # key: "HappyFace.jpg",
3564
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3561
3565
  # },
3562
3566
  # {
3563
- # delete_marker: true,
3564
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3565
- # key: "objectkey2",
3567
+ # key: "HappyFace.jpg",
3568
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3566
3569
  # },
3567
3570
  # ],
3568
3571
  # }
@@ -4650,6 +4653,7 @@ module Aws::S3
4650
4653
  # resp.logging_enabled.target_grants[0].grantee.uri #=> String
4651
4654
  # resp.logging_enabled.target_grants[0].permission #=> String, one of "FULL_CONTROL", "READ", "WRITE"
4652
4655
  # resp.logging_enabled.target_prefix #=> String
4656
+ # resp.logging_enabled.target_object_key_format.partitioned_prefix.partition_date_source #=> String, one of "EventTime", "DeliveryTime"
4653
4657
  #
4654
4658
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLogging AWS API Documentation
4655
4659
  #
@@ -5713,6 +5717,10 @@ module Aws::S3
5713
5717
  # behaves as if the object was deleted and includes
5714
5718
  # `x-amz-delete-marker: true` in the response.
5715
5719
  #
5720
+ # * If the specified version is a delete marker, the response returns
5721
+ # a 405 (Method Not Allowed) error and the `Last-Modified:
5722
+ # timestamp` response header.
5723
+ #
5716
5724
  # </note>
5717
5725
  #
5718
5726
  # For more information about versioning, see [PutBucketVersioning][8].
@@ -7196,9 +7204,10 @@ module Aws::S3
7196
7204
  # A `HEAD` request has the same options as a `GET` action on an object.
7197
7205
  # The response is identical to the `GET` response except that there is
7198
7206
  # no response body. Because of this, if the `HEAD` request generates an
7199
- # error, it returns a generic `400 Bad Request`, `403 Forbidden` or `404
7200
- # Not Found` code. It is not possible to retrieve the exact exception
7201
- # beyond these error codes.
7207
+ # error, it returns a generic code, such as `400 Bad Request`, `403
7208
+ # Forbidden`, `404 Not Found`, `405 Method Not Allowed`, `412
7209
+ # Precondition Failed`, or `304 Not Modified`. It's not possible to
7210
+ # retrieve the exact exception of these error codes.
7202
7211
  #
7203
7212
  # If you encrypt an object by using server-side encryption with
7204
7213
  # customer-provided encryption keys (SSE-C) when you store the object in
@@ -7266,6 +7275,15 @@ module Aws::S3
7266
7275
  # * If you don’t have the `s3:ListBucket` permission, Amazon S3
7267
7276
  # returns an HTTP status code 403 error.
7268
7277
  #
7278
+ # Versioning
7279
+ # : * If the current version of the object is a delete marker, Amazon S3
7280
+ # behaves as if the object was deleted and includes
7281
+ # `x-amz-delete-marker: true` in the response.
7282
+ #
7283
+ # * If the specified version is a delete marker, the response returns
7284
+ # a 405 (Method Not Allowed) error and the `Last-Modified:
7285
+ # timestamp` response header.
7286
+ #
7269
7287
  # The following actions are related to `HeadObject`:
7270
7288
  #
7271
7289
  # * [GetObject][5]
@@ -8279,8 +8297,6 @@ module Aws::S3
8279
8297
  #
8280
8298
  # To use this operation, you must have READ access to the bucket.
8281
8299
  #
8282
- # This action is not supported by Amazon S3 on Outposts.
8283
- #
8284
8300
  # The following operations are related to `ListObjectVersions`:
8285
8301
  #
8286
8302
  # * [ListObjectsV2][1]
@@ -10752,6 +10768,13 @@ module Aws::S3
10752
10768
  # },
10753
10769
  # ],
10754
10770
  # target_prefix: "TargetPrefix", # required
10771
+ # target_object_key_format: {
10772
+ # simple_prefix: {
10773
+ # },
10774
+ # partitioned_prefix: {
10775
+ # partition_date_source: "EventTime", # accepts EventTime, DeliveryTime
10776
+ # },
10777
+ # },
10755
10778
  # },
10756
10779
  # },
10757
10780
  # content_md5: "ContentMD5",
@@ -12464,7 +12487,8 @@ module Aws::S3
12464
12487
  # string holding JSON with the encryption context key-value pairs. This
12465
12488
  # value is stored as object metadata and automatically gets passed on to
12466
12489
  # Amazon Web Services KMS for future `GetObject` or `CopyObject`
12467
- # operations on this object.
12490
+ # operations on this object. This value must be explicitly added during
12491
+ # CopyObject operations.
12468
12492
  #
12469
12493
  # @option params [Boolean] :bucket_key_enabled
12470
12494
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
@@ -12530,40 +12554,25 @@ module Aws::S3
12530
12554
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
12531
12555
  #
12532
12556
  #
12533
- # @example Example: To upload an object and specify server-side encryption and object tags
12557
+ # @example Example: To upload object and specify user-defined metadata
12534
12558
  #
12535
- # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12536
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12559
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12560
+ # # enabled, S3 returns version ID in response.
12537
12561
  #
12538
12562
  # resp = client.put_object({
12539
12563
  # body: "filetoupload",
12540
12564
  # bucket: "examplebucket",
12541
12565
  # key: "exampleobject",
12542
- # server_side_encryption: "AES256",
12543
- # tagging: "key1=value1&key2=value2",
12544
- # })
12545
- #
12546
- # resp.to_h outputs the following:
12547
- # {
12548
- # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12549
- # server_side_encryption: "AES256",
12550
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12551
- # }
12552
- #
12553
- # @example Example: To create an object.
12554
- #
12555
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
12556
- #
12557
- # resp = client.put_object({
12558
- # body: "filetoupload",
12559
- # bucket: "examplebucket",
12560
- # key: "objectkey",
12566
+ # metadata: {
12567
+ # "metadata1" => "value1",
12568
+ # "metadata2" => "value2",
12569
+ # },
12561
12570
  # })
12562
12571
  #
12563
12572
  # resp.to_h outputs the following:
12564
12573
  # {
12565
12574
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12566
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
12575
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12567
12576
  # }
12568
12577
  #
12569
12578
  # @example Example: To upload an object (specify optional headers)
@@ -12604,25 +12613,37 @@ module Aws::S3
12604
12613
  # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
12605
12614
  # }
12606
12615
  #
12607
- # @example Example: To upload object and specify user-defined metadata
12616
+ # @example Example: To create an object.
12608
12617
  #
12609
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
12610
- # # enabled, S3 returns version ID in response.
12618
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
12611
12619
  #
12612
12620
  # resp = client.put_object({
12613
12621
  # body: "filetoupload",
12614
12622
  # bucket: "examplebucket",
12615
- # key: "exampleobject",
12616
- # metadata: {
12617
- # "metadata1" => "value1",
12618
- # "metadata2" => "value2",
12619
- # },
12623
+ # key: "objectkey",
12620
12624
  # })
12621
12625
  #
12622
12626
  # resp.to_h outputs the following:
12623
12627
  # {
12624
12628
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12625
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
12629
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
12630
+ # }
12631
+ #
12632
+ # @example Example: To upload an object
12633
+ #
12634
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12635
+ # # syntax. S3 returns VersionId of the newly created object.
12636
+ #
12637
+ # resp = client.put_object({
12638
+ # body: "HappyFace.jpg",
12639
+ # bucket: "examplebucket",
12640
+ # key: "HappyFace.jpg",
12641
+ # })
12642
+ #
12643
+ # resp.to_h outputs the following:
12644
+ # {
12645
+ # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12646
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12626
12647
  # }
12627
12648
  #
12628
12649
  # @example Example: To upload an object and specify canned ACL.
@@ -12643,21 +12664,24 @@ module Aws::S3
12643
12664
  # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
12644
12665
  # }
12645
12666
  #
12646
- # @example Example: To upload an object
12667
+ # @example Example: To upload an object and specify server-side encryption and object tags
12647
12668
  #
12648
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
12649
- # # syntax. S3 returns VersionId of the newly created object.
12669
+ # # The following example uploads an object. The request specifies the optional server-side encryption option. The request
12670
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
12650
12671
  #
12651
12672
  # resp = client.put_object({
12652
- # body: "HappyFace.jpg",
12673
+ # body: "filetoupload",
12653
12674
  # bucket: "examplebucket",
12654
- # key: "HappyFace.jpg",
12675
+ # key: "exampleobject",
12676
+ # server_side_encryption: "AES256",
12677
+ # tagging: "key1=value1&key2=value2",
12655
12678
  # })
12656
12679
  #
12657
12680
  # resp.to_h outputs the following:
12658
12681
  # {
12659
12682
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
12660
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
12683
+ # server_side_encryption: "AES256",
12684
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
12661
12685
  # }
12662
12686
  #
12663
12687
  # @example Streaming a file from disk
@@ -13637,7 +13661,7 @@ module Aws::S3
13637
13661
  # bucket or an object, it checks the `PublicAccessBlock` configuration
13638
13662
  # for both the bucket (or the bucket that contains the object) and the
13639
13663
  # bucket owner's account. If the `PublicAccessBlock` configurations are
13640
- # different between the bucket and the account, S3 uses the most
13664
+ # different between the bucket and the account, Amazon S3 uses the most
13641
13665
  # restrictive combination of the bucket-level and account-level
13642
13666
  # settings.
13643
13667
  #
@@ -15697,7 +15721,7 @@ module Aws::S3
15697
15721
  params: params,
15698
15722
  config: config)
15699
15723
  context[:gem_name] = 'aws-sdk-s3'
15700
- context[:gem_version] = '1.136.0'
15724
+ context[:gem_version] = '1.138.0'
15701
15725
  Seahorse::Client::Request.new(handlers, context)
15702
15726
  end
15703
15727
 
@@ -423,6 +423,8 @@ module Aws::S3
423
423
  Part = Shapes::StructureShape.new(name: 'Part')
424
424
  PartNumber = Shapes::IntegerShape.new(name: 'PartNumber')
425
425
  PartNumberMarker = Shapes::IntegerShape.new(name: 'PartNumberMarker')
426
+ PartitionDateSource = Shapes::StringShape.new(name: 'PartitionDateSource')
427
+ PartitionedPrefix = Shapes::StructureShape.new(name: 'PartitionedPrefix')
426
428
  Parts = Shapes::ListShape.new(name: 'Parts', flattened: true)
427
429
  PartsCount = Shapes::IntegerShape.new(name: 'PartsCount')
428
430
  PartsList = Shapes::ListShape.new(name: 'PartsList', flattened: true)
@@ -542,6 +544,7 @@ module Aws::S3
542
544
  ServerSideEncryptionRule = Shapes::StructureShape.new(name: 'ServerSideEncryptionRule')
543
545
  ServerSideEncryptionRules = Shapes::ListShape.new(name: 'ServerSideEncryptionRules', flattened: true)
544
546
  Setting = Shapes::BooleanShape.new(name: 'Setting')
547
+ SimplePrefix = Shapes::StructureShape.new(name: 'SimplePrefix')
545
548
  Size = Shapes::IntegerShape.new(name: 'Size')
546
549
  SkipValidation = Shapes::BooleanShape.new(name: 'SkipValidation')
547
550
  SourceSelectionCriteria = Shapes::StructureShape.new(name: 'SourceSelectionCriteria')
@@ -565,6 +568,7 @@ module Aws::S3
565
568
  TargetBucket = Shapes::StringShape.new(name: 'TargetBucket')
566
569
  TargetGrant = Shapes::StructureShape.new(name: 'TargetGrant')
567
570
  TargetGrants = Shapes::ListShape.new(name: 'TargetGrants')
571
+ TargetObjectKeyFormat = Shapes::StructureShape.new(name: 'TargetObjectKeyFormat')
568
572
  TargetPrefix = Shapes::StringShape.new(name: 'TargetPrefix')
569
573
  Tier = Shapes::StringShape.new(name: 'Tier')
570
574
  Tiering = Shapes::StructureShape.new(name: 'Tiering')
@@ -1797,6 +1801,7 @@ module Aws::S3
1797
1801
  LoggingEnabled.add_member(:target_bucket, Shapes::ShapeRef.new(shape: TargetBucket, required: true, location_name: "TargetBucket"))
1798
1802
  LoggingEnabled.add_member(:target_grants, Shapes::ShapeRef.new(shape: TargetGrants, location_name: "TargetGrants"))
1799
1803
  LoggingEnabled.add_member(:target_prefix, Shapes::ShapeRef.new(shape: TargetPrefix, required: true, location_name: "TargetPrefix"))
1804
+ LoggingEnabled.add_member(:target_object_key_format, Shapes::ShapeRef.new(shape: TargetObjectKeyFormat, location_name: "TargetObjectKeyFormat"))
1800
1805
  LoggingEnabled.struct_class = Types::LoggingEnabled
1801
1806
 
1802
1807
  Metadata.key = Shapes::ShapeRef.new(shape: MetadataKey)
@@ -1962,6 +1967,9 @@ module Aws::S3
1962
1967
  Part.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
1963
1968
  Part.struct_class = Types::Part
1964
1969
 
1970
+ PartitionedPrefix.add_member(:partition_date_source, Shapes::ShapeRef.new(shape: PartitionDateSource, location_name: "PartitionDateSource"))
1971
+ PartitionedPrefix.struct_class = Types::PartitionedPrefix
1972
+
1965
1973
  Parts.member = Shapes::ShapeRef.new(shape: Part)
1966
1974
 
1967
1975
  PartsList.member = Shapes::ShapeRef.new(shape: ObjectPart)
@@ -2493,6 +2501,8 @@ module Aws::S3
2493
2501
 
2494
2502
  ServerSideEncryptionRules.member = Shapes::ShapeRef.new(shape: ServerSideEncryptionRule)
2495
2503
 
2504
+ SimplePrefix.struct_class = Types::SimplePrefix
2505
+
2496
2506
  SourceSelectionCriteria.add_member(:sse_kms_encrypted_objects, Shapes::ShapeRef.new(shape: SseKmsEncryptedObjects, location_name: "SseKmsEncryptedObjects"))
2497
2507
  SourceSelectionCriteria.add_member(:replica_modifications, Shapes::ShapeRef.new(shape: ReplicaModifications, location_name: "ReplicaModifications"))
2498
2508
  SourceSelectionCriteria.struct_class = Types::SourceSelectionCriteria
@@ -2530,6 +2540,10 @@ module Aws::S3
2530
2540
 
2531
2541
  TargetGrants.member = Shapes::ShapeRef.new(shape: TargetGrant, location_name: "Grant")
2532
2542
 
2543
+ TargetObjectKeyFormat.add_member(:simple_prefix, Shapes::ShapeRef.new(shape: SimplePrefix, location_name: "SimplePrefix"))
2544
+ TargetObjectKeyFormat.add_member(:partitioned_prefix, Shapes::ShapeRef.new(shape: PartitionedPrefix, location_name: "PartitionedPrefix"))
2545
+ TargetObjectKeyFormat.struct_class = Types::TargetObjectKeyFormat
2546
+
2533
2547
  Tiering.add_member(:days, Shapes::ShapeRef.new(shape: IntelligentTieringDays, required: true, location_name: "Days"))
2534
2548
  Tiering.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, required: true, location_name: "AccessTier"))
2535
2549
  Tiering.struct_class = Types::Tiering
@@ -346,13 +346,14 @@ module Aws::S3
346
346
  # Forbidden` (access denied).
347
347
  # @option options [String] :sse_customer_algorithm
348
348
  # The server-side encryption (SSE) algorithm used to encrypt the object.
349
- # This parameter is needed only when the object was created using a
350
- # checksum algorithm. For more information, see [Protecting data using
351
- # SSE-C keys][1] in the *Amazon S3 User Guide*.
349
+ # This parameter is required only when the object was created using a
350
+ # checksum algorithm or if your bucket policy requires the use of SSE-C.
351
+ # For more information, see [Protecting data using SSE-C keys][1] in the
352
+ # *Amazon S3 User Guide*.
352
353
  #
353
354
  #
354
355
  #
355
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
356
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html#ssec-require-condition-key
356
357
  # @option options [String] :sse_customer_key
357
358
  # The server-side encryption (SSE) customer managed key. This parameter
358
359
  # is needed only when the object was created using a checksum algorithm.
@@ -97,7 +97,7 @@ module Aws::S3
97
97
  data[:archive_status]
98
98
  end
99
99
 
100
- # Creation date of the object.
100
+ # Date and time when the object was last modified.
101
101
  # @return [Time]
102
102
  def last_modified
103
103
  data[:last_modified]
@@ -792,7 +792,9 @@ module Aws::S3
792
792
  # @option options [String] :ssekms_encryption_context
793
793
  # Specifies the Amazon Web Services KMS Encryption Context to use for
794
794
  # object encryption. The value of this header is a base64-encoded UTF-8
795
- # string holding JSON with the encryption context key-value pairs.
795
+ # string holding JSON with the encryption context key-value pairs. This
796
+ # value must be explicitly added to specify encryption context for
797
+ # CopyObject requests.
796
798
  # @option options [Boolean] :bucket_key_enabled
797
799
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
798
800
  # encryption with server-side encryption using Key Management Service
@@ -1453,7 +1455,8 @@ module Aws::S3
1453
1455
  # string holding JSON with the encryption context key-value pairs. This
1454
1456
  # value is stored as object metadata and automatically gets passed on to
1455
1457
  # Amazon Web Services KMS for future `GetObject` or `CopyObject`
1456
- # operations on this object.
1458
+ # operations on this object. This value must be explicitly added during
1459
+ # CopyObject operations.
1457
1460
  # @option options [Boolean] :bucket_key_enabled
1458
1461
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
1459
1462
  # encryption with server-side encryption using Key Management Service
@@ -501,7 +501,9 @@ module Aws::S3
501
501
  # @option options [String] :ssekms_encryption_context
502
502
  # Specifies the Amazon Web Services KMS Encryption Context to use for
503
503
  # object encryption. The value of this header is a base64-encoded UTF-8
504
- # string holding JSON with the encryption context key-value pairs.
504
+ # string holding JSON with the encryption context key-value pairs. This
505
+ # value must be explicitly added to specify encryption context for
506
+ # CopyObject requests.
505
507
  # @option options [Boolean] :bucket_key_enabled
506
508
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
507
509
  # encryption with server-side encryption using Key Management Service
@@ -1162,7 +1164,8 @@ module Aws::S3
1162
1164
  # string holding JSON with the encryption context key-value pairs. This
1163
1165
  # value is stored as object metadata and automatically gets passed on to
1164
1166
  # Amazon Web Services KMS for future `GetObject` or `CopyObject`
1165
- # operations on this object.
1167
+ # operations on this object. This value must be explicitly added during
1168
+ # CopyObject operations.
1166
1169
  # @option options [Boolean] :bucket_key_enabled
1167
1170
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
1168
1171
  # encryption with server-side encryption using Key Management Service
@@ -93,7 +93,7 @@ module Aws::S3
93
93
  data[:is_latest]
94
94
  end
95
95
 
96
- # Date and time the object was last modified.
96
+ # Date and time when the object was last modified.
97
97
  # @return [Time]
98
98
  def last_modified
99
99
  data[:last_modified]
@@ -963,13 +963,14 @@ module Aws::S3
963
963
  #
964
964
  # @!attribute [rw] sse_customer_algorithm
965
965
  # The server-side encryption (SSE) algorithm used to encrypt the
966
- # object. This parameter is needed only when the object was created
967
- # using a checksum algorithm. For more information, see [Protecting
968
- # data using SSE-C keys][1] in the *Amazon S3 User Guide*.
966
+ # object. This parameter is required only when the object was created
967
+ # using a checksum algorithm or if your bucket policy requires the use
968
+ # of SSE-C. For more information, see [Protecting data using SSE-C
969
+ # keys][1] in the *Amazon S3 User Guide*.
969
970
  #
970
971
  #
971
972
  #
972
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
973
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html#ssec-require-condition-key
973
974
  # @return [String]
974
975
  #
975
976
  # @!attribute [rw] sse_customer_key
@@ -1479,7 +1480,8 @@ module Aws::S3
1479
1480
  # Specifies the Amazon Web Services KMS Encryption Context to use for
1480
1481
  # object encryption. The value of this header is a base64-encoded
1481
1482
  # UTF-8 string holding JSON with the encryption context key-value
1482
- # pairs.
1483
+ # pairs. This value must be explicitly added to specify encryption
1484
+ # context for CopyObject requests.
1483
1485
  # @return [String]
1484
1486
  #
1485
1487
  # @!attribute [rw] bucket_key_enabled
@@ -2583,7 +2585,7 @@ module Aws::S3
2583
2585
  # @return [Boolean]
2584
2586
  #
2585
2587
  # @!attribute [rw] last_modified
2586
- # Date and time the object was last modified.
2588
+ # Date and time when the object was last modified.
2587
2589
  # @return [Time]
2588
2590
  #
2589
2591
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteMarkerEntry AWS API Documentation
@@ -5296,7 +5298,7 @@ module Aws::S3
5296
5298
  # @return [String]
5297
5299
  #
5298
5300
  # @!attribute [rw] last_modified
5299
- # Creation date of the object.
5301
+ # Date and time when the object was last modified.
5300
5302
  # @return [Time]
5301
5303
  #
5302
5304
  # @!attribute [rw] content_length
@@ -6146,7 +6148,7 @@ module Aws::S3
6146
6148
  # @return [String]
6147
6149
  #
6148
6150
  # @!attribute [rw] last_modified
6149
- # Creation date of the object.
6151
+ # Date and time when the object was last modified.
6150
6152
  # @return [Time]
6151
6153
  #
6152
6154
  # @!attribute [rw] content_length
@@ -8589,12 +8591,17 @@ module Aws::S3
8589
8591
  # to distinguish which log files came from which bucket.
8590
8592
  # @return [String]
8591
8593
  #
8594
+ # @!attribute [rw] target_object_key_format
8595
+ # Amazon S3 key format for log objects.
8596
+ # @return [Types::TargetObjectKeyFormat]
8597
+ #
8592
8598
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LoggingEnabled AWS API Documentation
8593
8599
  #
8594
8600
  class LoggingEnabled < Struct.new(
8595
8601
  :target_bucket,
8596
8602
  :target_grants,
8597
- :target_prefix)
8603
+ :target_prefix,
8604
+ :target_object_key_format)
8598
8605
  SENSITIVE = []
8599
8606
  include Aws::Structure
8600
8607
  end
@@ -8821,7 +8828,8 @@ module Aws::S3
8821
8828
  # @return [Integer]
8822
8829
  #
8823
8830
  # @!attribute [rw] newer_noncurrent_versions
8824
- # Specifies how many noncurrent versions Amazon S3 will retain. If
8831
+ # Specifies how many newer noncurrent versions must exist before
8832
+ # Amazon S3 can perform the associated action on a given version. If
8825
8833
  # there are this many more recent noncurrent versions, Amazon S3 will
8826
8834
  # take the associated action. For more information about noncurrent
8827
8835
  # versions, see [Lifecycle configuration elements][1] in the *Amazon
@@ -8867,7 +8875,8 @@ module Aws::S3
8867
8875
  # @return [String]
8868
8876
  #
8869
8877
  # @!attribute [rw] newer_noncurrent_versions
8870
- # Specifies how many noncurrent versions Amazon S3 will retain. If
8878
+ # Specifies how many newer noncurrent versions must exist before
8879
+ # Amazon S3 can perform the associated action on a given version. If
8871
8880
  # there are this many more recent noncurrent versions, Amazon S3 will
8872
8881
  # take the associated action. For more information about noncurrent
8873
8882
  # versions, see [Lifecycle configuration elements][1] in the *Amazon
@@ -9271,7 +9280,7 @@ module Aws::S3
9271
9280
  # @return [Boolean]
9272
9281
  #
9273
9282
  # @!attribute [rw] last_modified
9274
- # Date and time the object was last modified.
9283
+ # Date and time when the object was last modified.
9275
9284
  # @return [Time]
9276
9285
  #
9277
9286
  # @!attribute [rw] owner
@@ -9512,6 +9521,27 @@ module Aws::S3
9512
9521
  include Aws::Structure
9513
9522
  end
9514
9523
 
9524
+ # Amazon S3 keys for log objects are partitioned in the following
9525
+ # format:
9526
+ #
9527
+ # `[DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]`
9528
+ #
9529
+ # PartitionedPrefix defaults to EventTime delivery when server access
9530
+ # logs are delivered.
9531
+ #
9532
+ # @!attribute [rw] partition_date_source
9533
+ # Specifies the partition date source for the partitioned prefix.
9534
+ # PartitionDateSource can be EventTime or DeliveryTime.
9535
+ # @return [String]
9536
+ #
9537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PartitionedPrefix AWS API Documentation
9538
+ #
9539
+ class PartitionedPrefix < Struct.new(
9540
+ :partition_date_source)
9541
+ SENSITIVE = []
9542
+ include Aws::Structure
9543
+ end
9544
+
9515
9545
  # The container element for a bucket's policy status.
9516
9546
  #
9517
9547
  # @!attribute [rw] is_public
@@ -11444,7 +11474,8 @@ module Aws::S3
11444
11474
  # UTF-8 string holding JSON with the encryption context key-value
11445
11475
  # pairs. This value is stored as object metadata and automatically
11446
11476
  # gets passed on to Amazon Web Services KMS for future `GetObject` or
11447
- # `CopyObject` operations on this object.
11477
+ # `CopyObject` operations on this object. This value must be
11478
+ # explicitly added during CopyObject operations.
11448
11479
  # @return [String]
11449
11480
  #
11450
11481
  # @!attribute [rw] bucket_key_enabled
@@ -13039,6 +13070,17 @@ module Aws::S3
13039
13070
  include Aws::Structure
13040
13071
  end
13041
13072
 
13073
+ # To use simple format for S3 keys for log objects, set SimplePrefix to
13074
+ # an empty object.
13075
+ #
13076
+ # `[DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]`
13077
+ #
13078
+ # @api private
13079
+ #
13080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SimplePrefix AWS API Documentation
13081
+ #
13082
+ class SimplePrefix < Aws::EmptyStructure; end
13083
+
13042
13084
  # A container that describes additional filters for identifying the
13043
13085
  # source objects that you want to replicate. You can choose to enable or
13044
13086
  # disable the replication of these objects. Currently, Amazon S3
@@ -13231,6 +13273,27 @@ module Aws::S3
13231
13273
  include Aws::Structure
13232
13274
  end
13233
13275
 
13276
+ # Amazon S3 key format for log objects. Only one format,
13277
+ # PartitionedPrefix or SimplePrefix, is allowed.
13278
+ #
13279
+ # @!attribute [rw] simple_prefix
13280
+ # To use the simple format for S3 keys for log objects. To specify
13281
+ # SimplePrefix format, set SimplePrefix to \\\{\\}.
13282
+ # @return [Types::SimplePrefix]
13283
+ #
13284
+ # @!attribute [rw] partitioned_prefix
13285
+ # Partitioned S3 key for log objects.
13286
+ # @return [Types::PartitionedPrefix]
13287
+ #
13288
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/TargetObjectKeyFormat AWS API Documentation
13289
+ #
13290
+ class TargetObjectKeyFormat < Struct.new(
13291
+ :simple_prefix,
13292
+ :partitioned_prefix)
13293
+ SENSITIVE = []
13294
+ include Aws::Structure
13295
+ end
13296
+
13234
13297
  # The S3 Intelligent-Tiering storage class is designed to optimize
13235
13298
  # storage costs by automatically moving data to the most cost-effective
13236
13299
  # storage access tier, without additional operational overhead.
data/lib/aws-sdk-s3.rb CHANGED
@@ -73,6 +73,6 @@ require_relative 'aws-sdk-s3/event_streams'
73
73
  # @!group service
74
74
  module Aws::S3
75
75
 
76
- GEM_VERSION = '1.136.0'
76
+ GEM_VERSION = '1.138.0'
77
77
 
78
78
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.136.0
4
+ version: 1.138.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-26 00:00:00.000000000 Z
11
+ date: 2023-11-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-kms