aws-sdk-s3 1.102.0 → 1.112.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -517,6 +517,8 @@ module Aws::S3
517
517
  # key: "ObjectKey", # required
518
518
  # value: "Value", # required
519
519
  # },
520
+ # object_size_greater_than: 1,
521
+ # object_size_less_than: 1,
520
522
  # and: {
521
523
  # prefix: "Prefix",
522
524
  # tags: [
@@ -525,6 +527,8 @@ module Aws::S3
525
527
  # value: "Value", # required
526
528
  # },
527
529
  # ],
530
+ # object_size_greater_than: 1,
531
+ # object_size_less_than: 1,
528
532
  # },
529
533
  # },
530
534
  # status: "Enabled", # required, accepts Enabled, Disabled
@@ -532,17 +536,19 @@ module Aws::S3
532
536
  # {
533
537
  # date: Time.now,
534
538
  # days: 1,
535
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
539
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
536
540
  # },
537
541
  # ],
538
542
  # noncurrent_version_transitions: [
539
543
  # {
540
544
  # noncurrent_days: 1,
541
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
545
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
546
+ # newer_noncurrent_versions: 1,
542
547
  # },
543
548
  # ],
544
549
  # noncurrent_version_expiration: {
545
550
  # noncurrent_days: 1,
551
+ # newer_noncurrent_versions: 1,
546
552
  # },
547
553
  # abort_incomplete_multipart_upload: {
548
554
  # days_after_initiation: 1,
@@ -851,8 +857,8 @@ module Aws::S3
851
857
  #
852
858
  # {
853
859
  # id: "NotificationId",
854
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
855
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
860
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
861
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
856
862
  # cloud_function: "CloudFunction",
857
863
  # invocation_role: "CloudFunctionInvocationRole",
858
864
  # }
@@ -964,10 +970,10 @@ module Aws::S3
964
970
  #
965
971
  # @!attribute [rw] server_side_encryption
966
972
  # If you specified server-side encryption either with an Amazon
967
- # S3-managed encryption key or an Amazon Web Services KMS customer
968
- # master key (CMK) in your initiate multipart upload request, the
969
- # response includes this header. It confirms the encryption algorithm
970
- # that Amazon S3 used to encrypt the object.
973
+ # S3-managed encryption key or an Amazon Web Services KMS key in your
974
+ # initiate multipart upload request, the response includes this
975
+ # header. It confirms the encryption algorithm that Amazon S3 used to
976
+ # encrypt the object.
971
977
  # @return [String]
972
978
  #
973
979
  # @!attribute [rw] version_id
@@ -978,7 +984,7 @@ module Aws::S3
978
984
  # @!attribute [rw] ssekms_key_id
979
985
  # If present, specifies the ID of the Amazon Web Services Key
980
986
  # Management Service (Amazon Web Services KMS) symmetric customer
981
- # managed customer master key (CMK) that was used for the object.
987
+ # managed key that was used for the object.
982
988
  # @return [String]
983
989
  #
984
990
  # @!attribute [rw] bucket_key_enabled
@@ -1113,6 +1119,9 @@ module Aws::S3
1113
1119
  #
1114
1120
  # @!attribute [rw] parts
1115
1121
  # Array of CompletedPart data types.
1122
+ #
1123
+ # If you do not supply a valid `Part` with your request, the service
1124
+ # sends back an HTTP 400 response.
1116
1125
  # @return [Array<Types::CompletedPart>]
1117
1126
  #
1118
1127
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompletedMultipartUpload AWS API Documentation
@@ -1248,7 +1257,7 @@ module Aws::S3
1248
1257
  # @!attribute [rw] ssekms_key_id
1249
1258
  # If present, specifies the ID of the Amazon Web Services Key
1250
1259
  # Management Service (Amazon Web Services KMS) symmetric customer
1251
- # managed customer master key (CMK) that was used for the object.
1260
+ # managed key that was used for the object.
1252
1261
  # @return [String]
1253
1262
  #
1254
1263
  # @!attribute [rw] ssekms_encryption_context
@@ -1314,7 +1323,7 @@ module Aws::S3
1314
1323
  # metadata_directive: "COPY", # accepts COPY, REPLACE
1315
1324
  # tagging_directive: "COPY", # accepts COPY, REPLACE
1316
1325
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1317
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
1326
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1318
1327
  # website_redirect_location: "WebsiteRedirectLocation",
1319
1328
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1320
1329
  # sse_customer_key: "SSECustomerKey",
@@ -1777,6 +1786,7 @@ module Aws::S3
1777
1786
  # grant_write: "GrantWrite",
1778
1787
  # grant_write_acp: "GrantWriteACP",
1779
1788
  # object_lock_enabled_for_bucket: false,
1789
+ # object_ownership: "BucketOwnerPreferred", # accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
1780
1790
  # }
1781
1791
  #
1782
1792
  # @!attribute [rw] acl
@@ -1820,6 +1830,25 @@ module Aws::S3
1820
1830
  # bucket.
1821
1831
  # @return [Boolean]
1822
1832
  #
1833
+ # @!attribute [rw] object_ownership
1834
+ # The container element for object ownership for a bucket's ownership
1835
+ # controls.
1836
+ #
1837
+ # BucketOwnerPreferred - Objects uploaded to the bucket change
1838
+ # ownership to the bucket owner if the objects are uploaded with the
1839
+ # `bucket-owner-full-control` canned ACL.
1840
+ #
1841
+ # ObjectWriter - The uploading account will own the object if the
1842
+ # object is uploaded with the `bucket-owner-full-control` canned ACL.
1843
+ #
1844
+ # BucketOwnerEnforced - Access control lists (ACLs) are disabled and
1845
+ # no longer affect permissions. The bucket owner automatically owns
1846
+ # and has full control over every object in the bucket. The bucket
1847
+ # only accepts PUT requests that don't specify an ACL or bucket owner
1848
+ # full control ACLs, such as the `bucket-owner-full-control` canned
1849
+ # ACL or an equivalent form of this ACL expressed in the XML format.
1850
+ # @return [String]
1851
+ #
1823
1852
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucketRequest AWS API Documentation
1824
1853
  #
1825
1854
  class CreateBucketRequest < Struct.new(
@@ -1831,7 +1860,8 @@ module Aws::S3
1831
1860
  :grant_read_acp,
1832
1861
  :grant_write,
1833
1862
  :grant_write_acp,
1834
- :object_lock_enabled_for_bucket)
1863
+ :object_lock_enabled_for_bucket,
1864
+ :object_ownership)
1835
1865
  SENSITIVE = []
1836
1866
  include Aws::Structure
1837
1867
  end
@@ -1917,7 +1947,7 @@ module Aws::S3
1917
1947
  # @!attribute [rw] ssekms_key_id
1918
1948
  # If present, specifies the ID of the Amazon Web Services Key
1919
1949
  # Management Service (Amazon Web Services KMS) symmetric customer
1920
- # managed customer master key (CMK) that was used for the object.
1950
+ # managed key that was used for the object.
1921
1951
  # @return [String]
1922
1952
  #
1923
1953
  # @!attribute [rw] ssekms_encryption_context
@@ -1977,7 +2007,7 @@ module Aws::S3
1977
2007
  # "MetadataKey" => "MetadataValue",
