aws-sdk-s3 1.79.1 → 1.80.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.
@@ -234,6 +234,7 @@ module Aws::S3
234
234
  # mfa: "MFA",
235
235
  # request_payer: "requester", # accepts requester
236
236
  # bypass_governance_retention: false,
237
+ # expected_bucket_owner: "AccountId",
237
238
  # })
238
239
  # @param [Hash] options ({})
239
240
  # @option options [String] :mfa
@@ -254,6 +255,10 @@ module Aws::S3
254
255
  # @option options [Boolean] :bypass_governance_retention
255
256
  # Indicates whether S3 Object Lock should bypass Governance-mode
256
257
  # restrictions to process this operation.
258
+ # @option options [String] :expected_bucket_owner
259
+ # The account id of the expected bucket owner. If the bucket is owned by
260
+ # a different account, the request will fail with an HTTP `403 (Access
261
+ # Denied)` error.
257
262
  # @return [Types::DeleteObjectOutput]
258
263
  def delete(options = {})
259
264
  options = options.merge(
@@ -284,6 +289,7 @@ module Aws::S3
284
289
  # sse_customer_key_md5: "SSECustomerKeyMD5",
285
290
  # request_payer: "requester", # accepts requester
286
291
  # part_number: 1,
292
+ # expected_bucket_owner: "AccountId",
287
293
  # })
288
294
  # @param [Hash] options ({})
289
295
  # @option options [String] :if_match
@@ -331,7 +337,7 @@ module Aws::S3
331
337
  # encrypting data. This value is used to store the object and then it is
332
338
  # discarded; Amazon S3 does not store the encryption key. The key must
333
339
  # be appropriate for use with the algorithm specified in the
334
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
340
+ # `x-amz-server-side-encryption-customer-algorithm` header.
335
341
  # @option options [String] :sse_customer_key_md5
336
342
  # Specifies the 128-bit MD5 digest of the encryption key according to
337
343
  # RFC 1321. Amazon S3 uses this header for a message integrity check to
@@ -351,6 +357,10 @@ module Aws::S3
351
357
  # between 1 and 10,000. Effectively performs a 'ranged' GET request
352
358
  # for the part specified. Useful for downloading just a part of an
353
359
  # object.
360
+ # @option options [String] :expected_bucket_owner
361
+ # The account id of the expected bucket owner. If the bucket is owned by
362
+ # a different account, the request will fail with an HTTP `403 (Access
363
+ # Denied)` error.
354
364
  # @return [Types::GetObjectOutput]
355
365
  def get(options = {}, &block)
356
366
  options = options.merge(
@@ -375,6 +385,7 @@ module Aws::S3
375
385
  # sse_customer_key_md5: "SSECustomerKeyMD5",
376
386
  # request_payer: "requester", # accepts requester
377
387
  # part_number: 1,
388
+ # expected_bucket_owner: "AccountId",
378
389
  # })
379
390
  # @param [Hash] options ({})
380
391
  # @option options [String] :if_match
@@ -406,7 +417,7 @@ module Aws::S3
406
417
  # encrypting data. This value is used to store the object and then it is
407
418
  # discarded; Amazon S3 does not store the encryption key. The key must
408
419
  # be appropriate for use with the algorithm specified in the
409
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
420
+ # `x-amz-server-side-encryption-customer-algorithm` header.
410
421
  # @option options [String] :sse_customer_key_md5
411
422
  # Specifies the 128-bit MD5 digest of the encryption key according to
412
423
  # RFC 1321. Amazon S3 uses this header for a message integrity check to
@@ -426,6 +437,10 @@ module Aws::S3
426
437
  # between 1 and 10,000. Effectively performs a 'ranged' HEAD request
427
438
  # for the part specified. Useful querying about the size of the part and
428
439
  # the number of parts in this object.
440
+ # @option options [String] :expected_bucket_owner
441
+ # The account id of the expected bucket owner. If the bucket is owned by
442
+ # a different account, the request will fail with an HTTP `403 (Access
443
+ # Denied)` error.
429
444
  # @return [Types::HeadObjectOutput]
430
445
  def head(options = {})
431
446
  options = options.merge(
@@ -504,6 +519,7 @@ module Aws::S3
504
519
  # mfa: "MFA",
505
520
  # request_payer: "requester", # accepts requester
506
521
  # bypass_governance_retention: false,
522
+ # expected_bucket_owner: "AccountId",
507
523
  # })
508
524
  # @param options ({})
509
525
  # @option options [String] :mfa
@@ -525,6 +541,10 @@ module Aws::S3
525
541
  # Specifies whether you want to delete this object even if it has a
526
542
  # Governance-type Object Lock in place. You must have sufficient
527
543
  # permissions to perform this operation.
544
+ # @option options [String] :expected_bucket_owner
545
+ # The account id of the expected bucket owner. If the bucket is owned by
546
+ # a different account, the request will fail with an HTTP `403 (Access
547
+ # Denied)` error.
528
548
  # @return [void]
529
549
  def batch_delete!(options = {})
530
550
  batch_enum.each do |batch|
@@ -61,6 +61,7 @@ module Aws::S3
61
61
  # key: "ObjectKey", # required
62
62
  # upload_id: "MultipartUploadId", # required
63
63
  # request_payer: "requester", # accepts requester
64
+ # expected_bucket_owner: "AccountId",
64
65
  # }
65
66
  #
66
67
  # @!attribute [rw] bucket
@@ -100,13 +101,20 @@ module Aws::S3
100
101
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
101
102
  # @return [String]
102
103
  #
104
+ # @!attribute [rw] expected_bucket_owner
105
+ # The account id of the expected bucket owner. If the bucket is owned
106
+ # by a different account, the request will fail with an HTTP `403
107
+ # (Access Denied)` error.
108
+ # @return [String]
109
+ #
103
110
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortMultipartUploadRequest AWS API Documentation
104
111
  #
105
112
  class AbortMultipartUploadRequest < Struct.new(
106
113
  :bucket,
107
114
  :key,
108
115
  :upload_id,
109
- :request_payer)
116
+ :request_payer,
117
+ :expected_bucket_owner)
110
118
  SENSITIVE = []
111
119
  include Aws::Structure
112
120
  end
@@ -969,6 +977,7 @@ module Aws::S3
969
977
  # },
970
978
  # upload_id: "MultipartUploadId", # required
971
979
  # request_payer: "requester", # accepts requester
980
+ # expected_bucket_owner: "AccountId",
972
981
  # }
973
982
  #
974
983
  # @!attribute [rw] bucket
@@ -999,6 +1008,12 @@ module Aws::S3
999
1008
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
1000
1009
  # @return [String]
1001
1010
  #
1011
+ # @!attribute [rw] expected_bucket_owner
1012
+ # The account id of the expected bucket owner. If the bucket is owned
1013
+ # by a different account, the request will fail with an HTTP `403
1014
+ # (Access Denied)` error.
1015
+ # @return [String]
1016
+ #
1002
1017
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompleteMultipartUploadRequest AWS API Documentation
1003
1018
  #
1004
1019
  class CompleteMultipartUploadRequest < Struct.new(
@@ -1006,7 +1021,8 @@ module Aws::S3
1006
1021
  :key,
1007
1022
  :multipart_upload,
1008
1023
  :upload_id,
1009
- :request_payer)
1024
+ :request_payer,
1025
+ :expected_bucket_owner)
1010
1026
  SENSITIVE = []
1011
1027
  include Aws::Structure
1012
1028
  end
@@ -1229,6 +1245,8 @@ module Aws::S3
1229
1245
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
1230
1246
  # object_lock_retain_until_date: Time.now,
1231
1247
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
1248
+ # expected_bucket_owner: "AccountId",
1249
+ # expected_source_bucket_owner: "AccountId",
1232
1250
  # }
1233
1251
  #
1234
1252
  # @!attribute [rw] acl
@@ -1262,8 +1280,41 @@ module Aws::S3
1262
1280
  # @return [String]
1263
1281
  #
1264
1282
  # @!attribute [rw] copy_source
1265
- # The name of the source bucket and key name of the source object,
1266
- # separated by a slash (/). Must be URL-encoded.
1283
+ # Specifies the source object for the copy operation. You specify the
1284
+ # value in one of two formats, depending on whether you want to access
1285
+ # the source object through an [access point][1]\:
1286
+ #
1287
+ # * For objects not accessed through an access point, specify the name
1288
+ # of the source bucket and the key of the source object, separated
1289
+ # by a slash (/). For example, to copy the object
1290
+ # `reports/january.pdf` from the bucket `awsexamplebucket`, use
1291
+ # `awsexamplebucket/reports/january.pdf`. The value must be URL
1292
+ # encoded.
1293
+ #
1294
+ # * For objects accessed through access points, specify the Amazon
1295
+ # Resource Name (ARN) of the object as accessed through the access
1296
+ # point, in the format
1297
+ # `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
1298
+ # For example, to copy the object `reports/january.pdf` through
1299
+ # access point `my-access-point` owned by account `123456789012` in
1300
+ # Region `us-west-2`, use the URL encoding of
1301
+ # `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
1302
+ # The value must be URL encoded.
1303
+ #
1304
+ # <note markdown="1"> Amazon S3 supports copy operations using access points only when
1305
+ # the source and destination buckets are in the same AWS Region.
1306
+ #
1307
+ # </note>
1308
+ #
1309
+ # To copy a specific version of an object, append
1310
+ # `?versionId=<version-id>` to the value (for example,
1311
+ # `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
1312
+ # If you don't specify a version ID, Amazon S3 copies the latest
1313
+ # version of the source object.
1314
+ #
1315
+ #
1316
+ #
1317
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
1267
1318
  # @return [String]
1268
1319
  #
1269
1320
  # @!attribute [rw] copy_source_if_match
@@ -1350,7 +1401,7 @@ module Aws::S3
1350
1401
  # in encrypting data. This value is used to store the object and then
1351
1402
  # it is discarded; Amazon S3 does not store the encryption key. The
1352
1403
  # key must be appropriate for use with the algorithm specified in the
1353
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
1404
+ # `x-amz-server-side-encryption-customer-algorithm` header.
1354
1405
  # @return [String]
1355
1406
  #
1356
1407
  # @!attribute [rw] sse_customer_key_md5
@@ -1427,6 +1478,18 @@ module Aws::S3
1427
1478
  # object.
1428
1479
  # @return [String]
1429
1480
  #
1481
+ # @!attribute [rw] expected_bucket_owner
1482
+ # The account id of the expected destination bucket owner. If the
1483
+ # destination bucket is owned by a different account, the request will
1484
+ # fail with an HTTP `403 (Access Denied)` error.
1485
+ # @return [String]
1486
+ #
1487
+ # @!attribute [rw] expected_source_bucket_owner
1488
+ # The account id of the expected source bucket owner. If the source
1489
+ # bucket is owned by a different account, the request will fail with
1490
+ # an HTTP `403 (Access Denied)` error.
1491
+ # @return [String]
1492
+ #
1430
1493
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObjectRequest AWS API Documentation
1431
1494
  #
1432
1495
  class CopyObjectRequest < Struct.new(
@@ -1466,7 +1529,9 @@ module Aws::S3
1466
1529
  :tagging,
1467
1530
  :object_lock_mode,
1468
1531
  :object_lock_retain_until_date,
1469
- :object_lock_legal_hold_status)
1532
+ :object_lock_legal_hold_status,
1533
+ :expected_bucket_owner,
1534
+ :expected_source_bucket_owner)
1470
1535
  SENSITIVE = [:sse_customer_key, :ssekms_key_id, :ssekms_encryption_context, :copy_source_sse_customer_key]
1471
1536
  include Aws::Structure
1472
1537
  end
@@ -1756,6 +1821,7 @@ module Aws::S3
1756
1821
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
1757
1822
  # object_lock_retain_until_date: Time.now,
1758
1823
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
1824
+ # expected_bucket_owner: "AccountId",
1759
1825
  # }
1760
1826
  #
1761
1827
  # @!attribute [rw] acl
@@ -1843,7 +1909,7 @@ module Aws::S3
1843
1909
  # in encrypting data. This value is used to store the object and then
1844
1910
  # it is discarded; Amazon S3 does not store the encryption key. The
1845
1911
  # key must be appropriate for use with the algorithm specified in the
1846
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
1912
+ # `x-amz-server-side-encryption-customer-algorithm` header.
1847
1913
  # @return [String]
1848
1914
  #
1849
1915
  # @!attribute [rw] sse_customer_key_md5
@@ -1903,6 +1969,12 @@ module Aws::S3
1903
1969
  # object.
1904
1970
  # @return [String]
1905
1971
  #
1972
+ # @!attribute [rw] expected_bucket_owner
1973
+ # The account id of the expected bucket owner. If the bucket is owned
1974
+ # by a different account, the request will fail with an HTTP `403
1975
+ # (Access Denied)` error.
1976
+ # @return [String]
1977
+ #
1906
1978
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUploadRequest AWS API Documentation
1907
1979
  #
1908
1980
  class CreateMultipartUploadRequest < Struct.new(
@@ -1932,7 +2004,8 @@ module Aws::S3
1932
2004
  :tagging,
1933
2005
  :object_lock_mode,
1934
2006
  :object_lock_retain_until_date,
1935
- :object_lock_legal_hold_status)
2007
+ :object_lock_legal_hold_status,
2008
+ :expected_bucket_owner)
1936
2009
  SENSITIVE = [:sse_customer_key, :ssekms_key_id, :ssekms_encryption_context]
1937
2010
  include Aws::Structure
1938
2011
  end
@@ -2013,6 +2086,7 @@ module Aws::S3
2013
2086
  # {
2014
2087
  # bucket: "BucketName", # required
2015
2088
  # id: "AnalyticsId", # required
2089
+ # expected_bucket_owner: "AccountId",
2016
2090
  # }
2017
2091
  #
2018
2092
  # @!attribute [rw] bucket
@@ -2024,11 +2098,18 @@ module Aws::S3
2024
2098
  # The ID that identifies the analytics configuration.
2025
2099
  # @return [String]
2026
2100
  #
2101
+ # @!attribute [rw] expected_bucket_owner
2102
+ # The account id of the expected bucket owner. If the bucket is owned
2103
+ # by a different account, the request will fail with an HTTP `403
2104
+ # (Access Denied)` error.
2105
+ # @return [String]
2106
+ #
2027
2107
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfigurationRequest AWS API Documentation
2028
2108
  #
2029
2109
  class DeleteBucketAnalyticsConfigurationRequest < Struct.new(
2030
2110
  :bucket,
2031
- :id)
2111
+ :id,
2112
+ :expected_bucket_owner)
2032
2113
  SENSITIVE = []
2033
2114
  include Aws::Structure
2034
2115
  end
@@ -2038,16 +2119,24 @@ module Aws::S3
2038
2119
  #
2039
2120
  # {
2040
2121
  # bucket: "BucketName", # required
2122
+ # expected_bucket_owner: "AccountId",
2041
2123
  # }
2042
2124
  #
2043
2125
  # @!attribute [rw] bucket
