aws-sdk-s3 1.79.1 → 1.80.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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