1978
2008
  # },
1979
2009
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
1980
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
2010
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
1981
2011
  # website_redirect_location: "WebsiteRedirectLocation",
1982
2012
  # sse_customer_algorithm: "SSECustomerAlgorithm",
1983
2013
  # sse_customer_key: "SSECustomerKey",
@@ -2130,14 +2160,13 @@ module Aws::S3
2130
2160
  # @return [String]
2131
2161
  #
2132
2162
  # @!attribute [rw] ssekms_key_id
2133
- # Specifies the ID of the symmetric customer managed Amazon Web
2134
- # Services KMS CMK to use for object encryption. All GET and PUT
2135
- # requests for an object protected by Amazon Web Services KMS will
2136
- # fail if not made via SSL or using SigV4. For information about
2137
- # configuring using any of the officially supported Amazon Web
2138
- # Services SDKs and Amazon Web Services CLI, see [Specifying the
2139
- # Signature Version in Request Authentication][1] in the *Amazon S3
2140
- # User Guide*.
2163
+ # Specifies the ID of the symmetric customer managed key to use for
2164
+ # object encryption. All GET and PUT requests for an object protected
2165
+ # by Amazon Web Services KMS will fail if not made via SSL or using
2166
+ # SigV4. For information about configuring using any of the officially
2167
+ # supported Amazon Web Services SDKs and Amazon Web Services CLI, see
2168
+ # [Specifying the Signature Version in Request Authentication][1] in
2169
+ # the *Amazon S3 User Guide*.
2141
2170
  #
2142
2171
  #
2143
2172
  #
@@ -3154,7 +3183,7 @@ module Aws::S3
3154
3183
  # {
3155
3184
  # bucket: "BucketName", # required
3156
3185
  # account: "AccountId",
3157
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
3186
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
3158
3187
  # access_control_translation: {
3159
3188
  # owner: "Destination", # required, accepts Destination
3160
3189
  # },
@@ -3266,11 +3295,10 @@ module Aws::S3
3266
3295
  #
3267
3296
  # @!attribute [rw] kms_key_id
3268
3297
  # If the encryption type is `aws:kms`, this optional value specifies
3269
- # the ID of the symmetric customer managed Amazon Web Services KMS CMK
3270
- # to use for encryption of job results. Amazon S3 only supports
3271
- # symmetric CMKs. For more information, see [Using symmetric and
3272
- # asymmetric keys][1] in the *Amazon Web Services Key Management
3273
- # Service Developer Guide*.
3298
+ # the ID of the symmetric customer managed key to use for encryption
3299
+ # of job results. Amazon S3 only supports symmetric keys. For more
3300
+ # information, see [Using symmetric and asymmetric keys][1] in the
3301
+ # *Amazon Web Services Key Management Service Developer Guide*.
3274
3302
  #
3275
3303
  #
3276
3304
  #
@@ -4201,6 +4229,14 @@ module Aws::S3
4201
4229
  include Aws::Structure
4202
4230
  end
4203
4231
 
4232
+ # A container for specifying the configuration for Amazon EventBridge.
4233
+ #
4234
+ # @api private
4235
+ #
4236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/EventBridgeConfiguration AWS API Documentation
4237
+ #
4238
+ class EventBridgeConfiguration < Aws::EmptyStructure; end
4239
+
4204
4240
  # Optional configuration to replicate existing source bucket objects.
4205
4241
  # For more information, see [Replicating Existing Objects][1] in the
4206
4242
  # *Amazon S3 User Guide*.
@@ -4801,8 +4837,8 @@ module Aws::S3
4801
4837
  end
4802
4838
 
4803
4839
  # @!attribute [rw] ownership_controls
4804
- # The `OwnershipControls` (BucketOwnerPreferred or ObjectWriter)
4805
- # currently in effect for this Amazon S3 bucket.
4840
+ # The `OwnershipControls` (BucketOwnerEnforced, BucketOwnerPreferred,
4841
+ # or ObjectWriter) currently in effect for this Amazon S3 bucket.
4806
4842
  # @return [Types::OwnershipControls]
4807
4843
  #
4808
4844
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketOwnershipControlsOutput AWS API Documentation
@@ -5483,7 +5519,7 @@ module Aws::S3
5483
5519
  # @!attribute [rw] ssekms_key_id
5484
5520
  # If present, specifies the ID of the Amazon Web Services Key
5485
5521
  # Management Service (Amazon Web Services KMS) symmetric customer
5486
- # managed customer master key (CMK) that was used for the object.
5522
+ # managed key that was used for the object.
5487
5523
  # @return [String]
5488
5524
  #
5489
5525
  # @!attribute [rw] bucket_key_enabled
@@ -5607,6 +5643,9 @@ module Aws::S3
5607
5643
  # bucket name. For more information about access point ARNs, see
5608
5644
  # [Using access points][1] in the *Amazon S3 User Guide*.
5609
5645
  #
5646
+ # When using an Object Lambda access point the hostname takes the form
5647
+ # *AccessPointName*-*AccountId*.s3-object-lambda.*Region*.amazonaws.com.
5648
+ #
5610
5649
  # When using this action with Amazon S3 on Outposts, you must direct
5611
5650
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
5612
5651
  # takes the form
@@ -6330,10 +6369,10 @@ module Aws::S3
6330
6369
  #
6331
6370
  # @!attribute [rw] server_side_encryption
6332
6371
  # If the object is stored using server-side encryption either with an
6333
- # Amazon Web Services KMS customer master key (CMK) or an Amazon
6334
- # S3-managed encryption key, the response includes this header with
6335
- # the value of the server-side encryption algorithm used when storing
6336
- # this object in Amazon S3 (for example, AES256, aws:kms).
6372
+ # Amazon Web Services KMS key or an Amazon S3-managed encryption key,
6373
+ # the response includes this header with the value of the server-side
6374
+ # encryption algorithm used when storing this object in Amazon S3 (for
6375
+ # example, AES256, aws:kms).
6337
6376
  # @return [String]
6338
6377
  #
6339
6378
  # @!attribute [rw] metadata
@@ -6356,7 +6395,7 @@ module Aws::S3
6356
6395
  # @!attribute [rw] ssekms_key_id
6357
6396
  # If present, specifies the ID of the Amazon Web Services Key
6358
6397
  # Management Service (Amazon Web Services KMS) symmetric customer
6359
- # managed customer master key (CMK) that was used for the object.
6398
+ # managed key that was used for the object.
6360
6399
  # @return [String]
6361
6400
  #
6362
6401
  # @!attribute [rw] bucket_key_enabled
@@ -6568,18 +6607,8 @@ module Aws::S3
6568
6607
  # @return [String]
6569
6608
  #
6570
6609
  # @!attribute [rw] range
6571
- # Downloads the specified range bytes of an object. For more
6572
- # information about the HTTP Range header, see
6573
- # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
6574
- #
6575
- # <note markdown="1"> Amazon S3 doesn't support retrieving multiple ranges of data per
6576
- # `GET` request.
6577
- #
6578
- # </note>
6579
- #
6580
- #
6581
- #
6582
- # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
6610
+ # Because `HeadObject` returns only the metadata for an object, this
6611
+ # parameter has no effect.
6583
6612
  # @return [String]
6584
6613
  #