2044
2126
  # Specifies the bucket whose `cors` configuration is being deleted.
2045
2127
  # @return [String]
2046
2128
  #
2129
+ # @!attribute [rw] expected_bucket_owner
2130
+ # The account id of the expected bucket owner. If the bucket is owned
2131
+ # by a different account, the request will fail with an HTTP `403
2132
+ # (Access Denied)` error.
2133
+ # @return [String]
2134
+ #
2047
2135
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketCorsRequest AWS API Documentation
2048
2136
  #
2049
2137
  class DeleteBucketCorsRequest < Struct.new(
2050
- :bucket)
2138
+ :bucket,
2139
+ :expected_bucket_owner)
2051
2140
  SENSITIVE = []
2052
2141
  include Aws::Structure
2053
2142
  end
@@ -2057,6 +2146,7 @@ module Aws::S3
2057
2146
  #
2058
2147
  # {
2059
2148
  # bucket: "BucketName", # required
2149
+ # expected_bucket_owner: "AccountId",
2060
2150
  # }
2061
2151
  #
2062
2152
  # @!attribute [rw] bucket
@@ -2064,10 +2154,17 @@ module Aws::S3
2064
2154
  # configuration to delete.
2065
2155
  # @return [String]
2066
2156
  #
2157
+ # @!attribute [rw] expected_bucket_owner
2158
+ # The account id of the expected bucket owner. If the bucket is owned
2159
+ # by a different account, the request will fail with an HTTP `403
2160
+ # (Access Denied)` error.
2161
+ # @return [String]
2162
+ #
2067
2163
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryptionRequest AWS API Documentation
2068
2164
  #
2069
2165
  class DeleteBucketEncryptionRequest < Struct.new(
2070
- :bucket)
2166
+ :bucket,
2167
+ :expected_bucket_owner)
2071
2168
  SENSITIVE = []
2072
2169
  include Aws::Structure
2073
2170
  end
@@ -2078,6 +2175,7 @@ module Aws::S3
2078
2175
  # {
2079
2176
  # bucket: "BucketName", # required
2080
2177
  # id: "InventoryId", # required
2178
+ # expected_bucket_owner: "AccountId",
2081
2179
  # }
2082
2180
  #
2083
2181
  # @!attribute [rw] bucket
@@ -2089,11 +2187,18 @@ module Aws::S3
2089
2187
  # The ID used to identify the inventory configuration.
2090
2188
  # @return [String]
2091
2189
  #
2190
+ # @!attribute [rw] expected_bucket_owner
2191
+ # The account id of the expected bucket owner. If the bucket is owned
2192
+ # by a different account, the request will fail with an HTTP `403
2193
+ # (Access Denied)` error.
2194
+ # @return [String]
2195
+ #
2092
2196
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketInventoryConfigurationRequest AWS API Documentation
2093
2197
  #
2094
2198
  class DeleteBucketInventoryConfigurationRequest < Struct.new(
2095
2199
  :bucket,
2096
- :id)
2200
+ :id,
2201
+ :expected_bucket_owner)
2097
2202
  SENSITIVE = []
2098
2203
  include Aws::Structure
2099
2204
  end
@@ -2103,16 +2208,24 @@ module Aws::S3
2103
2208
  #
2104
2209
  # {
2105
2210
  # bucket: "BucketName", # required
2211
+ # expected_bucket_owner: "AccountId",
2106
2212
  # }
2107
2213
  #
2108
2214
  # @!attribute [rw] bucket
2109
2215
  # The bucket name of the lifecycle to delete.
2110
2216
  # @return [String]
2111
2217
  #
2218
+ # @!attribute [rw] expected_bucket_owner
2219
+ # The account id of the expected bucket owner. If the bucket is owned
2220
+ # by a different account, the request will fail with an HTTP `403
2221
+ # (Access Denied)` error.
2222
+ # @return [String]
2223
+ #
2112
2224
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketLifecycleRequest AWS API Documentation
2113
2225
  #
2114
2226
  class DeleteBucketLifecycleRequest < Struct.new(
2115
- :bucket)
2227
+ :bucket,
2228
+ :expected_bucket_owner)
2116
2229
  SENSITIVE = []
2117
2230
  include Aws::Structure
2118
2231
  end
@@ -2123,6 +2236,7 @@ module Aws::S3
2123
2236
  # {
2124
2237
  # bucket: "BucketName", # required
2125
2238
  # id: "MetricsId", # required
2239
+ # expected_bucket_owner: "AccountId",
2126
2240
  # }
2127
2241
  #
2128
2242
  # @!attribute [rw] bucket
@@ -2134,11 +2248,18 @@ module Aws::S3
2134
2248
  # The ID used to identify the metrics configuration.
2135
2249
  # @return [String]
2136
2250
  #
2251
+ # @!attribute [rw] expected_bucket_owner
2252
+ # The account id of the expected bucket owner. If the bucket is owned
2253
+ # by a different account, the request will fail with an HTTP `403
2254
+ # (Access Denied)` error.
2255
+ # @return [String]
2256
+ #
2137
2257
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetricsConfigurationRequest AWS API Documentation
2138
2258
  #
2139
2259
  class DeleteBucketMetricsConfigurationRequest < Struct.new(
2140
2260
  :bucket,
2141
- :id)
2261
+ :id,
2262
+ :expected_bucket_owner)
2142
2263
  SENSITIVE = []
2143
2264
  include Aws::Structure
2144
2265
  end
@@ -2148,16 +2269,24 @@ module Aws::S3
2148
2269
  #
2149
2270
  # {
2150
2271
  # bucket: "BucketName", # required
2272
+ # expected_bucket_owner: "AccountId",
2151
2273
  # }
2152
2274
  #
2153
2275
  # @!attribute [rw] bucket
2154
2276
  # The bucket name.
2155
2277
  # @return [String]
2156
2278
  #
2279
+ # @!attribute [rw] expected_bucket_owner
2280
+ # The account id of the expected bucket owner. If the bucket is owned
2281
+ # by a different account, the request will fail with an HTTP `403
2282
+ # (Access Denied)` error.
2283
+ # @return [String]
2284
+ #
2157
2285
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketPolicyRequest AWS API Documentation
2158
2286
  #
2159
2287
  class DeleteBucketPolicyRequest < Struct.new(
2160
- :bucket)
2288
+ :bucket,
2289
+ :expected_bucket_owner)
2161
2290
  SENSITIVE = []
2162
2291
  include Aws::Structure
2163
2292
  end
@@ -2167,16 +2296,24 @@ module Aws::S3
2167
2296
  #
2168
2297
  # {
2169
2298
  # bucket: "BucketName", # required
2299
+ # expected_bucket_owner: "AccountId",
2170
2300
  # }
2171
2301
  #
2172
2302
  # @!attribute [rw] bucket
2173
2303
  # The bucket name.
2174
2304
  # @return [String]
2175
2305
  #
2306
+ # @!attribute [rw] expected_bucket_owner
2307
+ # The account id of the expected bucket owner. If the bucket is owned
2308
+ # by a different account, the request will fail with an HTTP `403
2309
+ # (Access Denied)` error.
2310
+ # @return [String]
2311
+ #
2176
2312
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplicationRequest AWS API Documentation
2177
2313
  #
2178
2314
  class DeleteBucketReplicationRequest < Struct.new(
2179
- :bucket)
2315
+ :bucket,
2316
+ :expected_bucket_owner)
2180
2317
  SENSITIVE = []
2181
2318
  include Aws::Structure
2182
2319
  end
@@ -2186,16 +2323,24 @@ module Aws::S3
2186
2323
  #
2187
2324
  # {
2188
2325
  # bucket: "BucketName", # required
2326
+ # expected_bucket_owner: "AccountId",
2189
2327
  # }
2190
2328
  #
2191
2329
  # @!attribute [rw] bucket
2192
2330
  # Specifies the bucket being deleted.
2193
2331
  # @return [String]
2194
2332
  #
2333
+ # @!attribute [rw] expected_bucket_owner
2334
+ # The account id of the expected bucket owner. If the bucket is owned
2335
+ # by a different account, the request will fail with an HTTP `403
2336
+ # (Access Denied)` error.
2337
+ # @return [String]
2338
+ #
2195
2339
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketRequest AWS API Documentation
2196
2340
  #
2197
2341
  class DeleteBucketRequest < Struct.new(
2198
- :bucket)
2342
+ :bucket,
2343
+ :expected_bucket_owner)
2199
2344
  SENSITIVE = []
2200
2345
  include Aws::Structure
2201
2346
  end
@@ -2205,16 +2350,24 @@ module Aws::S3
2205
2350
  #
2206
2351
  # {
2207
2352
  # bucket: "BucketName", # required
2353
+ # expected_bucket_owner: "AccountId",
2208
2354
  # }
2209
2355
  #
2210
2356
  # @!attribute [rw] bucket
2211
2357
  # The bucket that has the tag set to be removed.
2212
2358
  # @return [String]
2213
2359
  #
2360
+ # @!attribute [rw] expected_bucket_owner
2361
+ # The account id of the expected bucket owner. If the bucket is owned
2362
+ # by a different account, the request will fail with an HTTP `403
2363
+ # (Access Denied)` error.
2364
+ # @return [String]
2365
+ #
2214
2366
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketTaggingRequest AWS API Documentation
2215
2367
  #
2216
2368
  class DeleteBucketTaggingRequest < Struct.new(
2217
- :bucket)
2369
+ :bucket,
2370
+ :expected_bucket_owner)
2218
2371
  SENSITIVE = []
2219
2372
  include Aws::Structure
2220
2373
  end
@@ -2224,6 +2377,7 @@ module Aws::S3
2224
2377
  #
2225
2378
  # {
2226
2379
  # bucket: "BucketName", # required
2380
+ # expected_bucket_owner: "AccountId",
2227
2381
  # }
2228
2382
  #
2229
2383
  # @!attribute [rw] bucket
@@ -2231,10 +2385,17 @@ module Aws::S3
2231
2385
  # configuration.
2232
2386
  # @return [String]
2233
2387
  #
2388
+ # @!attribute [rw] expected_bucket_owner
2389
+ # The account id of the expected bucket owner. If the bucket is owned
2390
+ # by a different account, the request will fail with an HTTP `403
2391
+ # (Access Denied)` error.
2392
+ # @return [String]
2393
+ #
2234
2394
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketWebsiteRequest AWS API Documentation
2235
2395
  #
2236
2396
  class DeleteBucketWebsiteRequest < Struct.new(
2237
- :bucket)
2397
+ :bucket,
2398
+ :expected_bucket_owner)
2238
2399
  SENSITIVE = []
2239
2400
  include Aws::Structure
2240
2401
  end
@@ -2353,6 +2514,7 @@ module Aws::S3
2353
2514
  # version_id: "ObjectVersionId",
2354
2515
  # request_payer: "requester", # accepts requester
2355
2516
  # bypass_governance_retention: false,
2517
+ # expected_bucket_owner: "AccountId",
2356
2518
  # }
2357
2519
  #
2358
2520
  # @!attribute [rw] bucket
@@ -2404,6 +2566,12 @@ module Aws::S3
2404
2566
  # restrictions to process this operation.
2405
2567
  # @return [Boolean]
2406
2568
  #
2569
+ # @!attribute [rw] expected_bucket_owner
2570
+ # The account id of the expected bucket owner. If the bucket is owned
2571
+ # by a different account, the request will fail with an HTTP `403
2572
+ # (Access Denied)` error.
2573
+ # @return [String]
2574
+ #
2407
2575
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectRequest AWS API Documentation
2408
2576
  #
2409
2577
  class DeleteObjectRequest < Struct.new(
@@ -2412,7 +2580,8 @@ module Aws::S3
2412
2580
  :mfa,
2413
2581
  :version_id,
2414
2582
  :request_payer,
2415
- :bypass_governance_retention)
2583
+ :bypass_governance_retention,
2584
+ :expected_bucket_owner)
2416
2585
  SENSITIVE = []
2417
2586
  include Aws::Structure
2418
2587
  end
@@ -2436,6 +2605,7 @@ module Aws::S3
2436
2605
  # bucket: "BucketName", # required
2437
2606
  # key: "ObjectKey", # required
2438
2607
  # version_id: "ObjectVersionId",
2608
+ # expected_bucket_owner: "AccountId",
2439
2609
  # }
2440
2610
  #
2441
2611
  # @!attribute [rw] bucket
@@ -2464,12 +2634,19 @@ module Aws::S3
2464
2634
  # The versionId of the object that the tag-set will be removed from.
2465
2635
  # @return [String]
2466
2636
  #
2637
+ # @!attribute [rw] expected_bucket_owner
2638
+ # The account id of the expected bucket owner. If the bucket is owned
2639
+ # by a different account, the request will fail with an HTTP `403
2640
+ # (Access Denied)` error.
2641
+ # @return [String]
2642
+ #
2467
2643
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectTaggingRequest AWS API Documentation
2468
2644
  #
2469
2645
  class DeleteObjectTaggingRequest < Struct.new(
2470
2646
  :bucket,
2471
2647
  :key,
2472
- :version_id)
2648
+ :version_id,
2649
+ :expected_bucket_owner)
2473
2650
  SENSITIVE = []
2474
2651
  include Aws::Structure
2475
2652
  end
@@ -2516,6 +2693,7 @@ module Aws::S3
2516
2693
  # mfa: "MFA",
2517
2694
  # request_payer: "requester", # accepts requester
2518
2695
  # bypass_governance_retention: false,
2696
+ # expected_bucket_owner: "AccountId",
2519
2697
  # }
2520
2698
  #
2521
2699
  # @!attribute [rw] bucket
@@ -2564,6 +2742,12 @@ module Aws::S3
2564
2742
  # permissions to perform this operation.
2565
2743
  # @return [Boolean]
2566
2744
  #
2745
+ # @!attribute [rw] expected_bucket_owner
2746
+ # The account id of the expected bucket owner. If the bucket is owned
2747
+ # by a different account, the request will fail with an HTTP `403
2748
+ # (Access Denied)` error.
2749
+ # @return [String]
2750
+ #
2567
2751
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectsRequest AWS API Documentation
2568
2752
  #
2569
2753
  class DeleteObjectsRequest < Struct.new(
@@ -2571,7 +2755,8 @@ module Aws::S3
2571
2755
  :delete,
2572
2756
  :mfa,
2573
2757
  :request_payer,
2574
- :bypass_governance_retention)
2758
+ :bypass_governance_retention,
2759
+ :expected_bucket_owner)
2575
2760
  SENSITIVE = []
2576
2761
  include Aws::Structure
2577
2762
  end
@@ -2581,6 +2766,7 @@ module Aws::S3
2581
2766
  #
2582
2767
  # {
2583
2768
  # bucket: "BucketName", # required
2769
+ # expected_bucket_owner: "AccountId",
2584
2770
  # }
2585
2771
  #
2586
2772
  # @!attribute [rw] bucket
@@ -2588,10 +2774,17 @@ module Aws::S3
2588
2774
  # want to delete.
2589
2775
  # @return [String]
2590
2776
  #