6585
6614
  # @!attribute [rw] version_id
@@ -7245,7 +7274,7 @@ module Aws::S3
7245
7274
  # {
7246
7275
  # id: "NotificationId",
7247
7276
  # lambda_function_arn: "LambdaFunctionArn", # required
7248
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
7277
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
7249
7278
  # filter: {
7250
7279
  # key: {
7251
7280
  # filter_rules: [
@@ -7319,14 +7348,16 @@ module Aws::S3
7319
7348
  # transition: {
7320
7349
  # date: Time.now,
7321
7350
  # days: 1,
7322
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
7351
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
7323
7352
  # },
7324
7353
  # noncurrent_version_transition: {
7325
7354
  # noncurrent_days: 1,
7326
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
7355
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
7356
+ # newer_noncurrent_versions: 1,
7327
7357
  # },
7328
7358
  # noncurrent_version_expiration: {
7329
7359
  # noncurrent_days: 1,
7360
+ # newer_noncurrent_versions: 1,
7330
7361
  # },
7331
7362
  # abort_incomplete_multipart_upload: {
7332
7363
  # days_after_initiation: 1,
@@ -7404,6 +7435,8 @@ module Aws::S3
7404
7435
  # key: "ObjectKey", # required
7405
7436
  # value: "Value", # required
7406
7437
  # },
7438
+ # object_size_greater_than: 1,
7439
+ # object_size_less_than: 1,
7407
7440
  # and: {
7408
7441
  # prefix: "Prefix",
7409
7442
  # tags: [
@@ -7412,6 +7445,8 @@ module Aws::S3
7412
7445
  # value: "Value", # required
7413
7446
  # },
7414
7447
  # ],
7448
+ # object_size_greater_than: 1,
7449
+ # object_size_less_than: 1,
7415
7450
  # },
7416
7451
  # },
7417
7452
  # status: "Enabled", # required, accepts Enabled, Disabled
@@ -7419,17 +7454,19 @@ module Aws::S3
7419
7454
  # {
7420
7455
  # date: Time.now,
7421
7456
  # days: 1,
7422
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
7457
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
7423
7458
  # },
7424
7459
  # ],
7425
7460
  # noncurrent_version_transitions: [
7426
7461
  # {
7427
7462
  # noncurrent_days: 1,
7428
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
7463
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
7464
+ # newer_noncurrent_versions: 1,
7429
7465
  # },
7430
7466
  # ],
7431
7467
  # noncurrent_version_expiration: {
7432
7468
  # noncurrent_days: 1,
7469
+ # newer_noncurrent_versions: 1,
7433
7470
  # },
7434
7471
  # abort_incomplete_multipart_upload: {
7435
7472
  # days_after_initiation: 1,
@@ -7537,6 +7574,8 @@ module Aws::S3
7537
7574
  # value: "Value", # required
7538
7575
  # },
7539
7576
  # ],
7577
+ # object_size_greater_than: 1,
7578
+ # object_size_less_than: 1,
7540
7579
  # }
7541
7580
  #
7542
7581
  # @!attribute [rw] prefix
@@ -7548,11 +7587,21 @@ module Aws::S3
7548
7587
  # the rule to apply.
7549
7588
  # @return [Array<Types::Tag>]
7550
7589
  #
7590
+ # @!attribute [rw] object_size_greater_than
7591
+ # Minimum object size to which the rule applies.
7592
+ # @return [Integer]
7593
+ #
7594
+ # @!attribute [rw] object_size_less_than
7595
+ # Maximum object size to which the rule applies.
7596
+ # @return [Integer]
7597
+ #
7551
7598
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleRuleAndOperator AWS API Documentation
7552
7599
  #
7553
7600
  class LifecycleRuleAndOperator < Struct.new(
7554
7601
  :prefix,
7555
- :tags)
7602
+ :tags,
7603
+ :object_size_greater_than,
7604
+ :object_size_less_than)
7556
7605
  SENSITIVE = []
7557
7606
  include Aws::Structure
7558
7607
  end
@@ -7570,6 +7619,8 @@ module Aws::S3
7570
7619
  # key: "ObjectKey", # required
7571
7620
  # value: "Value", # required
7572
7621
  # },
7622
+ # object_size_greater_than: 1,
7623
+ # object_size_less_than: 1,
7573
7624
  # and: {
7574
7625
  # prefix: "Prefix",
7575
7626
  # tags: [
@@ -7578,6 +7629,8 @@ module Aws::S3
7578
7629
  # value: "Value", # required
7579
7630
  # },
7580
7631
  # ],
7632
+ # object_size_greater_than: 1,
7633
+ # object_size_less_than: 1,
7581
7634
  # },
7582
7635
  # }
7583
7636
  #
@@ -7598,6 +7651,14 @@ module Aws::S3
7598
7651
  # to apply.
7599
7652
  # @return [Types::Tag]
7600
7653
  #
7654
+ # @!attribute [rw] object_size_greater_than
7655
+ # Minimum object size to which the rule applies.
7656
+ # @return [Integer]
7657
+ #
7658
+ # @!attribute [rw] object_size_less_than
7659
+ # Maximum object size to which the rule applies.
7660
+ # @return [Integer]
7661
+ #
7601
7662
  # @!attribute [rw] and
7602
7663
  # This is used in a Lifecycle Rule Filter to apply a logical AND to
7603
7664
  # two or more predicates. The Lifecycle Rule will apply to any object
@@ -7609,6 +7670,8 @@ module Aws::S3
7609
7670
  class LifecycleRuleFilter < Struct.new(
7610
7671
  :prefix,
7611
7672
  :tag,
7673
+ :object_size_greater_than,
7674
+ :object_size_less_than,
7612
7675
  :and)
7613
7676
  SENSITIVE = []
7614
7677
  include Aws::Structure
@@ -8956,6 +9019,15 @@ module Aws::S3
8956
9019
  #
8957
9020
  # @!attribute [rw] target_grants
8958
9021
  # Container for granting information.
9022
+ #
9023
+ # Buckets that use the bucket owner enforced setting for Object
9024
+ # Ownership don't support target grants. For more information, see
9025
+ # [Permissions for server access log delivery][1] in the *Amazon S3
9026
+ # User Guide*.
9027
+ #
9028
+ #
9029
+ #
9030
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general
8959
9031
  # @return [Array<Types::TargetGrant>]
8960
9032
  #
8961
9033
  # @!attribute [rw] target_prefix
@@ -9048,6 +9120,7 @@ module Aws::S3
9048
9120
  # value: "Value", # required
9049
9121
  # },
9050
9122
  # ],
9123
+ # access_point_arn: "AccessPointArn",
9051
9124
  # }
9052
9125
  #
9053
9126
  # @!attribute [rw] prefix
@@ -9058,11 +9131,16 @@ module Aws::S3
9058
9131
  # The list of tags used when evaluating an AND predicate.
9059
9132
  # @return [Array<Types::Tag>]
9060
9133
  #
9134
+ # @!attribute [rw] access_point_arn
9135
+ # The access point ARN used when evaluating an AND predicate.
9136
+ # @return [String]
9137
+ #
9061
9138
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetricsAndOperator AWS API Documentation
9062
9139
  #
9063
9140
  class MetricsAndOperator < Struct.new(
9064
9141
  :prefix,
9065
- :tags)
9142
+ :tags,
9143
+ :access_point_arn)
9066
9144
  SENSITIVE = []
9067
9145
  include Aws::Structure
9068
9146
  end
@@ -9072,8 +9150,7 @@ module Aws::S3
9072
9150
  # If you're updating an existing metrics configuration, note that this
9073
9151
  # is a full replacement of the existing metrics configuration. If you
9074
9152
  # don't include the elements you want to keep, they are erased. For
9075
- # more information, see [ PUT Bucket metrics][1] in the *Amazon S3 API
9076
- # Reference*.
9153
+ # more information, see [PutBucketMetricsConfiguration][1].
9077
9154
  #
9078
9155
  #
9079
9156
  #
@@ -9090,6 +9167,7 @@ module Aws::S3
9090
9167
  # key: "ObjectKey", # required
9091
9168
  # value: "Value", # required
9092
9169
  # },
9170
+ # access_point_arn: "AccessPointArn",
9093
9171
  # and: {
9094
9172
  # prefix: "Prefix",
9095
9173
  # tags: [
@@ -9098,6 +9176,7 @@ module Aws::S3
9098
9176
  # value: "Value", # required
9099
9177
  # },
9100
9178
  # ],
9179
+ # access_point_arn: "AccessPointArn",
9101
9180
  # },
9102
9181
  # },
9103
9182
  # }
@@ -9109,7 +9188,8 @@ module Aws::S3
9109
9188
  # @!attribute [rw] filter
9110
9189
  # Specifies a metrics configuration filter. The metrics configuration
9111
9190
  # will only include objects that meet the filter's criteria. A filter
9112
- # must be a prefix, a tag, or a conjunction (MetricsAndOperator).
9191
+ # must be a prefix, an object tag, an access point ARN, or a
9192
+ # conjunction (MetricsAndOperator).
9113
9193
  # @return [Types::MetricsFilter]
9114
9194
  #
9115
9195
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetricsConfiguration AWS API Documentation
@@ -9123,7 +9203,13 @@ module Aws::S3
9123
9203
 
9124
9204
  # Specifies a metrics configuration filter. The metrics configuration
9125
9205
  # only includes objects that meet the filter's criteria. A filter must
9126
- # be a prefix, a tag, or a conjunction (MetricsAndOperator).
9206
+ # be a prefix, an object tag, an access point ARN, or a conjunction
9207
+ # (MetricsAndOperator). For more information, see
9208
+ # [PutBucketMetricsConfiguration][1].
9209
+ #
9210
+ #
9211
+ #
9212
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html
9127
9213
  #
9128
9214
  # @note When making an API call, you may pass MetricsFilter
9129
9215
  # data as a hash:
@@ -9134,6 +9220,7 @@ module Aws::S3
9134
9220
  # key: "ObjectKey", # required
9135
9221
  # value: "Value", # required
9136
9222
  # },
9223
+ # access_point_arn: "AccessPointArn",
9137
9224
  # and: {
9138
9225
  # prefix: "Prefix",
9139
9226
  # tags: [
@@ -9142,6 +9229,7 @@ module Aws::S3
9142
9229
  # value: "Value", # required
9143
9230
  # },
9144
9231
  # ],
9232
+ # access_point_arn: "AccessPointArn",
9145
9233
  # },
9146
9234
  # }
9147
9235
  #
@@ -9153,6 +9241,10 @@ module Aws::S3
9153
9241
  # The tag used when evaluating a metrics filter.
9154
9242
  # @return [Types::Tag]
9155
9243
  #
9244
+ # @!attribute [rw] access_point_arn
9245
+ # The access point ARN used when evaluating a metrics filter.
9246
+ # @return [String]
9247
+ #
9156
9248
  # @!attribute [rw] and
9157
9249
  # A conjunction (logical AND) of predicates, which is used in
9158
9250
  # evaluating a metrics filter. The operator must have at least two
@@ -9165,6 +9257,7 @@ module Aws::S3
9165
9257
  class MetricsFilter < Struct.new(
9166
9258
  :prefix,
9167
9259
  :tag,
9260
+ :access_point_arn,
9168
9261
  :and)
9169
9262
  SENSITIVE = []
9170
9263
  include Aws::Structure
@@ -9239,6 +9332,7 @@ module Aws::S3
9239
9332
  #
9240
9333
  # {
9241
9334
  # noncurrent_days: 1,
9335
+ # newer_noncurrent_versions: 1,
9242
9336
  # }
9243
9337
  #
9244
9338
  # @!attribute [rw] noncurrent_days
@@ -9252,29 +9346,44 @@ module Aws::S3
9252
9346
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations
9253
9347
  # @return [Integer]
9254
9348
  #
9349
+ # @!attribute [rw] newer_noncurrent_versions
9350
+ # Specifies how many noncurrent versions Amazon S3 will retain. If
9351
+ # there are this many more recent noncurrent versions, Amazon S3 will
9352
+ # take the associated action. For more information about noncurrent
9353
+ # versions, see [Lifecycle configuration elements][1] in the *Amazon
9354
+ # S3 User Guide*.
9355
+ #
9356
+ #
9357
+ #
9358
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html
9359
+ # @return [Integer]
9360
+ #
9255
9361
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NoncurrentVersionExpiration AWS API Documentation
9256
9362
  #
9257
9363
  class NoncurrentVersionExpiration < Struct.new(
9258
- :noncurrent_days)
9364
+ :noncurrent_days,
9365
+ :newer_noncurrent_versions)
9259
9366
  SENSITIVE = []
9260
9367
  include Aws::Structure
9261
9368
  end
9262
9369
 
9263
9370
  # Container for the transition rule that describes when noncurrent
9264
9371
  # objects transition to the `STANDARD_IA`, `ONEZONE_IA`,
9265
- # `INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class. If
9266
- # your bucket is versioning-enabled (or versioning is suspended), you
9267
- # can set this action to request that Amazon S3 transition noncurrent
9268
- # object versions to the `STANDARD_IA`, `ONEZONE_IA`,
9269
- # `INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class at a
9270
- # specific period in the object's lifetime.
9372
+ # `INTELLIGENT_TIERING`, `GLACIER_IR`, `GLACIER`, or `DEEP_ARCHIVE`
9373
+ # storage class. If your bucket is versioning-enabled (or versioning is
9374
+ # suspended), you can set this action to request that Amazon S3
9375
+ # transition noncurrent object versions to the `STANDARD_IA`,
9376
+ # `ONEZONE_IA`, `INTELLIGENT_TIERING`, `GLACIER_IR`, `GLACIER`, or
9377
+ # `DEEP_ARCHIVE` storage class at a specific period in the object's
9378
+ # lifetime.
9271
9379
  #
9272
9380
  # @note When making an API call, you may pass NoncurrentVersionTransition
9273
9381
  # data as a hash:
9274
9382
  #
9275
9383
  # {
9276
9384
  # noncurrent_days: 1,
9277
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
9385
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
9386
+ # newer_noncurrent_versions: 1,
9278
9387
  # }
9279
9388
  #
9280
9389
  # @!attribute [rw] noncurrent_days
@@ -9292,11 +9401,24 @@ module Aws::S3
9292
9401
  # The class of storage used to store the object.