2777
+ # @!attribute [rw] expected_bucket_owner
2778
+ # The account id of the expected bucket owner. If the bucket is owned
2779
+ # by a different account, the request will fail with an HTTP `403
2780
+ # (Access Denied)` error.
2781
+ # @return [String]
2782
+ #
2591
2783
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlockRequest AWS API Documentation
2592
2784
  #
2593
2785
  class DeletePublicAccessBlockRequest < Struct.new(
2594
- :bucket)
2786
+ :bucket,
2787
+ :expected_bucket_owner)
2595
2788
  SENSITIVE = []
2596
2789
  include Aws::Structure
2597
2790
  end
@@ -3750,6 +3943,7 @@ module Aws::S3
3750
3943
  #
3751
3944
  # {
3752
3945
  # bucket: "BucketName", # required
3946
+ # expected_bucket_owner: "AccountId",
3753
3947
  # }
3754
3948
  #
3755
3949
  # @!attribute [rw] bucket
@@ -3757,10 +3951,17 @@ module Aws::S3
3757
3951
  # retrieved.
3758
3952
  # @return [String]
3759
3953
  #
3954
+ # @!attribute [rw] expected_bucket_owner
3955
+ # The account id of the expected bucket owner. If the bucket is owned
3956
+ # by a different account, the request will fail with an HTTP `403
3957
+ # (Access Denied)` error.
3958
+ # @return [String]
3959
+ #
3760
3960
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfigurationRequest AWS API Documentation
3761
3961
  #
3762
3962
  class GetBucketAccelerateConfigurationRequest < Struct.new(
3763
- :bucket)
3963
+ :bucket,
3964
+ :expected_bucket_owner)
3764
3965
  SENSITIVE = []
3765
3966
  include Aws::Structure
3766
3967
  end
@@ -3787,16 +3988,24 @@ module Aws::S3
3787
3988
  #
3788
3989
  # {
3789
3990
  # bucket: "BucketName", # required
3991
+ # expected_bucket_owner: "AccountId",
3790
3992
  # }
3791
3993
  #
3792
3994
  # @!attribute [rw] bucket
3793
3995
  # Specifies the S3 bucket whose ACL is being requested.
3794
3996
  # @return [String]
3795
3997
  #
3998
+ # @!attribute [rw] expected_bucket_owner
3999
+ # The account id of the expected bucket owner. If the bucket is owned
4000
+ # by a different account, the request will fail with an HTTP `403
4001
+ # (Access Denied)` error.
4002
+ # @return [String]
4003
+ #
3796
4004
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAclRequest AWS API Documentation
3797
4005
  #
3798
4006
  class GetBucketAclRequest < Struct.new(
3799
- :bucket)
4007
+ :bucket,
4008
+ :expected_bucket_owner)
3800
4009
  SENSITIVE = []
3801
4010
  include Aws::Structure
3802
4011
  end
@@ -3819,6 +4028,7 @@ module Aws::S3
3819
4028
  # {
3820
4029
  # bucket: "BucketName", # required
3821
4030
  # id: "AnalyticsId", # required
4031
+ # expected_bucket_owner: "AccountId",
3822
4032
  # }
3823
4033
  #
3824
4034
  # @!attribute [rw] bucket
@@ -3830,11 +4040,18 @@ module Aws::S3
3830
4040
  # The ID that identifies the analytics configuration.
3831
4041
  # @return [String]
3832
4042
  #
4043
+ # @!attribute [rw] expected_bucket_owner
4044
+ # The account id of the expected bucket owner. If the bucket is owned
4045
+ # by a different account, the request will fail with an HTTP `403
4046
+ # (Access Denied)` error.
4047
+ # @return [String]
4048
+ #
3833
4049
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAnalyticsConfigurationRequest AWS API Documentation
3834
4050
  #
3835
4051
  class GetBucketAnalyticsConfigurationRequest < Struct.new(
3836
4052
  :bucket,
3837
- :id)
4053
+ :id,
4054
+ :expected_bucket_owner)
3838
4055
  SENSITIVE = []
3839
4056
  include Aws::Structure
3840
4057
  end
@@ -3857,16 +4074,24 @@ module Aws::S3
3857
4074
  #
3858
4075
  # {
3859
4076
  # bucket: "BucketName", # required
4077
+ # expected_bucket_owner: "AccountId",
3860
4078
  # }
3861
4079
  #
3862
4080
  # @!attribute [rw] bucket
3863
4081
  # The bucket name for which to get the cors configuration.
3864
4082
  # @return [String]
3865
4083
  #
4084
+ # @!attribute [rw] expected_bucket_owner
4085
+ # The account id of the expected bucket owner. If the bucket is owned
4086
+ # by a different account, the request will fail with an HTTP `403
4087
+ # (Access Denied)` error.
4088
+ # @return [String]
4089
+ #
3866
4090
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketCorsRequest AWS API Documentation
3867
4091
  #
3868
4092
  class GetBucketCorsRequest < Struct.new(
3869
- :bucket)
4093
+ :bucket,
4094
+ :expected_bucket_owner)
3870
4095
  SENSITIVE = []
3871
4096
  include Aws::Structure
3872
4097
  end
@@ -3888,6 +4113,7 @@ module Aws::S3
3888
4113
  #
3889
4114
  # {
3890
4115
  # bucket: "BucketName", # required
4116
+ # expected_bucket_owner: "AccountId",
3891
4117
  # }
3892
4118
  #
3893
4119
  # @!attribute [rw] bucket
@@ -3895,10 +4121,17 @@ module Aws::S3
3895
4121
  # configuration is retrieved.
3896
4122
  # @return [String]
3897
4123
  #
4124
+ # @!attribute [rw] expected_bucket_owner
4125
+ # The account id of the expected bucket owner. If the bucket is owned
4126
+ # by a different account, the request will fail with an HTTP `403
4127
+ # (Access Denied)` error.
4128
+ # @return [String]
4129
+ #
3898
4130
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryptionRequest AWS API Documentation
3899
4131
  #
3900
4132
  class GetBucketEncryptionRequest < Struct.new(
3901
- :bucket)
4133
+ :bucket,
4134
+ :expected_bucket_owner)
3902
4135
  SENSITIVE = []
3903
4136
  include Aws::Structure
3904
4137
  end
@@ -3921,6 +4154,7 @@ module Aws::S3
3921
4154
  # {
3922
4155
  # bucket: "BucketName", # required
3923
4156
  # id: "InventoryId", # required
4157
+ # expected_bucket_owner: "AccountId",
3924
4158
  # }
3925
4159
  #
3926
4160
  # @!attribute [rw] bucket
@@ -3932,11 +4166,18 @@ module Aws::S3
3932
4166
  # The ID used to identify the inventory configuration.
3933
4167
  # @return [String]
3934
4168
  #
4169
+ # @!attribute [rw] expected_bucket_owner
4170
+ # The account id of the expected bucket owner. If the bucket is owned
4171
+ # by a different account, the request will fail with an HTTP `403
4172
+ # (Access Denied)` error.
4173
+ # @return [String]
4174
+ #
3935
4175
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketInventoryConfigurationRequest AWS API Documentation
3936
4176
  #
3937
4177
  class GetBucketInventoryConfigurationRequest < Struct.new(
3938
4178
  :bucket,
3939
- :id)
4179
+ :id,
4180
+ :expected_bucket_owner)
3940
4181
  SENSITIVE = []
3941
4182
  include Aws::Structure
3942
4183
  end
@@ -3958,16 +4199,24 @@ module Aws::S3
3958
4199
  #
3959
4200
  # {
3960
4201
  # bucket: "BucketName", # required
4202
+ # expected_bucket_owner: "AccountId",
3961
4203
  # }
3962
4204
  #
3963
4205
  # @!attribute [rw] bucket
3964
4206
  # The name of the bucket for which to get the lifecycle information.
3965
4207
  # @return [String]
3966
4208
  #
4209
+ # @!attribute [rw] expected_bucket_owner
4210
+ # The account id of the expected bucket owner. If the bucket is owned
4211
+ # by a different account, the request will fail with an HTTP `403
4212
+ # (Access Denied)` error.
4213
+ # @return [String]
4214
+ #
3967
4215
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleConfigurationRequest AWS API Documentation
3968
4216
  #
3969
4217
  class GetBucketLifecycleConfigurationRequest < Struct.new(
3970
- :bucket)
4218
+ :bucket,
4219
+ :expected_bucket_owner)
3971
4220
  SENSITIVE = []
3972
4221
  include Aws::Structure
3973
4222
  end
@@ -3989,16 +4238,24 @@ module Aws::S3
3989
4238
  #
3990
4239
  # {
3991
4240
  # bucket: "BucketName", # required
4241
+ # expected_bucket_owner: "AccountId",
3992
4242
  # }
3993
4243
  #
3994
4244
  # @!attribute [rw] bucket
3995
4245
  # The name of the bucket for which to get the lifecycle information.
3996
4246
  # @return [String]
3997
4247
  #
4248
+ # @!attribute [rw] expected_bucket_owner
4249
+ # The account id of the expected bucket owner. If the bucket is owned
4250
+ # by a different account, the request will fail with an HTTP `403
4251
+ # (Access Denied)` error.
4252
+ # @return [String]
4253
+ #
3998
4254
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleRequest AWS API Documentation
3999
4255
  #
4000
4256
  class GetBucketLifecycleRequest < Struct.new(
4001
- :bucket)
4257
+ :bucket,
4258
+ :expected_bucket_owner)
4002
4259
  SENSITIVE = []
4003
4260
  include Aws::Structure
4004
4261
  end
@@ -4027,16 +4284,24 @@ module Aws::S3
4027
4284
  #
4028
4285
  # {
4029
4286
  # bucket: "BucketName", # required
4287
+ # expected_bucket_owner: "AccountId",
4030
4288
  # }
4031
4289
  #
4032
4290
  # @!attribute [rw] bucket
4033
4291
  # The name of the bucket for which to get the location.
4034
4292
  # @return [String]
4035
4293
  #
4294
+ # @!attribute [rw] expected_bucket_owner
4295
+ # The account id of the expected bucket owner. If the bucket is owned
4296
+ # by a different account, the request will fail with an HTTP `403
4297
+ # (Access Denied)` error.
4298
+ # @return [String]
4299
+ #
4036
4300
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLocationRequest AWS API Documentation
4037
4301
  #
4038
4302
  class GetBucketLocationRequest < Struct.new(
4039
- :bucket)
4303
+ :bucket,
4304
+ :expected_bucket_owner)
4040
4305
  SENSITIVE = []
4041
4306
  include Aws::Structure
4042
4307
  end
@@ -4065,16 +4330,24 @@ module Aws::S3
4065
4330
  #
4066
4331
  # {
4067
4332
  # bucket: "BucketName", # required
4333
+ # expected_bucket_owner: "AccountId",
4068
4334
  # }
4069
4335
  #
4070
4336
  # @!attribute [rw] bucket
4071
4337
  # The bucket name for which to get the logging information.
4072
4338
  # @return [String]
4073
4339
  #
4340
+ # @!attribute [rw] expected_bucket_owner
4341
+ # The account id of the expected bucket owner. If the bucket is owned
4342
+ # by a different account, the request will fail with an HTTP `403
4343
+ # (Access Denied)` error.
4344
+ # @return [String]
4345
+ #
4074
4346
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLoggingRequest AWS API Documentation
4075
4347
  #
4076
4348
  class GetBucketLoggingRequest < Struct.new(
4077
- :bucket)
4349
+ :bucket,
4350
+ :expected_bucket_owner)
4078
4351
  SENSITIVE = []
4079
4352
  include Aws::Structure
4080
4353
  end
@@ -4097,6 +4370,7 @@ module Aws::S3
4097
4370
  # {
4098
4371
  # bucket: "BucketName", # required
4099
4372
  # id: "MetricsId", # required
4373
+ # expected_bucket_owner: "AccountId",
4100
4374
  # }
4101
4375
  #
4102
4376
  # @!attribute [rw] bucket
@@ -4108,11 +4382,18 @@ module Aws::S3
4108
4382
  # The ID used to identify the metrics configuration.
4109
4383
  # @return [String]
4110
4384
  #
4385
+ # @!attribute [rw] expected_bucket_owner
4386
+ # The account id of the expected bucket owner. If the bucket is owned
4387
+ # by a different account, the request will fail with an HTTP `403
4388
+ # (Access Denied)` error.
4389
+ # @return [String]
4390
+ #
4111
4391
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetricsConfigurationRequest AWS API Documentation
4112
4392
  #
4113
4393
  class GetBucketMetricsConfigurationRequest < Struct.new(
4114
4394
  :bucket,
4115
- :id)
4395
+ :id,
4396
+ :expected_bucket_owner)
4116
4397
  SENSITIVE = []
4117
4398
  include Aws::Structure
4118
4399
  end
@@ -4122,16 +4403,24 @@ module Aws::S3
4122
4403
  #
4123
4404
  # {
4124
4405
  # bucket: "BucketName", # required
4406
+ # expected_bucket_owner: "AccountId",
4125
4407
  # }
4126
4408
  #
4127
4409
  # @!attribute [rw] bucket
4128
4410
  # Name of the bucket for which to get the notification configuration.
4129
4411
  # @return [String]
4130
4412
  #
4413
+ # @!attribute [rw] expected_bucket_owner
4414
+ # The account id of the expected bucket owner. If the bucket is owned
4415
+ # by a different account, the request will fail with an HTTP `403
4416
+ # (Access Denied)` error.
4417
+ # @return [String]
4418
+ #
4131
4419
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotificationConfigurationRequest AWS API Documentation
4132
4420
  #
4133
4421
  class GetBucketNotificationConfigurationRequest < Struct.new(
4134
- :bucket)
4422
+ :bucket,
4423
+ :expected_bucket_owner)
4135
4424
  SENSITIVE = []
4136
4425
  include Aws::Structure
4137
4426
  end
@@ -4153,16 +4442,24 @@ module Aws::S3
4153
4442
  #
4154
4443
  # {
4155
4444
  # bucket: "BucketName", # required
4445
+ # expected_bucket_owner: "AccountId",
4156
4446
  # }
4157
4447
  #
4158
4448
  # @!attribute [rw] bucket
4159
4449
  # The bucket name for which to get the bucket policy.
4160
4450
  # @return [String]
4161
4451
  #
4452
+ # @!attribute [rw] expected_bucket_owner
4453
+ # The account id of the expected bucket owner. If the bucket is owned
4454
+ # by a different account, the request will fail with an HTTP `403
4455
+ # (Access Denied)` error.
4456
+ # @return [String]
4457
+ #
4162
4458
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyRequest AWS API Documentation
4163
4459
  #
4164
4460
  class GetBucketPolicyRequest < Struct.new(
4165
- :bucket)
4461
+ :bucket,
4462
+ :expected_bucket_owner)
4166
4463
  SENSITIVE = []
4167
4464
  include Aws::Structure
4168
4465
  end
@@ -4184,6 +4481,7 @@ module Aws::S3
4184
4481
  #
4185
4482
  # {