9293
9402
  # @return [String]
9294
9403
  #
9404
+ # @!attribute [rw] newer_noncurrent_versions
9405
+ # Specifies how many noncurrent versions Amazon S3 will retain. If
9406
+ # there are this many more recent noncurrent versions, Amazon S3 will
9407
+ # take the associated action. For more information about noncurrent
9408
+ # versions, see [Lifecycle configuration elements][1] in the *Amazon
9409
+ # S3 User Guide*.
9410
+ #
9411
+ #
9412
+ #
9413
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html
9414
+ # @return [Integer]
9415
+ #
9295
9416
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NoncurrentVersionTransition AWS API Documentation
9296
9417
  #
9297
9418
  class NoncurrentVersionTransition < Struct.new(
9298
9419
  :noncurrent_days,
9299
- :storage_class)
9420
+ :storage_class,
9421
+ :newer_noncurrent_versions)
9300
9422
  SENSITIVE = []
9301
9423
  include Aws::Structure
9302
9424
  end
@@ -9313,7 +9435,7 @@ module Aws::S3
9313
9435
  # {
9314
9436
  # id: "NotificationId",
9315
9437
  # topic_arn: "TopicArn", # required
9316
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9438
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9317
9439
  # filter: {
9318
9440
  # key: {
9319
9441
  # filter_rules: [
@@ -9330,7 +9452,7 @@ module Aws::S3
9330
9452
  # {
9331
9453
  # id: "NotificationId",
9332
9454
  # queue_arn: "QueueArn", # required
9333
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9455
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9334
9456
  # filter: {
9335
9457
  # key: {
9336
9458
  # filter_rules: [
@@ -9347,7 +9469,7 @@ module Aws::S3
9347
9469
  # {
9348
9470
  # id: "NotificationId",
9349
9471
  # lambda_function_arn: "LambdaFunctionArn", # required
9350
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9472
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9351
9473
  # filter: {
9352
9474
  # key: {
9353
9475
  # filter_rules: [
@@ -9360,6 +9482,8 @@ module Aws::S3
9360
9482
  # },
9361
9483
  # },
9362
9484
  # ],
9485
+ # event_bridge_configuration: {
9486
+ # },
9363
9487
  # }
9364
9488
  #
9365
9489
  # @!attribute [rw] topic_configurations
@@ -9377,12 +9501,17 @@ module Aws::S3
9377
9501
  # invoke them.
9378
9502
  # @return [Array<Types::LambdaFunctionConfiguration>]
9379
9503
  #
9504
+ # @!attribute [rw] event_bridge_configuration
9505
+ # Enables delivery of events to Amazon EventBridge.
9506
+ # @return [Types::EventBridgeConfiguration]
9507
+ #
9380
9508
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfiguration AWS API Documentation
9381
9509
  #
9382
9510
  class NotificationConfiguration < Struct.new(
9383
9511
  :topic_configurations,
9384
9512
  :queue_configurations,
9385
- :lambda_function_configurations)
9513
+ :lambda_function_configurations,
9514
+ :event_bridge_configuration)
9386
9515
  SENSITIVE = []
9387
9516
  include Aws::Structure
9388
9517
  end
@@ -9393,20 +9522,20 @@ module Aws::S3
9393
9522
  # {
9394
9523
  # topic_configuration: {
9395
9524
  # id: "NotificationId",
9396
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9397
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9525
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9526
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9398
9527
  # topic: "TopicArn",
9399
9528
  # },
9400
9529
  # queue_configuration: {
9401
9530
  # id: "NotificationId",
9402
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9403
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9531
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9532
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9404
9533
  # queue: "QueueArn",
9405
9534
  # },
9406
9535
  # cloud_function_configuration: {
9407
9536
  # id: "NotificationId",
9408
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9409
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
9537
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9538
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
9410
9539
  # cloud_function: "CloudFunction",
9411
9540
  # invocation_role: "CloudFunctionInvocationRole",
9412
9541
  # },
@@ -9786,7 +9915,7 @@ module Aws::S3
9786
9915
  # value: "MetadataValue",
9787
9916
  # },
9788
9917
  # ],
9789
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
9918
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
9790
9919
  # },
9791
9920
  # }
9792
9921
  #
@@ -9873,7 +10002,7 @@ module Aws::S3
9873
10002
  # {
9874
10003
  # rules: [ # required
9875
10004
  # {
9876
- # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter
10005
+ # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
9877
10006
  # },
9878
10007
  # ],
9879
10008
  # }
@@ -9896,7 +10025,7 @@ module Aws::S3
9896
10025
  # data as a hash:
9897
10026
  #
9898
10027
  # {
9899
- # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter
10028
+ # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
9900
10029
  # }
9901
10030
  #
9902
10031
  # @!attribute [rw] object_ownership
@@ -9909,6 +10038,13 @@ module Aws::S3
9909
10038
  #
9910
10039
  # ObjectWriter - The uploading account will own the object if the
9911
10040
  # object is uploaded with the `bucket-owner-full-control` canned ACL.
10041
+ #
10042
+ # BucketOwnerEnforced - Access control lists (ACLs) are disabled and
10043
+ # no longer affect permissions. The bucket owner automatically owns
10044
+ # and has full control over every object in the bucket. The bucket
10045
+ # only accepts PUT requests that don't specify an ACL or bucket owner
10046
+ # full control ACLs, such as the `bucket-owner-full-control` canned
10047
+ # ACL or an equivalent form of this ACL expressed in the XML format.
9912
10048
  # @return [String]
9913
10049
  #
9914
10050
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OwnershipControlsRule AWS API Documentation
@@ -10393,10 +10529,10 @@ module Aws::S3
10393
10529
  #
10394
10530
  # @!attribute [rw] bucket
10395
10531
  # Specifies default encryption for a bucket using server-side
10396
- # encryption with Amazon S3-managed keys (SSE-S3) or customer master
10397
- # keys stored in Amazon Web Services KMS (SSE-KMS). For information
10398
- # about the Amazon S3 default encryption feature, see [Amazon S3
10399
- # Default Bucket Encryption][1] in the *Amazon S3 User Guide*.
10532
+ # encryption with Amazon S3-managed keys (SSE-S3) or customer managed
10533
+ # keys (SSE-KMS). For information about the Amazon S3 default
10534
+ # encryption feature, see [Amazon S3 Default Bucket Encryption][1] in
10535
+ # the *Amazon S3 User Guide*.
10400
10536
  #
10401
10537
  #
10402
10538
  #
@@ -10577,6 +10713,8 @@ module Aws::S3
10577
10713
  # key: "ObjectKey", # required
10578
10714
  # value: "Value", # required
10579
10715
  # },
10716
+ # object_size_greater_than: 1,
10717
+ # object_size_less_than: 1,
10580
10718
  # and: {
10581
10719
  # prefix: "Prefix",
10582
10720
  # tags: [
@@ -10585,6 +10723,8 @@ module Aws::S3
10585
10723
  # value: "Value", # required
10586
10724
  # },
10587
10725
  # ],
10726
+ # object_size_greater_than: 1,
10727
+ # object_size_less_than: 1,
10588
10728
  # },
10589
10729
  # },
10590
10730
  # status: "Enabled", # required, accepts Enabled, Disabled
@@ -10592,17 +10732,19 @@ module Aws::S3
10592
10732
  # {
10593
10733
  # date: Time.now,
10594
10734
  # days: 1,
10595
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
10735
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
10596
10736
  # },
10597
10737
  # ],
10598
10738
  # noncurrent_version_transitions: [
10599
10739
  # {
10600
10740
  # noncurrent_days: 1,
10601
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
10741
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
10742
+ # newer_noncurrent_versions: 1,
10602
10743
  # },
10603
10744
  # ],
10604
10745
  # noncurrent_version_expiration: {
10605
10746
  # noncurrent_days: 1,
10747
+ # newer_noncurrent_versions: 1,
10606
10748
  # },
10607
10749
  # abort_incomplete_multipart_upload: {
10608
10750
  # days_after_initiation: 1,
@@ -10657,14 +10799,16 @@ module Aws::S3
10657
10799
  # transition: {
10658
10800
  # date: Time.now,
10659
10801
  # days: 1,
10660
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
10802
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
10661
10803
  # },
10662
10804
  # noncurrent_version_transition: {
10663
10805
  # noncurrent_days: 1,
10664
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
10806
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
10807
+ # newer_noncurrent_versions: 1,
10665
10808
  # },
10666
10809
  # noncurrent_version_expiration: {
10667
10810
  # noncurrent_days: 1,
10811
+ # newer_noncurrent_versions: 1,
10668
10812
  # },
10669
10813
  # abort_incomplete_multipart_upload: {
10670
10814
  # days_after_initiation: 1,
@@ -10778,6 +10922,7 @@ module Aws::S3
10778
10922
  # key: "ObjectKey", # required
10779
10923
  # value: "Value", # required
10780
10924
  # },
10925
+ # access_point_arn: "AccessPointArn",
10781
10926
  # and: {
10782
10927
  # prefix: "Prefix",
10783
10928
  # tags: [
@@ -10786,6 +10931,7 @@ module Aws::S3
10786
10931
  # value: "Value", # required
10787
10932
  # },
10788
10933
  # ],
10934
+ # access_point_arn: "AccessPointArn",
10789
10935
  # },
10790
10936
  # },
10791
10937
  # },
@@ -10831,7 +10977,7 @@ module Aws::S3
10831
10977
  # {
10832
10978
  # id: "NotificationId",
10833
10979
  # topic_arn: "TopicArn", # required
10834
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
10980
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
10835
10981
  # filter: {
10836
10982
  # key: {
10837
10983
  # filter_rules: [
@@ -10848,7 +10994,7 @@ module Aws::S3
10848
10994
  # {
10849
10995
  # id: "NotificationId",
10850
10996
  # queue_arn: "QueueArn", # required
10851
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
10997
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
10852
10998
  # filter: {
10853
10999
  # key: {
10854
11000
  # filter_rules: [
@@ -10865,7 +11011,7 @@ module Aws::S3
10865
11011
  # {
10866
11012
  # id: "NotificationId",
10867
11013
  # lambda_function_arn: "LambdaFunctionArn", # required
10868
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
11014
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
10869
11015
  # filter: {
10870
11016
  # key: {
10871
11017
  # filter_rules: [
@@ -10878,8 +11024,11 @@ module Aws::S3
10878
11024
  # },
10879
11025
  # },
10880
11026
  # ],
11027
+ # event_bridge_configuration: {
11028
+ # },
10881
11029
  # },
10882
11030
  # expected_bucket_owner: "AccountId",
11031
+ # skip_destination_validation: false,
10883
11032
  # }
10884
11033
  #
10885
11034
  # @!attribute [rw] bucket
@@ -10898,12 +11047,18 @@ module Aws::S3
10898
11047
  # (Access Denied)` error.
10899
11048
  # @return [String]
10900
11049
  #
11050
+ # @!attribute [rw] skip_destination_validation
11051
+ # Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations.
11052
+ # True or false value.
11053
+ # @return [Boolean]
11054
+ #
10901
11055
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfigurationRequest AWS API Documentation
10902
11056
  #
10903
11057
  class PutBucketNotificationConfigurationRequest < Struct.new(
10904
11058
  :bucket,
10905
11059
  :notification_configuration,
10906
- :expected_bucket_owner)
11060
+ :expected_bucket_owner,
11061
+ :skip_destination_validation)
10907
11062
  SENSITIVE = []
10908
11063
  include Aws::Structure
10909
11064
  end
@@ -10917,20 +11072,20 @@ module Aws::S3
10917
11072
  # notification_configuration: { # required
10918
11073
  # topic_configuration: {
10919
11074
  # id: "NotificationId",
10920
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
10921
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
11075
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
11076
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
10922
11077
  # topic: "TopicArn",
10923
11078
  # },
10924
11079
  # queue_configuration: {
10925
11080
  # id: "NotificationId",
10926
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
10927
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
11081
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
11082
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
10928
11083
  # queue: "QueueArn",
10929
11084
  # },
10930
11085
  # cloud_function_configuration: {
10931
11086
  # id: "NotificationId",
10932
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
10933
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
11087
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
11088
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
10934
11089
  # cloud_function: "CloudFunction",
10935
11090
  # invocation_role: "CloudFunctionInvocationRole",
10936
11091
  # },
@@ -10981,7 +11136,7 @@ module Aws::S3
10981
11136
  # ownership_controls: { # required
10982
11137
  # rules: [ # required
10983
11138
  # {
10984
- # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter
11139
+ # object_ownership: "BucketOwnerPreferred", # required, accepts BucketOwnerPreferred, ObjectWriter, BucketOwnerEnforced
10985
11140
  # },
10986
11141
  # ],
10987
11142
  # },
@@ -11007,8 +11162,8 @@ module Aws::S3
11007
11162
  # @return [String]
11008
11163
  #
11009
11164
  # @!attribute [rw] ownership_controls
11010
- # The `OwnershipControls` (BucketOwnerPreferred or ObjectWriter) that
11011
- # you want to apply to this Amazon S3 bucket.
11165
+ # The `OwnershipControls` (BucketOwnerEnforced, BucketOwnerPreferred,
11166
+ # or ObjectWriter) that you want to apply to this Amazon S3 bucket.
11012
11167
  # @return [Types::OwnershipControls]
11013
11168
  #
11014
11169
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketOwnershipControlsRequest AWS API Documentation
@@ -11116,7 +11271,7 @@ module Aws::S3
11116
11271
  # destination: { # required
11117
11272
  # bucket: "BucketName", # required
11118
11273
  # account: "AccountId",
11119
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
11274
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
11120
11275
  # access_control_translation: {
11121
11276
  # owner: "Destination", # required, accepts Destination
11122
11277
  # },
@@ -11839,10 +11994,9 @@ module Aws::S3
11839
11994
  #
11840
11995
  # @!attribute [rw] server_side_encryption
11841
11996
  # If you specified server-side encryption either with an Amazon Web
11842
- # Services KMS customer master key (CMK) or Amazon S3-managed
11843
- # encryption key in your PUT request, the response includes this
11844
- # header. It confirms the encryption algorithm that Amazon S3 used to
11845
- # encrypt the object.
11997
+ # Services KMS key or Amazon S3-managed encryption key in your PUT
11998
+ # request, the response includes this header. It confirms the
11999
+ # encryption algorithm that Amazon S3 used to encrypt the object.
11846
12000
  # @return [String]