4186
4483
  # bucket: "BucketName", # required
4484
+ # expected_bucket_owner: "AccountId",
4187
4485
  # }
4188
4486
  #
4189
4487
  # @!attribute [rw] bucket
@@ -4191,10 +4489,17 @@ module Aws::S3
4191
4489
  # retrieve.
4192
4490
  # @return [String]
4193
4491
  #
4492
+ # @!attribute [rw] expected_bucket_owner
4493
+ # The account id of the expected bucket owner. If the bucket is owned
4494
+ # by a different account, the request will fail with an HTTP `403
4495
+ # (Access Denied)` error.
4496
+ # @return [String]
4497
+ #
4194
4498
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatusRequest AWS API Documentation
4195
4499
  #
4196
4500
  class GetBucketPolicyStatusRequest < Struct.new(
4197
- :bucket)
4501
+ :bucket,
4502
+ :expected_bucket_owner)
4198
4503
  SENSITIVE = []
4199
4504
  include Aws::Structure
4200
4505
  end
@@ -4217,16 +4522,24 @@ module Aws::S3
4217
4522
  #
4218
4523
  # {
4219
4524
  # bucket: "BucketName", # required
4525
+ # expected_bucket_owner: "AccountId",
4220
4526
  # }
4221
4527
  #
4222
4528
  # @!attribute [rw] bucket
4223
4529
  # The bucket name for which to get the replication information.
4224
4530
  # @return [String]
4225
4531
  #
4532
+ # @!attribute [rw] expected_bucket_owner
4533
+ # The account id of the expected bucket owner. If the bucket is owned
4534
+ # by a different account, the request will fail with an HTTP `403
4535
+ # (Access Denied)` error.
4536
+ # @return [String]
4537
+ #
4226
4538
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplicationRequest AWS API Documentation
4227
4539
  #
4228
4540
  class GetBucketReplicationRequest < Struct.new(
4229
- :bucket)
4541
+ :bucket,
4542
+ :expected_bucket_owner)
4230
4543
  SENSITIVE = []
4231
4544
  include Aws::Structure
4232
4545
  end
@@ -4248,6 +4561,7 @@ module Aws::S3
4248
4561
  #
4249
4562
  # {
4250
4563
  # bucket: "BucketName", # required
4564
+ # expected_bucket_owner: "AccountId",
4251
4565
  # }
4252
4566
  #
4253
4567
  # @!attribute [rw] bucket
@@ -4255,10 +4569,17 @@ module Aws::S3
4255
4569
  # configuration
4256
4570
  # @return [String]
4257
4571
  #
4572
+ # @!attribute [rw] expected_bucket_owner
4573
+ # The account id of the expected bucket owner. If the bucket is owned
4574
+ # by a different account, the request will fail with an HTTP `403
4575
+ # (Access Denied)` error.
4576
+ # @return [String]
4577
+ #
4258
4578
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketRequestPaymentRequest AWS API Documentation
4259
4579
  #
4260
4580
  class GetBucketRequestPaymentRequest < Struct.new(
4261
- :bucket)
4581
+ :bucket,
4582
+ :expected_bucket_owner)
4262
4583
  SENSITIVE = []
4263
4584
  include Aws::Structure
4264
4585
  end
@@ -4280,16 +4601,24 @@ module Aws::S3
4280
4601
  #
4281
4602
  # {
4282
4603
  # bucket: "BucketName", # required
4604
+ # expected_bucket_owner: "AccountId",
4283
4605
  # }
4284
4606
  #
4285
4607
  # @!attribute [rw] bucket
4286
4608
  # The name of the bucket for which to get the tagging information.
4287
4609
  # @return [String]
4288
4610
  #
4611
+ # @!attribute [rw] expected_bucket_owner
4612
+ # The account id of the expected bucket owner. If the bucket is owned
4613
+ # by a different account, the request will fail with an HTTP `403
4614
+ # (Access Denied)` error.
4615
+ # @return [String]
4616
+ #
4289
4617
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketTaggingRequest AWS API Documentation
4290
4618
  #
4291
4619
  class GetBucketTaggingRequest < Struct.new(
4292
- :bucket)
4620
+ :bucket,
4621
+ :expected_bucket_owner)
4293
4622
  SENSITIVE = []
4294
4623
  include Aws::Structure
4295
4624
  end
@@ -4319,16 +4648,24 @@ module Aws::S3
4319
4648
  #
4320
4649
  # {
4321
4650
  # bucket: "BucketName", # required
4651
+ # expected_bucket_owner: "AccountId",
4322
4652
  # }
4323
4653
  #
4324
4654
  # @!attribute [rw] bucket
4325
4655
  # The name of the bucket for which to get the versioning information.
4326
4656
  # @return [String]
4327
4657
  #
4658
+ # @!attribute [rw] expected_bucket_owner
4659
+ # The account id of the expected bucket owner. If the bucket is owned
4660
+ # by a different account, the request will fail with an HTTP `403
4661
+ # (Access Denied)` error.
4662
+ # @return [String]
4663
+ #
4328
4664
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketVersioningRequest AWS API Documentation
4329
4665
  #
4330
4666
  class GetBucketVersioningRequest < Struct.new(
4331
- :bucket)
4667
+ :bucket,
4668
+ :expected_bucket_owner)
4332
4669
  SENSITIVE = []
4333
4670
  include Aws::Structure
4334
4671
  end
@@ -4369,16 +4706,24 @@ module Aws::S3
4369
4706
  #
4370
4707
  # {
4371
4708
  # bucket: "BucketName", # required
4709
+ # expected_bucket_owner: "AccountId",
4372
4710
  # }
4373
4711
  #
4374
4712
  # @!attribute [rw] bucket
4375
4713
  # The bucket name for which to get the website configuration.
4376
4714
  # @return [String]
4377
4715
  #
4716
+ # @!attribute [rw] expected_bucket_owner
4717
+ # The account id of the expected bucket owner. If the bucket is owned
4718
+ # by a different account, the request will fail with an HTTP `403
4719
+ # (Access Denied)` error.
4720
+ # @return [String]
4721
+ #
4378
4722
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketWebsiteRequest AWS API Documentation
4379
4723
  #
4380
4724
  class GetBucketWebsiteRequest < Struct.new(
4381
- :bucket)
4725
+ :bucket,
4726
+ :expected_bucket_owner)
4382
4727
  SENSITIVE = []
4383
4728
  include Aws::Structure
4384
4729
  end
@@ -4414,6 +4759,7 @@ module Aws::S3
4414
4759
  # key: "ObjectKey", # required
4415
4760
  # version_id: "ObjectVersionId",
4416
4761
  # request_payer: "requester", # accepts requester
4762
+ # expected_bucket_owner: "AccountId",
4417
4763
  # }
4418
4764
  #
4419
4765
  # @!attribute [rw] bucket
@@ -4454,13 +4800,20 @@ module Aws::S3
4454
4800
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
4455
4801
  # @return [String]
4456
4802
  #
4803
+ # @!attribute [rw] expected_bucket_owner
4804
+ # The account id of the expected bucket owner. If the bucket is owned
4805
+ # by a different account, the request will fail with an HTTP `403
4806
+ # (Access Denied)` error.
4807
+ # @return [String]
4808
+ #
4457
4809
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAclRequest AWS API Documentation
4458
4810
  #
4459
4811
  class GetObjectAclRequest < Struct.new(
4460
4812
  :bucket,
4461
4813
  :key,
4462
4814
  :version_id,
4463
- :request_payer)
4815
+ :request_payer,
4816
+ :expected_bucket_owner)
4464
4817
  SENSITIVE = []
4465
4818
  include Aws::Structure
4466
4819
  end
@@ -4485,6 +4838,7 @@ module Aws::S3
4485
4838
  # key: "ObjectKey", # required
4486
4839
  # version_id: "ObjectVersionId",
4487
4840
  # request_payer: "requester", # accepts requester
4841
+ # expected_bucket_owner: "AccountId",
4488
4842
  # }
4489
4843
  #
4490
4844
  # @!attribute [rw] bucket
@@ -4527,13 +4881,20 @@ module Aws::S3
4527
4881
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
4528
4882
  # @return [String]
4529
4883
  #
4884
+ # @!attribute [rw] expected_bucket_owner
4885
+ # The account id of the expected bucket owner. If the bucket is owned
4886
+ # by a different account, the request will fail with an HTTP `403
4887
+ # (Access Denied)` error.
4888
+ # @return [String]
4889
+ #
4530
4890
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHoldRequest AWS API Documentation
4531
4891
  #
4532
4892
  class GetObjectLegalHoldRequest < Struct.new(
4533
4893
  :bucket,
4534
4894
  :key,
4535
4895
  :version_id,
4536
- :request_payer)
4896
+ :request_payer,
4897
+ :expected_bucket_owner)
4537
4898
  SENSITIVE = []
4538
4899
  include Aws::Structure
4539
4900
  end
@@ -4555,16 +4916,24 @@ module Aws::S3
4555
4916
  #
4556
4917
  # {
4557
4918
  # bucket: "BucketName", # required
4919
+ # expected_bucket_owner: "AccountId",
4558
4920
  # }
4559
4921
  #
4560
4922
  # @!attribute [rw] bucket
4561
4923
  # The bucket whose Object Lock configuration you want to retrieve.
4562
4924
  # @return [String]
4563
4925
  #
4926
+ # @!attribute [rw] expected_bucket_owner
4927
+ # The account id of the expected bucket owner. If the bucket is owned
4928
+ # by a different account, the request will fail with an HTTP `403
4929
+ # (Access Denied)` error.
4930
+ # @return [String]
4931
+ #
4564
4932
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfigurationRequest AWS API Documentation
4565
4933
  #
4566
4934
  class GetObjectLockConfigurationRequest < Struct.new(
4567
- :bucket)
4935
+ :bucket,
4936
+ :expected_bucket_owner)
4568
4937
  SENSITIVE = []
4569
4938
  include Aws::Structure
4570
4939
  end
@@ -4788,6 +5157,7 @@ module Aws::S3
4788
5157
  # sse_customer_key_md5: "SSECustomerKeyMD5",
4789
5158
  # request_payer: "requester", # accepts requester
4790
5159
  # part_number: 1,
5160
+ # expected_bucket_owner: "AccountId",
4791
5161
  # }
4792
5162
  #
4793
5163
  # @!attribute [rw] bucket
@@ -4884,7 +5254,7 @@ module Aws::S3
4884
5254
  # in encrypting data. This value is used to store the object and then
4885
5255
  # it is discarded; Amazon S3 does not store the encryption key. The
4886
5256
  # key must be appropriate for use with the algorithm specified in the
4887
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
5257
+ # `x-amz-server-side-encryption-customer-algorithm` header.
4888
5258
  # @return [String]
4889
5259
  #
4890
5260
  # @!attribute [rw] sse_customer_key_md5
@@ -4912,6 +5282,12 @@ module Aws::S3
4912
5282
  # object.
4913
5283
  # @return [Integer]
4914
5284
  #
5285
+ # @!attribute [rw] expected_bucket_owner
5286
+ # The account id of the expected bucket owner. If the bucket is owned
5287
+ # by a different account, the request will fail with an HTTP `403
5288
+ # (Access Denied)` error.
5289
+ # @return [String]
5290
+ #
4915
5291
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRequest AWS API Documentation
4916
5292
  #
4917
5293
  class GetObjectRequest < Struct.new(
@@ -4933,7 +5309,8 @@ module Aws::S3
4933
5309
  :sse_customer_key,
4934
5310
  :sse_customer_key_md5,
4935
5311
  :request_payer,
4936
- :part_number)
5312
+ :part_number,
5313
+ :expected_bucket_owner)
4937
5314
  SENSITIVE = [:sse_customer_key]
4938
5315
  include Aws::Structure
4939
5316
  end
@@ -4958,6 +5335,7 @@ module Aws::S3
4958
5335
  # key: "ObjectKey", # required
4959
5336
  # version_id: "ObjectVersionId",
4960
5337
  # request_payer: "requester", # accepts requester
5338
+ # expected_bucket_owner: "AccountId",
4961
5339
  # }
4962
5340
  #
4963
5341
  # @!attribute [rw] bucket
@@ -5000,13 +5378,20 @@ module Aws::S3
5000
5378
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
5001
5379
  # @return [String]
5002
5380
  #
5381
+ # @!attribute [rw] expected_bucket_owner
5382
+ # The account id of the expected bucket owner. If the bucket is owned
5383
+ # by a different account, the request will fail with an HTTP `403
5384
+ # (Access Denied)` error.
5385
+ # @return [String]
5386
+ #
5003
5387
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetentionRequest AWS API Documentation
5004
5388
  #
5005
5389
  class GetObjectRetentionRequest < Struct.new(
5006
5390
  :bucket,
5007
5391
  :key,
5008
5392
  :version_id,
5009
- :request_payer)
5393
+ :request_payer,
5394
+ :expected_bucket_owner)
5010
5395
  SENSITIVE = []
5011
5396
  include Aws::Structure
5012
5397
  end
@@ -5036,6 +5421,7 @@ module Aws::S3
5036
5421
  # bucket: "BucketName", # required
5037
5422
  # key: "ObjectKey", # required
5038
5423
  # version_id: "ObjectVersionId",
5424
+ # expected_bucket_owner: "AccountId",
5039
5425
  # }
5040
5426
  #
5041
5427
  # @!attribute [rw] bucket
@@ -5065,12 +5451,19 @@ module Aws::S3
5065
5451
  # information.
5066
5452
  # @return [String]
5067
5453
  #
5454
+ # @!attribute [rw] expected_bucket_owner
5455
+ # The account id of the expected bucket owner. If the bucket is owned
5456
+ # by a different account, the request will fail with an HTTP `403
5457
+ # (Access Denied)` error.
5458
+ # @return [String]
5459
+ #
5068
5460
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTaggingRequest AWS API Documentation
5069
5461
  #
5070
5462
  class GetObjectTaggingRequest < Struct.new(
5071
5463
  :bucket,
5072
5464
  :key,
5073
- :version_id)
5465
+ :version_id,
5466
+ :expected_bucket_owner)
5074
5467
  SENSITIVE = []
5075
5468
  include Aws::Structure
5076
5469
  end
@@ -5100,6 +5493,7 @@ module Aws::S3
5100
5493
  # bucket: "BucketName", # required
5101
5494
  # key: "ObjectKey", # required
5102
5495
  # request_payer: "requester", # accepts requester
5496
+ # expected_bucket_owner: "AccountId",
5103
5497
  # }
5104
5498
  #
5105
5499
  # @!attribute [rw] bucket
@@ -5123,12 +5517,19 @@ module Aws::S3
5123
5517
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
5124
5518
  # @return [String]
5125
5519
  #
5520
+ # @!attribute [rw] expected_bucket_owner
5521
+ # The account id of the expected bucket owner. If the bucket is owned
5522
+ # by a different account, the request will fail with an HTTP `403
5523
+ # (Access Denied)` error.
5524
+ # @return [String]
5525
+ #
5126
5526
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrentRequest AWS API Documentation
5127
5527
  #
5128
5528
  class GetObjectTorrentRequest < Struct.new(
5129
5529
  :bucket,
5130
5530
  :key,
5131
- :request_payer)
5531
+ :request_payer,
5532
+ :expected_bucket_owner)
5132
5533
  SENSITIVE = []
5133
5534
  include Aws::Structure
5134
5535
  end
@@ -5151,6 +5552,7 @@ module Aws::S3
5151
5552
  #
5152
5553
  # {
5153
5554
  # bucket: "BucketName", # required
5555
+ # expected_bucket_owner: "AccountId",
5154
5556
  # }
5155
5557
  #
5156
5558
  # @!attribute [rw] bucket
@@ -5158,10 +5560,17 @@ module Aws::S3
5158
5560
  # configuration you want to retrieve.
5159
5561
  # @return [String]
5160
5562
  #
5563
+ # @!attribute [rw] expected_bucket_owner
5564
+ # The account id of the expected bucket owner. If the bucket is owned
5565
+ # by a different account, the request will fail with an HTTP `403
5566
+ # (Access Denied)` error.
5567
+ # @return [String]
5568
+ #
5161
5569
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlockRequest AWS API Documentation
5162
5570
  #
5163
5571
  class GetPublicAccessBlockRequest < Struct.new(
5164
- :bucket)
5572
+ :bucket,
5573
+ :expected_bucket_owner)
5165
5574
  SENSITIVE = []
5166
5575
  include Aws::Structure
5167
5576
  end
@@ -5298,16 +5707,24 @@ module Aws::S3
5298
5707
  #
5299
5708
  # {
5300
5709
  # bucket: "BucketName", # required
5710
+ # expected_bucket_owner: "AccountId",
5301
5711
  # }
5302
5712
  #
5303
5713
  # @!attribute [rw] bucket
5304
5714
  # The bucket name.
5305
5715
  # @return [String]
5306
5716
  #
5717
+ # @!attribute [rw] expected_bucket_owner
5718
+ # The account id of the expected bucket owner. If the bucket is owned
5719
+ # by a different account, the request will fail with an HTTP `403
5720
+ # (Access Denied)` error.
5721
+ # @return [String]
5722
+ #
5307
5723
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucketRequest AWS API Documentation
5308
5724
  #
5309
5725
  class HeadBucketRequest < Struct.new(
5310
- :bucket)
5726
+ :bucket,
5727
+ :expected_bucket_owner)
5311
5728
  SENSITIVE = []
5312
5729
  include Aws::Structure
5313
5730
  end
@@ -5332,8 +5749,8 @@ module Aws::S3
5332
5749
  # @!attribute [rw] restore
5333
5750
  # If the object is an archived object (an object whose storage class
5334
5751
  # is GLACIER), the response includes this header if either the archive
5335
- # restoration is in progress (see RestoreObject or an archive copy is
5336
- # already restored.
5752
+ # restoration is in progress (see [RestoreObject][1] or an archive
5753
+ # copy is already restored.
5337
5754
  #
5338
5755
  # If an archive copy is already restored, the header value indicates
5339
5756
  # when Amazon S3 is scheduled to delete the object copy. For example:
@@ -5345,11 +5762,12 @@ module Aws::S3
5345
5762
  # value `ongoing-request="true"`.
5346
5763
  #
5347
5764
  # For more information about archiving objects, see [Transitioning
5348
- # Objects: General Considerations][1].
5765
+ # Objects: General Considerations][2].
5349
5766
  #
5350
5767
  #
5351
5768
  #
5352
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations
5769
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
5770
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations
5353
5771
  # @return [String]
5354
5772
  #
5355
5773
  # @!attribute [rw] last_modified
@@ -5583,6 +6001,7 @@ module Aws::S3
5583
6001
  # sse_customer_key_md5: "SSECustomerKeyMD5",
5584
6002
  # request_payer: "requester", # accepts requester
5585
6003
  # part_number: 1,
6004
+ # expected_bucket_owner: "AccountId",
5586
6005
  # }
5587
6006
  #
5588
6007
  # @!attribute [rw] bucket
@@ -5638,7 +6057,7 @@ module Aws::S3
5638
6057
  # in encrypting data. This value is used to store the object and then
5639
6058
  # it is discarded; Amazon S3 does not store the encryption key. The
5640
6059
  # key must be appropriate for use with the algorithm specified in the
5641
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
6060
+ # `x-amz-server-side-encryption-customer-algorithm` header.
5642
6061
  # @return [String]
5643
6062
  #
5644
6063
  # @!attribute [rw] sse_customer_key_md5
@@ -5666,6 +6085,12 @@ module Aws::S3
5666
6085
  # and the number of parts in this object.
5667
6086
  # @return [Integer]
5668
6087
  #
6088
+ # @!attribute [rw] expected_bucket_owner
6089
+ # The account id of the expected bucket owner. If the bucket is owned
6090
+ # by a different account, the request will fail with an HTTP `403
6091
+ # (Access Denied)` error.
6092
+ # @return [String]
6093
+ #
5669
6094
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObjectRequest AWS API Documentation
5670
6095
  #
5671
6096
  class HeadObjectRequest < Struct.new(
@@ -5681,7 +6106,8 @@ module Aws::S3
5681
6106
  :sse_customer_key,
5682
6107
  :sse_customer_key_md5,
5683
6108
  :request_payer,
5684
- :part_number)
6109
+ :part_number,
6110
+ :expected_bucket_owner)
5685
6111
  SENSITIVE = [:sse_customer_key]
5686
6112
  include Aws::Structure
5687
6113
  end
@@ -6486,6 +6912,7 @@ module Aws::S3
6486
6912
  # {
6487
6913
  # bucket: "BucketName", # required
6488
6914
  # continuation_token: "Token",
6915
+ # expected_bucket_owner: "AccountId",
6489
6916
  # }
6490
6917
  #
6491
6918
  # @!attribute [rw] bucket
@@ -6498,11 +6925,18 @@ module Aws::S3
6498
6925
  # request should begin.
6499
6926
  # @return [String]
6500
6927
  #
6928
+ # @!attribute [rw] expected_bucket_owner
6929
+ # The account id of the expected bucket owner. If the bucket is owned
6930
+ # by a different account, the request will fail with an HTTP `403
6931
+ # (Access Denied)` error.
6932
+ # @return [String]
6933
+ #
6501
6934
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketAnalyticsConfigurationsRequest AWS API Documentation
6502
6935
  #
6503
6936
  class ListBucketAnalyticsConfigurationsRequest < Struct.new(
6504
6937
  :bucket,
6505
- :continuation_token)
6938
+ :continuation_token,
6939
+ :expected_bucket_owner)
6506
6940
  SENSITIVE = []
6507
6941
  include Aws::Structure
6508
6942
  end
@@ -6546,6 +6980,7 @@ module Aws::S3
6546
6980
  # {
6547
6981
  # bucket: "BucketName", # required
6548
6982
  # continuation_token: "Token",
6983
+ # expected_bucket_owner: "AccountId",
6549
6984
  # }
6550
6985
  #
6551
6986
  # @!attribute [rw] bucket
@@ -6560,11 +6995,18 @@ module Aws::S3
6560
6995
  # token is an opaque value that Amazon S3 understands.
6561
6996
  # @return [String]
6562
6997
  #
6998
+ # @!attribute [rw] expected_bucket_owner
6999
+ # The account id of the expected bucket owner. If the bucket is owned
7000
+ # by a different account, the request will fail with an HTTP `403
7001
+ # (Access Denied)` error.
7002
+ # @return [String]
7003
+ #
6563
7004
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketInventoryConfigurationsRequest AWS API Documentation
6564
7005
  #
6565
7006
  class ListBucketInventoryConfigurationsRequest < Struct.new(
6566
7007
  :bucket,
6567
- :continuation_token)
7008
+ :continuation_token,
7009
+ :expected_bucket_owner)
6568
7010
  SENSITIVE = []
6569
7011
  include Aws::Structure
6570
7012
  end
@@ -6610,6 +7052,7 @@ module Aws::S3
6610
7052
  # {
6611
7053
  # bucket: "BucketName", # required
6612
7054
  # continuation_token: "Token",
7055
+ # expected_bucket_owner: "AccountId",
6613
7056
  # }
6614
7057
  #
6615
7058
  # @!attribute [rw] bucket
@@ -6624,11 +7067,18 @@ module Aws::S3
6624
7067
  # continuation token is an opaque value that Amazon S3 understands.
6625
7068
  # @return [String]
6626
7069
  #
7070
+ # @!attribute [rw] expected_bucket_owner
7071
+ # The account id of the expected bucket owner. If the bucket is owned
7072
+ # by a different account, the request will fail with an HTTP `403
7073
+ # (Access Denied)` error.
7074
+ # @return [String]
7075
+ #
6627
7076
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketMetricsConfigurationsRequest AWS API Documentation
6628
7077
  #
6629
7078
  class ListBucketMetricsConfigurationsRequest < Struct.new(
6630
7079
  :bucket,
6631
- :continuation_token)
7080
+ :continuation_token,
7081
+ :expected_bucket_owner)
6632
7082
  SENSITIVE = []
6633
7083
  include Aws::Structure
6634
7084
  end
@@ -6751,6 +7201,7 @@ module Aws::S3
6751
7201
  # max_uploads: 1,
6752
7202
  # prefix: "Prefix",
6753
7203
  # upload_id_marker: "UploadIdMarker",
7204
+ # expected_bucket_owner: "AccountId",
6754
7205
  # }
6755
7206
  #
6756
7207
  # @!attribute [rw] bucket
@@ -6827,6 +7278,12 @@ module Aws::S3
6827
7278
  # the specified `upload-id-marker`.
6828
7279
  # @return [String]
6829
7280
  #
7281
+ # @!attribute [rw] expected_bucket_owner
7282
+ # The account id of the expected bucket owner. If the bucket is owned
7283
+ # by a different account, the request will fail with an HTTP `403
7284
+ # (Access Denied)` error.
7285
+ # @return [String]
7286
+ #
6830
7287
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListMultipartUploadsRequest AWS API Documentation
6831
7288
  #
6832
7289
  class ListMultipartUploadsRequest < Struct.new(
@@ -6836,7 +7293,8 @@ module Aws::S3
6836
7293
  :key_marker,
6837
7294
  :max_uploads,
6838
7295
  :prefix,
6839
- :upload_id_marker)
7296
+ :upload_id_marker,
7297
+ :expected_bucket_owner)
6840
7298
  SENSITIVE = []
6841
7299
  include Aws::Structure
6842
7300
  end
@@ -6948,6 +7406,7 @@ module Aws::S3
6948
7406
  # max_keys: 1,
6949
7407
  # prefix: "Prefix",
6950
7408
  # version_id_marker: "VersionIdMarker",
7409
+ # expected_bucket_owner: "AccountId",
6951
7410
  # }
6952
7411
  #
6953
7412
  # @!attribute [rw] bucket
@@ -7012,6 +7471,12 @@ module Aws::S3
7012
7471
  # Specifies the object version you want to start listing from.
7013
7472
  # @return [String]
7014
7473
  #
7474
+ # @!attribute [rw] expected_bucket_owner
7475
+ # The account id of the expected bucket owner. If the bucket is owned
7476
+ # by a different account, the request will fail with an HTTP `403
7477
+ # (Access Denied)` error.
7478
+ # @return [String]
7479
+ #
7015
7480
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectVersionsRequest AWS API Documentation
7016
7481
  #
7017
7482
  class ListObjectVersionsRequest < Struct.new(
@@ -7021,7 +7486,8 @@ module Aws::S3
7021
7486
  :key_marker,
7022
7487
  :max_keys,
7023
7488
  :prefix,
7024
- :version_id_marker)
7489
+ :version_id_marker,
7490
+ :expected_bucket_owner)
7025
7491
  SENSITIVE = []
7026
7492
  include Aws::Structure
7027
7493
  end
@@ -7123,6 +7589,7 @@ module Aws::S3
7123
7589
  # max_keys: 1,
7124
7590
  # prefix: "Prefix",
7125
7591
  # request_payer: "requester", # accepts requester
7592
+ # expected_bucket_owner: "AccountId",
7126
7593
  # }
7127
7594
  #
7128
7595
  # @!attribute [rw] bucket
@@ -7162,6 +7629,12 @@ module Aws::S3
7162
7629
  # parameter in their requests.
7163
7630
  # @return [String]
7164
7631
  #
7632
+ # @!attribute [rw] expected_bucket_owner
7633
+ # The account id of the expected bucket owner. If the bucket is owned
7634
+ # by a different account, the request will fail with an HTTP `403
7635
+ # (Access Denied)` error.
7636
+ # @return [String]
7637
+ #
7165
7638
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsRequest AWS API Documentation
7166
7639
  #
7167
7640
  class ListObjectsRequest < Struct.new(
@@ -7171,7 +7644,8 @@ module Aws::S3
7171
7644
  :marker,
7172
7645
  :max_keys,
7173
7646
  :prefix,
7174
- :request_payer)
7647
+ :request_payer,
7648
+ :expected_bucket_owner)
7175
7649
  SENSITIVE = []
7176
7650
  include Aws::Structure
7177
7651
  end
@@ -7308,6 +7782,7 @@ module Aws::S3
7308
7782
  # fetch_owner: false,
7309
7783
  # start_after: "StartAfter",
7310
7784
  # request_payer: "requester", # accepts requester
7785
+ # expected_bucket_owner: "AccountId",
7311
7786
  # }
7312
7787
  #
7313
7788
  # @!attribute [rw] bucket
@@ -7370,6 +7845,12 @@ module Aws::S3
7370
7845
  # this parameter in their requests.
7371
7846
  # @return [String]
7372
7847
  #
7848
+ # @!attribute [rw] expected_bucket_owner
7849
+ # The account id of the expected bucket owner. If the bucket is owned
7850
+ # by a different account, the request will fail with an HTTP `403
7851
+ # (Access Denied)` error.
7852
+ # @return [String]
7853
+ #
7373
7854
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsV2Request AWS API Documentation
7374
7855
  #
7375
7856
  class ListObjectsV2Request < Struct.new(
@@ -7381,7 +7862,8 @@ module Aws::S3
7381
7862
  :continuation_token,
7382
7863
  :fetch_owner,
7383
7864
  :start_after,
7384
- :request_payer)
7865
+ :request_payer,
7866
+ :expected_bucket_owner)
7385
7867
  SENSITIVE = []
7386
7868
  include Aws::Structure
7387
7869
  end
@@ -7505,6 +7987,7 @@ module Aws::S3
7505
7987
  # part_number_marker: 1,
7506
7988
  # upload_id: "MultipartUploadId", # required
7507
7989
  # request_payer: "requester", # accepts requester
7990
+ # expected_bucket_owner: "AccountId",
7508
7991
  # }
7509
7992
  #
7510
7993
  # @!attribute [rw] bucket
@@ -7554,6 +8037,12 @@ module Aws::S3
7554
8037
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
7555
8038
  # @return [String]
7556
8039
  #