11847
12001
  #
11848
12002
  # @!attribute [rw] version_id
@@ -11866,7 +12020,7 @@ module Aws::S3
11866
12020
  # If `x-amz-server-side-encryption` is present and has the value of
11867
12021
  # `aws:kms`, this header specifies the ID of the Amazon Web Services
11868
12022
  # Key Management Service (Amazon Web Services KMS) symmetric customer
11869
- # managed customer master key (CMK) that was used for the object.
12023
+ # managed key that was used for the object.
11870
12024
  # @return [String]
11871
12025
  #
11872
12026
  # @!attribute [rw] ssekms_encryption_context
@@ -11927,7 +12081,7 @@ module Aws::S3
11927
12081
  # "MetadataKey" => "MetadataValue",
11928
12082
  # },
11929
12083
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
11930
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
12084
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
11931
12085
  # website_redirect_location: "WebsiteRedirectLocation",
11932
12086
  # sse_customer_algorithm: "SSECustomerAlgorithm",
11933
12087
  # sse_customer_key: "SSECustomerKey",
@@ -12168,13 +12322,12 @@ module Aws::S3
12168
12322
  # If `x-amz-server-side-encryption` is present and has the value of
12169
12323
  # `aws:kms`, this header specifies the ID of the Amazon Web Services
12170
12324
  # Key Management Service (Amazon Web Services KMS) symmetrical
12171
- # customer managed customer master key (CMK) that was used for the
12172
- # object. If you specify `x-amz-server-side-encryption:aws:kms`, but
12173
- # do not provide` x-amz-server-side-encryption-aws-kms-key-id`, Amazon
12174
- # S3 uses the Amazon Web Services managed CMK in Amazon Web Services
12175
- # to protect the data. If the KMS key does not exist in the same
12176
- # account issuing the command, you must use the full ARN and not just
12177
- # the ID.
12325
+ # customer managed key that was used for the object. If you specify
12326
+ # `x-amz-server-side-encryption:aws:kms`, but do not provide`
12327
+ # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
12328
+ # Amazon Web Services managed key to protect the data. If the KMS key
12329
+ # does not exist in the same account issuing the command, you must use
12330
+ # the full ARN and not just the ID.
12178
12331
  # @return [String]
12179
12332
  #
12180
12333
  # @!attribute [rw] ssekms_encryption_context
@@ -12560,7 +12713,7 @@ module Aws::S3
12560
12713
  # {
12561
12714
  # id: "NotificationId",
12562
12715
  # queue_arn: "QueueArn", # required
12563
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
12716
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
12564
12717
  # filter: {
12565
12718
  # key: {
12566
12719
  # filter_rules: [
@@ -12624,8 +12777,8 @@ module Aws::S3
12624
12777
  #
12625
12778
  # {
12626
12779
  # id: "NotificationId",
12627
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
12628
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
12780
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
12781
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
12629
12782
  # queue: "QueueArn",
12630
12783
  # }
12631
12784
  #
@@ -12852,7 +13005,7 @@ module Aws::S3
12852
13005
  # destination: { # required
12853
13006
  # bucket: "BucketName", # required
12854
13007
  # account: "AccountId",
12855
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
13008
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
12856
13009
  # access_control_translation: {
12857
13010
  # owner: "Destination", # required, accepts Destination
12858
13011
  # },
@@ -12946,7 +13099,7 @@ module Aws::S3
12946
13099
  # destination: { # required
12947
13100
  # bucket: "BucketName", # required
12948
13101
  # account: "AccountId",
12949
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
13102
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
12950
13103
  # access_control_translation: {
12951
13104
  # owner: "Destination", # required, accepts Destination
12952
13105
  # },
@@ -13022,8 +13175,8 @@ module Aws::S3
13022
13175
  # source objects that you want to replicate. You can choose to enable
13023
13176
  # or disable the replication of these objects. Currently, Amazon S3
13024
13177
  # supports only the filter that you can specify for objects created
13025
- # with server-side encryption using a customer master key (CMK) stored
13026
- # in Amazon Web Services Key Management Service (SSE-KMS).
13178
+ # with server-side encryption using a customer managed key stored in
13179
+ # Amazon Web Services Key Management Service (SSE-KMS).
13027
13180
  # @return [Types::SourceSelectionCriteria]
13028
13181
  #
13029
13182
  # @!attribute [rw] existing_object_replication
@@ -13388,7 +13541,7 @@ module Aws::S3
13388
13541
  # value: "MetadataValue",
13389
13542
  # },
13390
13543
  # ],
13391
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
13544
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
13392
13545
  # },
13393
13546
  # },
13394
13547
  # },
@@ -13548,7 +13701,7 @@ module Aws::S3
13548
13701
  # value: "MetadataValue",
13549
13702
  # },
13550
13703
  # ],
13551
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
13704
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
13552
13705
  # },
13553
13706
  # },
13554
13707
  # }
@@ -13673,14 +13826,16 @@ module Aws::S3
13673
13826
  # transition: {
13674
13827
  # date: Time.now,
13675
13828
  # days: 1,
13676
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
13829
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
13677
13830
  # },
13678
13831
  # noncurrent_version_transition: {
13679
13832
  # noncurrent_days: 1,
13680
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
13833
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
13834
+ # newer_noncurrent_versions: 1,
13681
13835
  # },
13682
13836
  # noncurrent_version_expiration: {
13683
13837
  # noncurrent_days: 1,
13838
+ # newer_noncurrent_versions: 1,
13684
13839
  # },
13685
13840
  # abort_incomplete_multipart_upload: {
13686
13841
  # days_after_initiation: 1,
@@ -13728,12 +13883,13 @@ module Aws::S3
13728
13883
  # @!attribute [rw] noncurrent_version_transition
13729
13884
  # Container for the transition rule that describes when noncurrent
13730
13885
  # objects transition to the `STANDARD_IA`, `ONEZONE_IA`,
13731
- # `INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class.
13732
- # If your bucket is versioning-enabled (or versioning is suspended),
13733
- # you can set this action to request that Amazon S3 transition
13734
- # noncurrent object versions to the `STANDARD_IA`, `ONEZONE_IA`,
13735
- # `INTELLIGENT_TIERING`, `GLACIER`, or `DEEP_ARCHIVE` storage class at
13736
- # a specific period in the object's lifetime.
13886
+ # `INTELLIGENT_TIERING`, `GLACIER_IR`, `GLACIER`, or `DEEP_ARCHIVE`
13887
+ # storage class. If your bucket is versioning-enabled (or versioning
13888
+ # is suspended), you can set this action to request that Amazon S3
13889
+ # transition noncurrent object versions to the `STANDARD_IA`,
13890
+ # `ONEZONE_IA`, `INTELLIGENT_TIERING`, `GLACIER_IR`, `GLACIER`, or
13891
+ # `DEEP_ARCHIVE` storage class at a specific period in the object's
13892
+ # lifetime.
13737
13893
  # @return [Types::NoncurrentVersionTransition]
13738
13894
  #
13739
13895
  # @!attribute [rw] noncurrent_version_expiration