8040
+ # @!attribute [rw] expected_bucket_owner
8041
+ # The account id of the expected bucket owner. If the bucket is owned
8042
+ # by a different account, the request will fail with an HTTP `403
8043
+ # (Access Denied)` error.
8044
+ # @return [String]
8045
+ #
7557
8046
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListPartsRequest AWS API Documentation
7558
8047
  #
7559
8048
  class ListPartsRequest < Struct.new(
@@ -7562,7 +8051,8 @@ module Aws::S3
7562
8051
  :max_parts,
7563
8052
  :part_number_marker,
7564
8053
  :upload_id,
7565
- :request_payer)
8054
+ :request_payer,
8055
+ :expected_bucket_owner)
7566
8056
  SENSITIVE = []
7567
8057
  include Aws::Structure
7568
8058
  end
@@ -8682,6 +9172,7 @@ module Aws::S3
8682
9172
  # accelerate_configuration: { # required
8683
9173
  # status: "Enabled", # accepts Enabled, Suspended
8684
9174
  # },
9175
+ # expected_bucket_owner: "AccountId",
8685
9176
  # }
8686
9177
  #
8687
9178
  # @!attribute [rw] bucket
@@ -8692,11 +9183,18 @@ module Aws::S3
8692
9183
  # Container for setting the transfer acceleration state.
8693
9184
  # @return [Types::AccelerateConfiguration]
8694
9185
  #
9186
+ # @!attribute [rw] expected_bucket_owner
9187
+ # The account id of the expected bucket owner. If the bucket is owned
9188
+ # by a different account, the request will fail with an HTTP `403
9189
+ # (Access Denied)` error.
9190
+ # @return [String]
9191
+ #
8695
9192
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfigurationRequest AWS API Documentation
8696
9193
  #
8697
9194
  class PutBucketAccelerateConfigurationRequest < Struct.new(
8698
9195
  :bucket,
8699
- :accelerate_configuration)
9196
+ :accelerate_configuration,
9197
+ :expected_bucket_owner)
8700
9198
  SENSITIVE = []
8701
9199
  include Aws::Structure
8702
9200
  end
@@ -8731,6 +9229,7 @@ module Aws::S3
8731
9229
  # grant_read_acp: "GrantReadACP",
8732
9230
  # grant_write: "GrantWrite",
8733
9231
  # grant_write_acp: "GrantWriteACP",
9232
+ # expected_bucket_owner: "AccountId",
8734
9233
  # }
8735
9234
  #
8736
9235
  # @!attribute [rw] acl
@@ -8779,6 +9278,12 @@ module Aws::S3
8779
9278
  # Allows grantee to write the ACL for the applicable bucket.
8780
9279
  # @return [String]
8781
9280
  #
9281
+ # @!attribute [rw] expected_bucket_owner
9282
+ # The account id of the expected bucket owner. If the bucket is owned
9283
+ # by a different account, the request will fail with an HTTP `403
9284
+ # (Access Denied)` error.
9285
+ # @return [String]
9286
+ #
8782
9287
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAclRequest AWS API Documentation
8783
9288
  #
8784
9289
  class PutBucketAclRequest < Struct.new(
@@ -8790,7 +9295,8 @@ module Aws::S3
8790
9295
  :grant_read,
8791
9296
  :grant_read_acp,
8792
9297
  :grant_write,
8793
- :grant_write_acp)
9298
+ :grant_write_acp,
9299
+ :expected_bucket_owner)
8794
9300
  SENSITIVE = []
8795
9301
  include Aws::Structure
8796
9302
  end
@@ -8833,6 +9339,7 @@ module Aws::S3
8833
9339
  # },
8834
9340
  # },
8835
9341
  # },
9342
+ # expected_bucket_owner: "AccountId",
8836
9343
  # }
8837
9344
  #
8838
9345
  # @!attribute [rw] bucket
@@ -8848,12 +9355,19 @@ module Aws::S3
8848
9355
  # The configuration and any analyses for the analytics filter.
8849
9356
  # @return [Types::AnalyticsConfiguration]
8850
9357
  #
9358
+ # @!attribute [rw] expected_bucket_owner
9359
+ # The account id of the expected bucket owner. If the bucket is owned
9360
+ # by a different account, the request will fail with an HTTP `403
9361
+ # (Access Denied)` error.
9362
+ # @return [String]
9363
+ #
8851
9364
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAnalyticsConfigurationRequest AWS API Documentation
8852
9365
  #
8853
9366
  class PutBucketAnalyticsConfigurationRequest < Struct.new(
8854
9367
  :bucket,
8855
9368
  :id,
8856
- :analytics_configuration)
9369
+ :analytics_configuration,
9370
+ :expected_bucket_owner)
8857
9371
  SENSITIVE = []
8858
9372
  include Aws::Structure
8859
9373
  end
@@ -8875,6 +9389,7 @@ module Aws::S3
8875
9389
  # ],
8876
9390
  # },
8877
9391
  # content_md5: "ContentMD5",
9392
+ # expected_bucket_owner: "AccountId",
8878
9393
  # }
8879
9394
  #
8880
9395
  # @!attribute [rw] bucket
@@ -8903,12 +9418,19 @@ module Aws::S3
8903
9418
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
8904
9419
  # @return [String]
8905
9420
  #
9421
+ # @!attribute [rw] expected_bucket_owner
9422
+ # The account id of the expected bucket owner. If the bucket is owned
9423
+ # by a different account, the request will fail with an HTTP `403
9424
+ # (Access Denied)` error.
9425
+ # @return [String]
9426
+ #
8906
9427
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketCorsRequest AWS API Documentation
8907
9428
  #
8908
9429
  class PutBucketCorsRequest < Struct.new(
8909
9430
  :bucket,
8910
9431
  :cors_configuration,
8911
- :content_md5)
9432
+ :content_md5,
9433
+ :expected_bucket_owner)
8912
9434
  SENSITIVE = []
8913
9435
  include Aws::Structure
8914
9436
  end
@@ -8929,6 +9451,7 @@ module Aws::S3
8929
9451
  # },
8930
9452
  # ],
8931
9453
  # },
9454
+ # expected_bucket_owner: "AccountId",
8932
9455
  # }
8933
9456
  #
8934
9457
  # @!attribute [rw] bucket
@@ -8954,12 +9477,19 @@ module Aws::S3
8954
9477
  # Specifies the default server-side-encryption configuration.
8955
9478
  # @return [Types::ServerSideEncryptionConfiguration]
8956
9479
  #
9480
+ # @!attribute [rw] expected_bucket_owner
9481
+ # The account id of the expected bucket owner. If the bucket is owned
9482
+ # by a different account, the request will fail with an HTTP `403
9483
+ # (Access Denied)` error.
9484
+ # @return [String]
9485
+ #
8957
9486
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryptionRequest AWS API Documentation
8958
9487
  #
8959
9488
  class PutBucketEncryptionRequest < Struct.new(
8960
9489
  :bucket,
8961
9490
  :content_md5,
8962
- :server_side_encryption_configuration)
9491
+ :server_side_encryption_configuration,
9492
+ :expected_bucket_owner)
8963
9493
  SENSITIVE = []
8964
9494
  include Aws::Structure
8965
9495
  end
@@ -8997,6 +9527,7 @@ module Aws::S3
8997
9527
  # frequency: "Daily", # required, accepts Daily, Weekly
8998
9528
  # },
8999
9529
  # },
9530
+ # expected_bucket_owner: "AccountId",
9000
9531
  # }
9001
9532
  #
9002
9533
  # @!attribute [rw] bucket
@@ -9012,12 +9543,19 @@ module Aws::S3
9012
9543
  # Specifies the inventory configuration.
9013
9544
  # @return [Types::InventoryConfiguration]
9014
9545
  #
9546
+ # @!attribute [rw] expected_bucket_owner
9547
+ # The account id of the expected bucket owner. If the bucket is owned
9548
+ # by a different account, the request will fail with an HTTP `403
9549
+ # (Access Denied)` error.
9550
+ # @return [String]
9551
+ #
9015
9552
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketInventoryConfigurationRequest AWS API Documentation
9016
9553
  #
9017
9554
  class PutBucketInventoryConfigurationRequest < Struct.new(
9018
9555
  :bucket,
9019
9556
  :id,
9020
- :inventory_configuration)
9557
+ :inventory_configuration,
9558
+ :expected_bucket_owner)
9021
9559
  SENSITIVE = []
9022
9560
  include Aws::Structure
9023
9561
  end
@@ -9076,6 +9614,7 @@ module Aws::S3
9076
9614
  # },
9077
9615
  # ],
9078
9616
  # },
9617
+ # expected_bucket_owner: "AccountId",
9079
9618
  # }
9080
9619
  #
9081
9620
  # @!attribute [rw] bucket
@@ -9086,11 +9625,18 @@ module Aws::S3
9086
9625
  # Container for lifecycle rules. You can add as many as 1,000 rules.
9087
9626
  # @return [Types::BucketLifecycleConfiguration]
9088
9627
  #
9628
+ # @!attribute [rw] expected_bucket_owner
9629
+ # The account id of the expected bucket owner. If the bucket is owned
9630
+ # by a different account, the request will fail with an HTTP `403
9631
+ # (Access Denied)` error.
9632
+ # @return [String]
9633
+ #
9089
9634
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfigurationRequest AWS API Documentation
9090
9635
  #
9091
9636
  class PutBucketLifecycleConfigurationRequest < Struct.new(
9092
9637
  :bucket,
9093
- :lifecycle_configuration)
9638
+ :lifecycle_configuration,
9639
+ :expected_bucket_owner)
9094
9640
  SENSITIVE = []
9095
9641
  include Aws::Structure
9096
9642
  end
@@ -9130,6 +9676,7 @@ module Aws::S3
9130
9676
  # },
9131
9677
  # ],
9132
9678
  # },
9679
+ # expected_bucket_owner: "AccountId",
9133
9680
  # }
9134
9681
  #
9135
9682
  # @!attribute [rw] bucket
@@ -9141,12 +9688,19 @@ module Aws::S3
9141
9688
  # @!attribute [rw] lifecycle_configuration
9142
9689
  # @return [Types::LifecycleConfiguration]
9143
9690
  #
9691
+ # @!attribute [rw] expected_bucket_owner
9692
+ # The account id of the expected bucket owner. If the bucket is owned
9693
+ # by a different account, the request will fail with an HTTP `403
9694
+ # (Access Denied)` error.
9695
+ # @return [String]
9696
+ #
9144
9697
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleRequest AWS API Documentation
9145
9698
  #
9146
9699
  class PutBucketLifecycleRequest < Struct.new(
9147
9700
  :bucket,
9148
9701
  :content_md5,
9149
- :lifecycle_configuration)
9702
+ :lifecycle_configuration,
9703
+ :expected_bucket_owner)
9150
9704
  SENSITIVE = []
9151
9705
  include Aws::Structure
9152
9706
  end
@@ -9175,6 +9729,7 @@ module Aws::S3
9175
9729
  # },
9176
9730
  # },
9177
9731
  # content_md5: "ContentMD5",
9732
+ # expected_bucket_owner: "AccountId",
9178
9733
  # }
9179
9734
  #
9180
9735
  # @!attribute [rw] bucket
@@ -9189,12 +9744,19 @@ module Aws::S3
9189
9744
  # The MD5 hash of the `PutBucketLogging` request body.
9190
9745
  # @return [String]
9191
9746
  #
9747
+ # @!attribute [rw] expected_bucket_owner
9748
+ # The account id of the expected bucket owner. If the bucket is owned
9749
+ # by a different account, the request will fail with an HTTP `403
9750
+ # (Access Denied)` error.
9751
+ # @return [String]
9752
+ #
9192
9753
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLoggingRequest AWS API Documentation
9193
9754
  #
9194
9755
  class PutBucketLoggingRequest < Struct.new(
9195
9756
  :bucket,
9196
9757
  :bucket_logging_status,
9197
- :content_md5)
9758
+ :content_md5,
9759
+ :expected_bucket_owner)
9198
9760
  SENSITIVE = []
9199
9761
  include Aws::Structure
9200
9762
  end
@@ -9224,6 +9786,7 @@ module Aws::S3
9224
9786
  # },
9225
9787
  # },
9226
9788
  # },
9789
+ # expected_bucket_owner: "AccountId",
9227
9790
  # }
9228
9791
  #
9229
9792
  # @!attribute [rw] bucket
@@ -9238,12 +9801,19 @@ module Aws::S3
9238
9801
  # Specifies the metrics configuration.
9239
9802
  # @return [Types::MetricsConfiguration]
9240
9803
  #
9804
+ # @!attribute [rw] expected_bucket_owner
9805
+ # The account id of the expected bucket owner. If the bucket is owned
9806
+ # by a different account, the request will fail with an HTTP `403
9807
+ # (Access Denied)` error.
9808
+ # @return [String]
9809
+ #
9241
9810
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketMetricsConfigurationRequest AWS API Documentation
9242
9811
  #
9243
9812
  class PutBucketMetricsConfigurationRequest < Struct.new(
9244
9813
  :bucket,
9245
9814
  :id,
9246
- :metrics_configuration)
9815
+ :metrics_configuration,
9816
+ :expected_bucket_owner)
9247
9817
  SENSITIVE = []
9248
9818
  include Aws::Structure
9249
9819
  end
@@ -9306,6 +9876,7 @@ module Aws::S3
9306
9876
  # },
9307
9877
  # ],
9308
9878
  # },
9879
+ # expected_bucket_owner: "AccountId",
9309
9880
  # }
9310
9881
  #
9311
9882
  # @!attribute [rw] bucket
@@ -9318,11 +9889,18 @@ module Aws::S3
9318
9889
  # the bucket.
9319
9890
  # @return [Types::NotificationConfiguration]
9320
9891
  #
9892
+ # @!attribute [rw] expected_bucket_owner
9893
+ # The account id of the expected bucket owner. If the bucket is owned
9894
+ # by a different account, the request will fail with an HTTP `403
9895
+ # (Access Denied)` error.
9896
+ # @return [String]
9897
+ #
9321
9898
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfigurationRequest AWS API Documentation
9322
9899
  #
9323
9900
  class PutBucketNotificationConfigurationRequest < Struct.new(
9324
9901
  :bucket,
9325
- :notification_configuration)
9902
+ :notification_configuration,
9903
+ :expected_bucket_owner)
9326
9904
  SENSITIVE = []
9327
9905
  include Aws::Structure
9328
9906
  end
@@ -9354,6 +9932,7 @@ module Aws::S3
9354
9932
  # invocation_role: "CloudFunctionInvocationRole",
9355
9933
  # },
9356
9934
  # },
9935
+ # expected_bucket_owner: "AccountId",
9357
9936
  # }
9358
9937
  #
9359
9938
  # @!attribute [rw] bucket
@@ -9368,12 +9947,19 @@ module Aws::S3
9368
9947
  # The container for the configuration.
9369
9948
  # @return [Types::NotificationConfigurationDeprecated]
9370
9949
  #