@@ -13840,7 +13996,7 @@ module Aws::S3
13840
13996
  # value: "MetadataValue",
13841
13997
  # },
13842
13998
  # ],
13843
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
13999
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
13844
14000
  # }
13845
14001
  #
13846
14002
  # @!attribute [rw] bucket_name
@@ -13902,8 +14058,8 @@ module Aws::S3
13902
14058
  #
13903
14059
  # @!attribute [rw] key_id
13904
14060
  # Specifies the ID of the Amazon Web Services Key Management Service
13905
- # (Amazon Web Services KMS) symmetric customer managed customer master
13906
- # key (CMK) to use for encrypting inventory reports.
14061
+ # (Amazon Web Services KMS) symmetric customer managed key to use for
14062
+ # encrypting inventory reports.
13907
14063
  # @return [String]
13908
14064
  #
13909
14065
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SSEKMS AWS API Documentation
@@ -14209,9 +14365,13 @@ module Aws::S3
14209
14365
 
14210
14366
  # Describes the default server-side encryption to apply to new objects
14211
14367
  # in the bucket. If a PUT Object request doesn't specify any
14212
- # server-side encryption, this default encryption will be applied. For
14213
- # more information, see [PUT Bucket encryption][1] in the *Amazon S3 API
14214
- # Reference*.
14368
+ # server-side encryption, this default encryption will be applied. If
14369
+ # you don't specify a customer managed key at configuration, Amazon S3
14370
+ # automatically creates an Amazon Web Services KMS key in your Amazon
14371
+ # Web Services account the first time that you add an object encrypted
14372
+ # with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for
14373
+ # SSE-KMS. For more information, see [PUT Bucket encryption][1] in the
14374
+ # *Amazon S3 API Reference*.
14215
14375
  #
14216
14376
  #
14217
14377
  #
@@ -14236,9 +14396,10 @@ module Aws::S3
14236
14396
  # `aws:kms`.
14237
14397
  #
14238
14398
  # You can specify the key ID or the Amazon Resource Name (ARN) of the
14239
- # KMS key. However, if you are using encryption with cross-account
14240
- # operations, you must use a fully qualified KMS key ARN. For more
14241
- # information, see [Using encryption for cross-account operations][1].
14399
+ # KMS key. However, if you are using encryption with cross-account or
14400
+ # Amazon Web Services service operations you must use a fully
14401
+ # qualified KMS key ARN. For more information, see [Using encryption
14402
+ # for cross-account operations][1].
14242
14403
  #
14243
14404
  # **For example:**
14244
14405
  #
@@ -14344,8 +14505,8 @@ module Aws::S3
14344
14505
  # source objects that you want to replicate. You can choose to enable or
14345
14506
  # disable the replication of these objects. Currently, Amazon S3
14346
14507
  # supports only the filter that you can specify for objects created with
14347
- # server-side encryption using a customer master key (CMK) stored in
14348
- # Amazon Web Services Key Management Service (SSE-KMS).
14508
+ # server-side encryption using a customer managed key stored in Amazon
14509
+ # Web Services Key Management Service (SSE-KMS).
14349
14510
  #
14350
14511
  # @note When making an API call, you may pass SourceSelectionCriteria
14351
14512
  # data as a hash:
@@ -14577,6 +14738,15 @@ module Aws::S3
14577
14738
 
14578
14739
  # Container for granting information.
14579
14740
  #
14741
+ # Buckets that use the bucket owner enforced setting for Object
14742
+ # Ownership don't support target grants. For more information, see
14743
+ # [Permissions server access log delivery][1] in the *Amazon S3 User
14744
+ # Guide*.
14745
+ #
14746
+ #
14747
+ #
14748
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general
14749
+ #
14580
14750
  # @note When making an API call, you may pass TargetGrant
14581
14751
  # data as a hash:
14582
14752
  #
@@ -14658,7 +14828,7 @@ module Aws::S3
14658
14828
  # {
14659
14829
  # id: "NotificationId",
14660
14830
  # topic_arn: "TopicArn", # required
14661
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
14831
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
14662
14832
  # filter: {
14663
14833
  # key: {
14664
14834
  # filter_rules: [
@@ -14728,8 +14898,8 @@ module Aws::S3
14728
14898
  #
14729
14899
  # {
14730
14900
  # id: "NotificationId",
14731
- # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
14732
- # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
14901
+ # events: ["s3:ReducedRedundancyLostObject"], # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
14902
+ # event: "s3:ReducedRedundancyLostObject", # accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold, s3:ObjectRestore:Delete, s3:LifecycleTransition, s3:IntelligentTiering, s3:ObjectAcl:Put, s3:LifecycleExpiration:*, s3:LifecycleExpiration:Delete, s3:LifecycleExpiration:DeleteMarkerCreated, s3:ObjectTagging:*, s3:ObjectTagging:Put, s3:ObjectTagging:Delete
14733
14903
  # topic: "TopicArn",
14734
14904
  # }
14735
14905
  #
@@ -14778,7 +14948,7 @@ module Aws::S3
14778
14948
  # {
14779
14949
  # date: Time.now,
14780
14950
  # days: 1,
14781
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
14951
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
14782
14952
  # }
14783
14953
  #
14784
14954
  # @!attribute [rw] date
@@ -14837,7 +15007,7 @@ module Aws::S3
14837
15007
  # @!attribute [rw] ssekms_key_id
14838
15008
  # If present, specifies the ID of the Amazon Web Services Key
14839
15009
  # Management Service (Amazon Web Services KMS) symmetric customer
14840
- # managed customer master key (CMK) that was used for the object.
15010
+ # managed key that was used for the object.
14841
15011
  # @return [String]
14842
15012
  #
14843
15013
  # @!attribute [rw] bucket_key_enabled
@@ -15119,7 +15289,7 @@ module Aws::S3
15119
15289
  # @!attribute [rw] ssekms_key_id
15120
15290
  # If present, specifies the ID of the Amazon Web Services Key
15121
15291
  # Management Service (Amazon Web Services KMS) symmetric customer
15122
- # managed customer master key (CMK) was used for the object.
15292
+ # managed key was used for the object.
15123
15293
  # @return [String]
15124
15294
  #
15125
15295
  # @!attribute [rw] bucket_key_enabled
@@ -15416,7 +15586,7 @@ module Aws::S3
15416
15586
  # sse_customer_algorithm: "SSECustomerAlgorithm",
15417
15587
  # ssekms_key_id: "SSEKMSKeyId",
15418
15588
  # sse_customer_key_md5: "SSECustomerKeyMD5",
15419
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
15589
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
15420
15590
  # tag_count: 1,
15421
15591
  # version_id: "ObjectVersionId",
15422
15592
  # bucket_key_enabled: false,
@@ -15615,8 +15785,7 @@ module Aws::S3
15615
15785
  # @!attribute [rw] ssekms_key_id
15616
15786
  # If present, specifies the ID of the Amazon Web Services Key
15617
15787
  # Management Service (Amazon Web Services KMS) symmetric customer
15618
- # managed customer master key (CMK) that was used for stored in Amazon
15619
- # S3 object.
15788
+ # managed key that was used for stored in Amazon S3 object.
15620
15789
  # @return [String]
15621
15790
  #
15622
15791
  # @!attribute [rw] sse_customer_key_md5