9950
+ # @!attribute [rw] expected_bucket_owner
9951
+ # The account id of the expected bucket owner. If the bucket is owned
9952
+ # by a different account, the request will fail with an HTTP `403
9953
+ # (Access Denied)` error.
9954
+ # @return [String]
9955
+ #
9371
9956
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationRequest AWS API Documentation
9372
9957
  #
9373
9958
  class PutBucketNotificationRequest < Struct.new(
9374
9959
  :bucket,
9375
9960
  :content_md5,
9376
- :notification_configuration)
9961
+ :notification_configuration,
9962
+ :expected_bucket_owner)
9377
9963
  SENSITIVE = []
9378
9964
  include Aws::Structure
9379
9965
  end
@@ -9386,6 +9972,7 @@ module Aws::S3
9386
9972
  # content_md5: "ContentMD5",
9387
9973
  # confirm_remove_self_bucket_access: false,
9388
9974
  # policy: "Policy", # required
9975
+ # expected_bucket_owner: "AccountId",
9389
9976
  # }
9390
9977
  #
9391
9978
  # @!attribute [rw] bucket
@@ -9405,13 +9992,20 @@ module Aws::S3
9405
9992
  # The bucket policy as a JSON document.
9406
9993
  # @return [String]
9407
9994
  #
9995
+ # @!attribute [rw] expected_bucket_owner
9996
+ # The account id of the expected bucket owner. If the bucket is owned
9997
+ # by a different account, the request will fail with an HTTP `403
9998
+ # (Access Denied)` error.
9999
+ # @return [String]
10000
+ #
9408
10001
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketPolicyRequest AWS API Documentation
9409
10002
  #
9410
10003
  class PutBucketPolicyRequest < Struct.new(
9411
10004
  :bucket,
9412
10005
  :content_md5,
9413
10006
  :confirm_remove_self_bucket_access,
9414
- :policy)
10007
+ :policy,
10008
+ :expected_bucket_owner)
9415
10009
  SENSITIVE = []
9416
10010
  include Aws::Structure
9417
10011
  end
@@ -9484,6 +10078,7 @@ module Aws::S3
9484
10078
  # ],
9485
10079
  # },
9486
10080
  # token: "ObjectLockToken",
10081
+ # expected_bucket_owner: "AccountId",
9487
10082
  # }
9488
10083
  #
9489
10084
  # @!attribute [rw] bucket
@@ -9509,13 +10104,20 @@ module Aws::S3
9509
10104
  # @!attribute [rw] token
9510
10105
  # @return [String]
9511
10106
  #
10107
+ # @!attribute [rw] expected_bucket_owner
10108
+ # The account id of the expected bucket owner. If the bucket is owned
10109
+ # by a different account, the request will fail with an HTTP `403
10110
+ # (Access Denied)` error.
10111
+ # @return [String]
10112
+ #
9512
10113
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplicationRequest AWS API Documentation
9513
10114
  #
9514
10115
  class PutBucketReplicationRequest < Struct.new(
9515
10116
  :bucket,
9516
10117
  :content_md5,
9517
10118
  :replication_configuration,
9518
- :token)
10119
+ :token,
10120
+ :expected_bucket_owner)
9519
10121
  SENSITIVE = []
9520
10122
  include Aws::Structure
9521
10123
  end
@@ -9529,6 +10131,7 @@ module Aws::S3
9529
10131
  # request_payment_configuration: { # required
9530
10132
  # payer: "Requester", # required, accepts Requester, BucketOwner
9531
10133
  # },
10134
+ # expected_bucket_owner: "AccountId",
9532
10135
  # }
9533
10136
  #
9534
10137
  # @!attribute [rw] bucket
@@ -9550,12 +10153,19 @@ module Aws::S3
9550
10153
  # Container for Payer.
9551
10154
  # @return [Types::RequestPaymentConfiguration]
9552
10155
  #
10156
+ # @!attribute [rw] expected_bucket_owner
10157
+ # The account id of the expected bucket owner. If the bucket is owned
10158
+ # by a different account, the request will fail with an HTTP `403
10159
+ # (Access Denied)` error.
10160
+ # @return [String]
10161
+ #
9553
10162
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketRequestPaymentRequest AWS API Documentation
9554
10163
  #
9555
10164
  class PutBucketRequestPaymentRequest < Struct.new(
9556
10165
  :bucket,
9557
10166
  :content_md5,
9558
- :request_payment_configuration)
10167
+ :request_payment_configuration,
10168
+ :expected_bucket_owner)
9559
10169
  SENSITIVE = []
9560
10170
  include Aws::Structure
9561
10171
  end
@@ -9574,6 +10184,7 @@ module Aws::S3
9574
10184
  # },
9575
10185
  # ],
9576
10186
  # },
10187
+ # expected_bucket_owner: "AccountId",
9577
10188
  # }
9578
10189
  #
9579
10190
  # @!attribute [rw] bucket
@@ -9595,12 +10206,19 @@ module Aws::S3
9595
10206
  # Container for the `TagSet` and `Tag` elements.
9596
10207
  # @return [Types::Tagging]
9597
10208
  #
10209
+ # @!attribute [rw] expected_bucket_owner
10210
+ # The account id of the expected bucket owner. If the bucket is owned
10211
+ # by a different account, the request will fail with an HTTP `403
10212
+ # (Access Denied)` error.
10213
+ # @return [String]
10214
+ #
9598
10215
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketTaggingRequest AWS API Documentation
9599
10216
  #
9600
10217
  class PutBucketTaggingRequest < Struct.new(
9601
10218
  :bucket,
9602
10219
  :content_md5,
9603
- :tagging)
10220
+ :tagging,
10221
+ :expected_bucket_owner)
9604
10222
  SENSITIVE = []
9605
10223
  include Aws::Structure
9606
10224
  end
@@ -9616,6 +10234,7 @@ module Aws::S3
9616
10234
  # mfa_delete: "Enabled", # accepts Enabled, Disabled
9617
10235
  # status: "Enabled", # accepts Enabled, Suspended
9618
10236
  # },
10237
+ # expected_bucket_owner: "AccountId",
9619
10238
  # }
9620
10239
  #
9621
10240
  # @!attribute [rw] bucket
@@ -9643,13 +10262,20 @@ module Aws::S3
9643
10262
  # Container for setting the versioning state.
9644
10263
  # @return [Types::VersioningConfiguration]
9645
10264
  #
10265
+ # @!attribute [rw] expected_bucket_owner
10266
+ # The account id of the expected bucket owner. If the bucket is owned
10267
+ # by a different account, the request will fail with an HTTP `403
10268
+ # (Access Denied)` error.
10269
+ # @return [String]
10270
+ #
9646
10271
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioningRequest AWS API Documentation
9647
10272
  #
9648
10273
  class PutBucketVersioningRequest < Struct.new(
9649
10274
  :bucket,
9650
10275
  :content_md5,
9651
10276
  :mfa,
9652
- :versioning_configuration)
10277
+ :versioning_configuration,
10278
+ :expected_bucket_owner)
9653
10279
  SENSITIVE = []
9654
10280
  include Aws::Structure
9655
10281
  end
@@ -9687,6 +10313,7 @@ module Aws::S3
9687
10313
  # },
9688
10314
  # ],
9689
10315
  # },
10316
+ # expected_bucket_owner: "AccountId",
9690
10317
  # }
9691
10318
  #
9692
10319
  # @!attribute [rw] bucket
@@ -9708,12 +10335,19 @@ module Aws::S3
9708
10335
  # Container for the request.
9709
10336
  # @return [Types::WebsiteConfiguration]
9710
10337
  #
10338
+ # @!attribute [rw] expected_bucket_owner
10339
+ # The account id of the expected bucket owner. If the bucket is owned
10340
+ # by a different account, the request will fail with an HTTP `403
10341
+ # (Access Denied)` error.
10342
+ # @return [String]
10343
+ #
9711
10344
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsiteRequest AWS API Documentation
9712
10345
  #
9713
10346
  class PutBucketWebsiteRequest < Struct.new(
9714
10347
  :bucket,
9715
10348
  :content_md5,
9716
- :website_configuration)
10349
+ :website_configuration,
10350
+ :expected_bucket_owner)
9717
10351
  SENSITIVE = []
9718
10352
  include Aws::Structure
9719
10353
  end
@@ -9764,6 +10398,7 @@ module Aws::S3
9764
10398
  # key: "ObjectKey", # required
9765
10399
  # request_payer: "requester", # accepts requester
9766
10400
  # version_id: "ObjectVersionId",
10401
+ # expected_bucket_owner: "AccountId",
9767
10402
  # }
9768
10403
  #
9769
10404
  # @!attribute [rw] acl
@@ -9851,6 +10486,12 @@ module Aws::S3
9851
10486
  # VersionId used to reference a specific version of the object.
9852
10487
  # @return [String]
9853
10488
  #
10489
+ # @!attribute [rw] expected_bucket_owner
10490
+ # The account id of the expected bucket owner. If the bucket is owned
10491
+ # by a different account, the request will fail with an HTTP `403
10492
+ # (Access Denied)` error.
10493
+ # @return [String]
10494
+ #
9854
10495
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectAclRequest AWS API Documentation
9855
10496
  #
9856
10497
  class PutObjectAclRequest < Struct.new(
@@ -9865,7 +10506,8 @@ module Aws::S3
9865
10506
  :grant_write_acp,
9866
10507
  :key,
9867
10508
  :request_payer,
9868
- :version_id)
10509
+ :version_id,
10510
+ :expected_bucket_owner)
9869
10511
  SENSITIVE = []
9870
10512
  include Aws::Structure
9871
10513
  end
@@ -9895,6 +10537,7 @@ module Aws::S3
9895
10537
  # request_payer: "requester", # accepts requester
9896
10538
  # version_id: "ObjectVersionId",
9897
10539
  # content_md5: "ContentMD5",
10540
+ # expected_bucket_owner: "AccountId",
9898
10541
  # }
9899
10542
  #
9900
10543
  # @!attribute [rw] bucket
@@ -9944,6 +10587,12 @@ module Aws::S3
9944
10587
  # The MD5 hash for the request body.
9945
10588
  # @return [String]
9946
10589
  #
10590
+ # @!attribute [rw] expected_bucket_owner
10591
+ # The account id of the expected bucket owner. If the bucket is owned
10592
+ # by a different account, the request will fail with an HTTP `403
10593
+ # (Access Denied)` error.
10594
+ # @return [String]
10595
+ #
9947
10596
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHoldRequest AWS API Documentation
9948
10597
  #
9949
10598
  class PutObjectLegalHoldRequest < Struct.new(
@@ -9952,7 +10601,8 @@ module Aws::S3
9952
10601
  :legal_hold,
9953
10602
  :request_payer,
9954
10603
  :version_id,
9955
- :content_md5)
10604
+ :content_md5,
10605
+ :expected_bucket_owner)
9956
10606
  SENSITIVE = []
9957
10607
  include Aws::Structure
9958
10608
  end
@@ -9988,6 +10638,7 @@ module Aws::S3
9988
10638
  # request_payer: "requester", # accepts requester
9989
10639
  # token: "ObjectLockToken",
9990
10640
  # content_md5: "ContentMD5",
10641
+ # expected_bucket_owner: "AccountId",
9991
10642
  # }
9992
10643
  #
9993
10644
  # @!attribute [rw] bucket
@@ -10020,6 +10671,12 @@ module Aws::S3
10020
10671
  # The MD5 hash for the request body.
10021
10672
  # @return [String]
10022
10673
  #
10674
+ # @!attribute [rw] expected_bucket_owner
10675
+ # The account id of the expected bucket owner. If the bucket is owned
10676
+ # by a different account, the request will fail with an HTTP `403
10677
+ # (Access Denied)` error.
10678
+ # @return [String]
10679
+ #
10023
10680
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfigurationRequest AWS API Documentation
10024
10681
  #
10025
10682
  class PutObjectLockConfigurationRequest < Struct.new(
@@ -10027,17 +10684,22 @@ module Aws::S3
10027
10684
  :object_lock_configuration,
10028
10685
  :request_payer,
10029
10686
  :token,
10030
- :content_md5)
10687
+ :content_md5,
10688
+ :expected_bucket_owner)
10031
10689
  SENSITIVE = []
10032
10690
  include Aws::Structure
10033
10691
  end
10034
10692
 
10035
10693
  # @!attribute [rw] expiration
10036
10694
  # If the expiration is configured for the object (see
10037
- # PutBucketLifecycleConfiguration), the response includes this header.
10038
- # It includes the expiry-date and rule-id key-value pairs that provide
10039
- # information about object expiration. The value of the rule-id is URL
10040
- # encoded.
10695
+ # [PutBucketLifecycleConfiguration][1]), the response includes this
10696
+ # header. It includes the expiry-date and rule-id key-value pairs that
10697
+ # provide information about object expiration. The value of the
10698
+ # rule-id is URL encoded.
10699
+ #
10700
+ #
10701
+ #
10702
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html
10041
10703
  # @return [String]
10042
10704
  #
10043
10705
  # @!attribute [rw] etag
@@ -10139,6 +10801,7 @@ module Aws::S3
10139
10801
  # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
10140
10802
  # object_lock_retain_until_date: Time.now,
10141
10803
  # object_lock_legal_hold_status: "ON", # accepts ON, OFF
10804
+ # expected_bucket_owner: "AccountId",
10142
10805
  # }
10143
10806
  #
10144
10807
  # @!attribute [rw] acl
@@ -10325,7 +10988,7 @@ module Aws::S3
10325
10988
  # in encrypting data. This value is used to store the object and then
10326
10989
  # it is discarded; Amazon S3 does not store the encryption key. The
10327
10990
  # key must be appropriate for use with the algorithm specified in the
10328
- # `x-amz-server-side​-encryption​-customer-algorithm` header.
10991
+ # `x-amz-server-side-encryption-customer-algorithm` header.
10329
10992
  # @return [String]
10330
10993
  #
10331
10994
  # @!attribute [rw] sse_customer_key_md5
@@ -10389,6 +11052,12 @@ module Aws::S3
10389
11052
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
10390
11053
  # @return [String]
10391
11054
  #
11055
+ # @!attribute [rw] expected_bucket_owner
11056
+ # The account id of the expected bucket owner. If the bucket is owned
11057
+ # by a different account, the request will fail with an HTTP `403
11058
+ # (Access Denied)` error.
11059
+ # @return [String]
11060
+ #
10392
11061
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRequest AWS API Documentation
10393
11062
  #
10394
11063
  class PutObjectRequest < Struct.new(
@@ -10421,7 +11090,8 @@ module Aws::S3
10421
11090
  :tagging,
10422
11091
  :object_lock_mode,
10423
11092
  :object_lock_retain_until_date,
10424
- :object_lock_legal_hold_status)
11093
+ :object_lock_legal_hold_status,
11094
+ :expected_bucket_owner)
10425
11095
  SENSITIVE = [:sse_customer_key, :ssekms_key_id, :ssekms_encryption_context]
10426
11096
  include Aws::Structure
10427
11097
  end
@@ -10453,6 +11123,7 @@ module Aws::S3
10453
11123
  # version_id: "ObjectVersionId",
10454
11124
  # bypass_governance_retention: false,
10455
11125
  # content_md5: "ContentMD5",
11126
+ # expected_bucket_owner: "AccountId",
10456
11127
  # }
10457
11128
  #
10458
11129
  # @!attribute [rw] bucket
@@ -10508,6 +11179,12 @@ module Aws::S3
10508
11179
  # The MD5 hash for the request body.
10509
11180
  # @return [String]
10510
11181
  #
11182
+ # @!attribute [rw] expected_bucket_owner
11183
+ # The account id of the expected bucket owner. If the bucket is owned
11184
+ # by a different account, the request will fail with an HTTP `403
11185
+ # (Access Denied)` error.
11186
+ # @return [String]
11187
+ #
10511
11188
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetentionRequest AWS API Documentation
10512
11189
  #
10513
11190
  class PutObjectRetentionRequest < Struct.new(
@@ -10517,7 +11194,8 @@ module Aws::S3
10517
11194
  :request_payer,
10518
11195
  :version_id,
10519
11196
  :bypass_governance_retention,
10520
- :content_md5)
11197
+ :content_md5,
11198
+ :expected_bucket_owner)
10521
11199
  SENSITIVE = []
10522
11200
  include Aws::Structure
10523
11201
  end
@@ -10550,6 +11228,7 @@ module Aws::S3
10550
11228
  # },
10551
11229
  # ],
10552
11230
  # },
11231
+ # expected_bucket_owner: "AccountId",
10553
11232
  # }
10554
11233
  #
10555
11234
  # @!attribute [rw] bucket
@@ -10585,6 +11264,12 @@ module Aws::S3
10585
11264
  # Container for the `TagSet` and `Tag` elements
10586
11265
  # @return [Types::Tagging]
10587
11266
  #
11267
+ # @!attribute [rw] expected_bucket_owner
11268
+ # The account id of the expected bucket owner. If the bucket is owned
11269
+ # by a different account, the request will fail with an HTTP `403
11270
+ # (Access Denied)` error.
11271
+ # @return [String]
11272
+ #
10588
11273
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTaggingRequest AWS API Documentation
10589
11274
  #
10590
11275
  class PutObjectTaggingRequest < Struct.new(
@@ -10592,7 +11277,8 @@ module Aws::S3
10592
11277
  :key,
10593
11278
  :version_id,
10594
11279
  :content_md5,
10595
- :tagging)
11280
+ :tagging,
11281
+ :expected_bucket_owner)
10596
11282
  SENSITIVE = []
10597
11283
  include Aws::Structure
10598
11284
  end
@@ -10609,6 +11295,7 @@ module Aws::S3
10609
11295
  # block_public_policy: false,
10610
11296
  # restrict_public_buckets: false,
10611
11297
  # },
11298
+ # expected_bucket_owner: "AccountId",
10612
11299
  # }
10613
11300
  #
10614
11301
  # @!attribute [rw] bucket
@@ -10632,12 +11319,19 @@ module Aws::S3
10632
11319
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
10633
11320
  # @return [Types::PublicAccessBlockConfiguration]
10634
11321
  #
11322
+ # @!attribute [rw] expected_bucket_owner
11323
+ # The account id of the expected bucket owner. If the bucket is owned
11324
+ # by a different account, the request will fail with an HTTP `403
11325
+ # (Access Denied)` error.
11326
+ # @return [String]
11327
+ #
10635
11328
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlockRequest AWS API Documentation
10636
11329
  #
10637
11330
  class PutPublicAccessBlockRequest < Struct.new(
10638
11331
  :bucket,
10639
11332
  :content_md5,
10640
- :public_access_block_configuration)
11333
+ :public_access_block_configuration,
11334
+ :expected_bucket_owner)
10641
11335
  SENSITIVE = []
10642
11336
  include Aws::Structure
10643
11337
  end
@@ -10702,11 +11396,15 @@ module Aws::S3
10702
11396
  include Aws::Structure
10703
11397
  end
10704
11398
 
10705
- # This data type is deprecated. Use QueueConfiguration for the same
11399
+ # This data type is deprecated. Use [QueueConfiguration][1] for the same
10706
11400
  # purposes. This data type specifies the configuration for publishing
10707
11401
  # messages to an Amazon Simple Queue Service (Amazon SQS) queue when
10708
11402
  # Amazon S3 detects specified events.
10709
11403
  #
11404
+ #
11405
+ #
11406
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_QueueConfiguration.html
11407
+ #
10710
11408
  # @note When making an API call, you may pass QueueConfigurationDeprecated
10711
11409
  # data as a hash:
10712
11410
  #
@@ -11411,6 +12109,7 @@ module Aws::S3
11411
12109
  # },
11412
12110
  # },
11413
12111
  # request_payer: "requester", # accepts requester
12112
+ # expected_bucket_owner: "AccountId",
11414
12113
  # }
11415
12114
  #
11416
12115
  # @!attribute [rw] bucket
@@ -11454,6 +12153,12 @@ module Aws::S3
11454
12153
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
11455
12154
  # @return [String]
11456
12155
  #
12156
+ # @!attribute [rw] expected_bucket_owner
12157
+ # The account id of the expected bucket owner. If the bucket is owned
12158
+ # by a different account, the request will fail with an HTTP `403
12159
+ # (Access Denied)` error.
12160
+ # @return [String]
12161
+ #
11457
12162
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObjectRequest AWS API Documentation
11458
12163
  #
11459
12164
  class RestoreObjectRequest < Struct.new(
@@ -11461,7 +12166,8 @@ module Aws::S3
11461
12166
  :key,
11462
12167
  :version_id,
11463
12168
  :restore_request,
11464
- :request_payer)
12169
+ :request_payer,
12170
+ :expected_bucket_owner)
11465
12171
  SENSITIVE = []
11466
12172
  include Aws::Structure
11467
12173
  end
@@ -11597,7 +12303,14 @@ module Aws::S3
11597
12303
  include Aws::Structure
11598
12304
  end
11599
12305
 
11600
- # Specifies the redirect behavior and when a redirect is applied.
12306
+ # Specifies the redirect behavior and when a redirect is applied. For
12307
+ # more information about routing rules, see [Configuring advanced
12308
+ # conditional redirects][1] in the *Amazon Simple Storage Service
12309
+ # Developer Guide*.
12310
+ #
12311
+ #
12312
+ #
12313
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html#advanced-conditional-redirects
11601
12314
  #
11602
12315
  # @note When making an API call, you may pass RoutingRule
11603
12316
  # data as a hash:
@@ -12017,6 +12730,7 @@ module Aws::S3
12017
12730
  # start: 1,
12018
12731
  # end: 1,
12019
12732
  # },
12733
+ # expected_bucket_owner: "AccountId",
12020
12734
  # }
12021
12735
  #
12022
12736
  # @!attribute [rw] bucket
@@ -12098,6 +12812,12 @@ module Aws::S3
12098
12812
  # within the last 50 bytes of the file.
12099
12813
  # @return [Types::ScanRange]
12100
12814
  #
12815
+ # @!attribute [rw] expected_bucket_owner
12816
+ # The account id of the expected bucket owner. If the bucket is owned
12817
+ # by a different account, the request will fail with an HTTP `403
12818
+ # (Access Denied)` error.
12819
+ # @return [String]
12820
+ #
12101
12821
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectObjectContentRequest AWS API Documentation
12102
12822
  #
12103
12823
  class SelectObjectContentRequest < Struct.new(
@@ -12111,7 +12831,8 @@ module Aws::S3
12111
12831
  :request_progress,
12112
12832
  :input_serialization,
12113
12833
  :output_serialization,
12114
- :scan_range)
12834
+ :scan_range,
12835
+ :expected_bucket_owner)
12115
12836
  SENSITIVE = [:sse_customer_key]
12116
12837
  include Aws::Structure
12117
12838
  end
@@ -12614,7 +13335,11 @@ module Aws::S3
12614
13335
  # A container for specifying the configuration for publication of
12615
13336
  # messages to an Amazon Simple Notification Service (Amazon SNS) topic
12616
13337
  # when Amazon S3 detects specified events. This data type is deprecated.
12617
- # Use TopicConfiguration instead.
13338
+ # Use [TopicConfiguration][1] instead.
13339
+ #
13340
+ #
13341
+ #
13342
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_TopicConfiguration.html
12618
13343
  #
12619
13344
  # @note When making an API call, you may pass TopicConfigurationDeprecated
12620
13345
  # data as a hash:
@@ -12773,6 +13498,8 @@ module Aws::S3
12773
13498
  # copy_source_sse_customer_key: "CopySourceSSECustomerKey",
12774
13499
  # copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
12775
13500
  # request_payer: "requester", # accepts requester
13501
+ # expected_bucket_owner: "AccountId",
13502
+ # expected_source_bucket_owner: "AccountId",
12776
13503
  # }
12777
13504
  #
12778
13505
  # @!attribute [rw] bucket
@@ -12780,8 +13507,41 @@ module Aws::S3
12780
13507
  # @return [String]
12781
13508
  #
12782
13509
  # @!attribute [rw] copy_source
12783
- # The name of the source bucket and key name of the source object,
12784
- # separated by a slash (/). Must be URL-encoded.
13510
+ # Specifies the source object for the copy operation. You specify the
13511
+ # value in one of two formats, depending on whether you want to access
13512
+ # the source object through an [access point][1]\:
13513
+ #
13514
+ # * For objects not accessed through an access point, specify the name
13515
+ # of the source bucket and key of the source object, separated by a
13516
+ # slash (/). For example, to copy the object `reports/january.pdf`
13517
+ # from the bucket `awsexamplebucket`, use
13518
+ # `awsexamplebucket/reports/january.pdf`. The value must be URL
13519
+ # encoded.
13520
+ #
13521
+ # * For objects accessed through access points, specify the Amazon
13522
+ # Resource Name (ARN) of the object as accessed through the access
13523
+ # point, in the format
13524
+ # `arn:aws:s3:<Region>:<account-id>:accesspoint/<access-point-name>/object/<key>`.
13525
+ # For example, to copy the object `reports/january.pdf` through the
13526
+ # access point `my-access-point` owned by account `123456789012` in
13527
+ # Region `us-west-2`, use the URL encoding of
13528
+ # `arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf`.
13529
+ # The value must be URL encoded.
13530
+ #
13531
+ # <note markdown="1"> Amazon S3 supports copy operations using access points only when
13532
+ # the source and destination buckets are in the same AWS Region.
13533
+ #
13534
+ # </note>
13535
+ #
13536
+ # To copy a specific version of an object, append
13537
+ # `?versionId=<version-id>` to the value (for example,
13538
+ # `awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893`).
13539
+ # If you don't specify a version ID, Amazon S3 copies the latest
13540
+ # version of the source object.
13541
+ #
13542
+ #
13543
+ #
13544
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
12785
13545
  # @return [String]
12786
13546
  #
12787
13547
  # @!attribute [rw] copy_source_if_match
@@ -12835,8 +13595,8 @@ module Aws::S3
12835
13595
  # in encrypting data. This value is used to store the object and then
12836
13596
  # it is discarded; Amazon S3 does not store the encryption key. The
12837
13597
  # key must be appropriate for use with the algorithm specified in the
12838
- # `x-amz-server-side​-encryption​-customer-algorithm` header. This
12839
- # must be the same encryption key specified in the initiate multipart
13598
+ # `x-amz-server-side-encryption-customer-algorithm` header. This must
13599
+ # be the same encryption key specified in the initiate multipart
12840
13600
  # upload request.
12841
13601
  # @return [String]
12842
13602
  #
@@ -12875,6 +13635,18 @@ module Aws::S3
12875
13635
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
12876
13636
  # @return [String]
12877
13637
  #
13638
+ # @!attribute [rw] expected_bucket_owner
13639
+ # The account id of the expected destination bucket owner. If the
13640
+ # destination bucket is owned by a different account, the request will
13641
+ # fail with an HTTP `403 (Access Denied)` error.
13642
+ # @return [String]
13643
+ #
13644
+ # @!attribute [rw] expected_source_bucket_owner
13645
+ # The account id of the expected source bucket owner. If the source
13646
+ # bucket is owned by a different account, the request will fail with
13647
+ # an HTTP `403 (Access Denied)` error.
13648
+ # @return [String]
13649
+ #
12878
13650
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartCopyRequest AWS API Documentation
12879
13651
  #
12880
13652
  class UploadPartCopyRequest < Struct.new(
@@ -12894,7 +13666,9 @@ module Aws::S3
12894
13666
  :copy_source_sse_customer_algorithm,
12895
13667
  :copy_source_sse_customer_key,
12896
13668
  :copy_source_sse_customer_key_md5,
12897
- :request_payer)
13669
+ :request_payer,
13670
+ :expected_bucket_owner,
13671
+ :expected_source_bucket_owner)
12898
13672
  SENSITIVE = [:sse_customer_key, :copy_source_sse_customer_key]
12899
13673
  include Aws::Structure
12900
13674
  end
@@ -12960,6 +13734,7 @@ module Aws::S3
12960
13734
  # sse_customer_key: "SSECustomerKey",
12961
13735
  # sse_customer_key_md5: "SSECustomerKeyMD5",
12962
13736
  # request_payer: "requester", # accepts requester
13737
+ # expected_bucket_owner: "AccountId",
12963
13738
  # }
12964
13739
  #
12965
13740
  # @!attribute [rw] body
@@ -13005,8 +13780,8 @@ module Aws::S3
13005
13780
  # in encrypting data. This value is used to store the object and then
13006
13781
  # it is discarded; Amazon S3 does not store the encryption key. The
13007
13782
  # key must be appropriate for use with the algorithm specified in the
13008
- # `x-amz-server-side​-encryption​-customer-algorithm header`. This
13009
- # must be the same encryption key specified in the initiate multipart
13783
+ # `x-amz-server-side-encryption-customer-algorithm header`. This must
13784
+ # be the same encryption key specified in the initiate multipart
13010
13785
  # upload request.
13011
13786
  # @return [String]
13012
13787
  #
@@ -13028,6 +13803,12 @@ module Aws::S3
13028
13803
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
13029
13804
  # @return [String]
13030
13805
  #
13806
+ # @!attribute [rw] expected_bucket_owner
13807
+ # The account id of the expected bucket owner. If the bucket is owned
13808
+ # by a different account, the request will fail with an HTTP `403
13809
+ # (Access Denied)` error.
13810
+ # @return [String]
13811
+ #
13031
13812
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartRequest AWS API Documentation
13032
13813
  #
13033
13814
  class UploadPartRequest < Struct.new(
@@ -13041,7 +13822,8 @@ module Aws::S3
13041
13822
  :sse_customer_algorithm,
13042
13823
  :sse_customer_key,
13043
13824
  :sse_customer_key_md5,
13044
- :request_payer)
13825
+ :request_payer,
13826
+ :expected_bucket_owner)
13045
13827
  SENSITIVE = [:sse_customer_key]
13046
13828
  include Aws::Structure
13047
13829
  end