aws-sdk-s3 1.96.2 → 1.100.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 242ed586795b4719f27d124b42faaa419bf14d4c5dc3b612db75583df4563685
4
- data.tar.gz: dadf398788037a0cd952f24aa0ff0e0f11de1a3af6223381c720effee0ca4bde
3
+ metadata.gz: 30aef56797764890a0f8928bde79b89bf5ee0aefc74048aca3288c7a9fef62d6
4
+ data.tar.gz: 6dd16669733df08806718df48e5910a8d2f65f8b163a0b1e2da6bf38416f16d0
5
5
  SHA512:
6
- metadata.gz: 1095e47c4edccb43eb079cfbc7dadb9b6fa077d7bf2344571041cede5e587ac70d76cecdef4f514890f5c576416ffd89d6ac07bd876559bb59a229a1bb0dc103
7
- data.tar.gz: 7df71120e7b7da8eee77f7df0fbe64a86f4452b137909578aee664d80c7126591b728b4a8efbaa8c367a102e6ab912b8cae961955dfa8fc2124aed82e0f1660f
6
+ metadata.gz: 150908a5c7a813838f01ff707ff0ace94014818c301c0b34763f08325604d04e3a2f98b34929ba6833536a78e594330a4c79fd64e05496c92fdde9e89b17394c
7
+ data.tar.gz: 7799e87d49616f30f9aa8ff3be5350c8e4e5ad4f9c8f53d2c75f0a8ae2458d86ced47c792917f18821ea22d124e7e55cd8213d3a917ceb3f9f23f4d298f760ad
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.100.0 (2021-08-27)
5
+ ------------------
6
+
7
+ * Feature - Documentation updates for Amazon S3.
8
+
9
+ 1.99.0 (2021-08-16)
10
+ ------------------
11
+
12
+ * Feature - Documentation updates for Amazon S3
13
+
14
+ 1.98.0 (2021-07-30)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.97.0 (2021-07-28)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.96.2 (2021-07-20)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.96.2
1
+ 1.100.0
@@ -315,8 +315,8 @@ module Aws::S3
315
315
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
316
316
  # @option options [Boolean] :bypass_governance_retention
317
317
  # Specifies whether you want to delete this object even if it has a
318
- # Governance-type Object Lock in place. You must have sufficient
319
- # permissions to perform this operation.
318
+ # Governance-type Object Lock in place. To use this header, you must
319
+ # have the `s3:PutBucketPublicAccessBlock` permission.
320
320
  # @option options [String] :expected_bucket_owner
321
321
  # The account ID of the expected bucket owner. If the bucket is owned by
322
322
  # a different account, the request will fail with an HTTP `403 (Access
@@ -515,18 +515,18 @@ module Aws::S3
515
515
  # ensure that the encryption key was transmitted without error.
516
516
  # @option options [String] :ssekms_key_id
517
517
  # If `x-amz-server-side-encryption` is present and has the value of
518
- # `aws:kms`, this header specifies the ID of the AWS Key Management
519
- # Service (AWS KMS) symmetrical customer managed customer master key
520
- # (CMK) that was used for the object. If you specify
521
- # `x-amz-server-side-encryption:aws:kms`, but do not provide`
522
- # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the AWS
523
- # managed CMK in AWS to protect the data. If the KMS key does not exist
524
- # in the same account issuing the command, you must use the full ARN and
525
- # not just the ID.
518
+ # `aws:kms`, this header specifies the ID of the Amazon Web Services Key
519
+ # Management Service (Amazon Web Services KMS) symmetrical customer
520
+ # managed customer master key (CMK) that was used for the object. If you
521
+ # specify `x-amz-server-side-encryption:aws:kms`, but do not provide`
522
+ # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
523
+ # Amazon Web Services managed CMK in Amazon Web Services to protect the
524
+ # data. If the KMS key does not exist in the same account issuing the
525
+ # command, you must use the full ARN and not just the ID.
526
526
  # @option options [String] :ssekms_encryption_context
527
- # Specifies the AWS KMS Encryption Context to use for object encryption.
528
- # The value of this header is a base64-encoded UTF-8 string holding JSON
529
- # with the encryption context key-value pairs.
527
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
528
+ # object encryption. The value of this header is a base64-encoded UTF-8
529
+ # string holding JSON with the encryption context key-value pairs.
530
530
  # @option options [Boolean] :bucket_key_enabled
531
531
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
532
532
  # encryption with server-side encryption using AWS KMS (SSE-KMS).
@@ -221,8 +221,9 @@ module Aws::S3
221
221
  # used as a message integrity check to verify that the request body was
222
222
  # not corrupted in transit. For more information, go to [RFC 1864.][1]
223
223
  #
224
- # For requests made using the AWS Command Line Interface (CLI) or AWS
225
- # SDKs, this field is calculated automatically.
224
+ # For requests made using the Amazon Web Services Command Line Interface
225
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
226
+ # automatically.
226
227
  #
227
228
  #
228
229
  #
@@ -224,8 +224,9 @@ module Aws::S3
224
224
  # used as a message integrity check to verify that the request body was
225
225
  # not corrupted in transit. For more information, go to [RFC 1864.][1]
226
226
  #
227
- # For requests made using the AWS Command Line Interface (CLI) or AWS
228
- # SDKs, this field is calculated automatically.
227
+ # For requests made using the Amazon Web Services Command Line Interface
228
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
229
+ # automatically.
229
230
  #
230
231
  #
231
232
  #
@@ -228,8 +228,9 @@ module Aws::S3
228
228
  # })
229
229
  # @param [Hash] options ({})
230
230
  # @option options [String] :content_md5
231
- # For requests made using the AWS Command Line Interface (CLI) or AWS
232
- # SDKs, this field is calculated automatically.
231
+ # For requests made using the Amazon Web Services Command Line Interface
232
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
233
+ # automatically.
233
234
  # @option options [Types::LifecycleConfiguration] :lifecycle_configuration
234
235
  # @option options [String] :expected_bucket_owner
235
236
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -210,8 +210,9 @@ module Aws::S3
210
210
  # @option options [String] :content_md5
211
211
  # The MD5 hash of the `PutBucketLogging` request body.
212
212
  #
213
- # For requests made using the AWS Command Line Interface (CLI) or AWS
214
- # SDKs, this field is calculated automatically.
213
+ # For requests made using the Amazon Web Services Command Line Interface
214
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
215
+ # automatically.
215
216
  # @option options [String] :expected_bucket_owner
216
217
  # The account ID of the expected bucket owner. If the bucket is owned by
217
218
  # a different account, the request will fail with an HTTP `403 (Access
@@ -48,8 +48,8 @@ module Aws::S3
48
48
  data[:queue_configurations]
49
49
  end
50
50
 
51
- # Describes the AWS Lambda functions to invoke and the events for which
52
- # to invoke them.
51
+ # Describes the Lambda functions to invoke and the events for which to
52
+ # invoke them.
53
53
  # @return [Array<Types::LambdaFunctionConfiguration>]
54
54
  def lambda_function_configurations
55
55
  data[:lambda_function_configurations]
@@ -203,8 +203,9 @@ module Aws::S3
203
203
  # @option options [String] :content_md5
204
204
  # The MD5 hash of the request body.
205
205
  #
206
- # For requests made using the AWS Command Line Interface (CLI) or AWS
207
- # SDKs, this field is calculated automatically.
206
+ # For requests made using the Amazon Web Services Command Line Interface
207
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
208
+ # automatically.
208
209
  # @option options [Boolean] :confirm_remove_self_bucket_access
209
210
  # Set this parameter to true to confirm that you want to remove your
210
211
  # permissions to change this bucket policy in the future.
@@ -189,8 +189,9 @@ module Aws::S3
189
189
  # header as a message integrity check to verify that the request body
190
190
  # was not corrupted in transit. For more information, see [RFC 1864][1].
191
191
  #
192
- # For requests made using the AWS Command Line Interface (CLI) or AWS
193
- # SDKs, this field is calculated automatically.
192
+ # For requests made using the Amazon Web Services Command Line Interface
193
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
194
+ # automatically.
194
195
  #
195
196
  #
196
197
  #
@@ -211,8 +211,9 @@ module Aws::S3
211
211
  # header as a message integrity check to verify that the request body
212
212
  # was not corrupted in transit. For more information, see [RFC 1864][1].
213
213
  #
214
- # For requests made using the AWS Command Line Interface (CLI) or AWS
215
- # SDKs, this field is calculated automatically.
214
+ # For requests made using the Amazon Web Services Command Line Interface
215
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
216
+ # automatically.
216
217
  #
217
218
  #
218
219
  #
@@ -197,8 +197,9 @@ module Aws::S3
197
197
  # body was not corrupted in transit. For more information, see [RFC
198
198
  # 1864][1].
199
199
  #
200
- # For requests made using the AWS Command Line Interface (CLI) or AWS
201
- # SDKs, this field is calculated automatically.
200
+ # For requests made using the Amazon Web Services Command Line Interface
201
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
202
+ # automatically.
202
203
  #
203
204
  #
204
205
  #
@@ -240,8 +241,9 @@ module Aws::S3
240
241
  # body was not corrupted in transit. For more information, see [RFC
241
242
  # 1864][1].
242
243
  #
243
- # For requests made using the AWS Command Line Interface (CLI) or AWS
244
- # SDKs, this field is calculated automatically.
244
+ # For requests made using the Amazon Web Services Command Line Interface
245
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
246
+ # automatically.
245
247
  #
246
248
  #
247
249
  #
@@ -276,8 +278,9 @@ module Aws::S3
276
278
  # body was not corrupted in transit. For more information, see [RFC
277
279
  # 1864][1].
278
280
  #
279
- # For requests made using the AWS Command Line Interface (CLI) or AWS
280
- # SDKs, this field is calculated automatically.
281
+ # For requests made using the Amazon Web Services Command Line Interface
282
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
283
+ # automatically.
281
284
  #
282
285
  #
283
286
  #
@@ -252,8 +252,9 @@ module Aws::S3
252
252
  # header as a message integrity check to verify that the request body
253
253
  # was not corrupted in transit. For more information, see [RFC 1864][1].
254
254
  #
255
- # For requests made using the AWS Command Line Interface (CLI) or AWS
256
- # SDKs, this field is calculated automatically.
255
+ # For requests made using the Amazon Web Services Command Line Interface
256
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
257
+ # automatically.
257
258
  #
258
259
  #
259
260
  #
@@ -452,19 +452,19 @@ module Aws::S3
452
452
  # When using this action with an access point, you must direct requests
453
453
  # to the access point hostname. The access point hostname takes the form
454
454
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
455
- # When using this action with an access point through the AWS SDKs, you
456
- # provide the access point ARN in place of the bucket name. For more
457
- # information about access point ARNs, see [Using access points][1] in
458
- # the *Amazon S3 User Guide*.
455
+ # When using this action with an access point through the Amazon Web
456
+ # Services SDKs, you provide the access point ARN in place of the bucket
457
+ # name. For more information about access point ARNs, see [Using access
458
+ # points][1] in the *Amazon S3 User Guide*.
459
459
  #
460
460
  # When using this action with Amazon S3 on Outposts, you must direct
461
461
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
462
462
  # takes the form
463
463
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
464
- # When using this action using S3 on Outposts through the AWS SDKs, you
465
- # provide the Outposts bucket ARN in place of the bucket name. For more
466
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
467
- # in the *Amazon S3 User Guide*.
464
+ # When using this action using S3 on Outposts through the Amazon Web
465
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
466
+ # bucket name. For more information about S3 on Outposts ARNs, see
467
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
468
468
  #
469
469
  #
470
470
  #
@@ -626,6 +626,28 @@ module Aws::S3
626
626
  # @option params [required, String] :bucket
627
627
  # Name of the bucket to which the multipart upload was initiated.
628
628
  #
629
+ # When using this action with an access point, you must direct requests
630
+ # to the access point hostname. The access point hostname takes the form
631
+ # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
632
+ # When using this action with an access point through the Amazon Web
633
+ # Services SDKs, you provide the access point ARN in place of the bucket
634
+ # name. For more information about access point ARNs, see [Using access
635
+ # points][1] in the *Amazon S3 User Guide*.
636
+ #
637
+ # When using this action with Amazon S3 on Outposts, you must direct
638
+ # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
639
+ # takes the form
640
+ # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
641
+ # When using this action using S3 on Outposts through the Amazon Web
642
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
643
+ # bucket name. For more information about S3 on Outposts ARNs, see
644
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
645
+ #
646
+ #
647
+ #
648
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
649
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
650
+ #
629
651
  # @option params [required, String] :key
630
652
  # Object key for which the multipart upload was initiated.
631
653
  #
@@ -837,12 +859,12 @@ module Aws::S3
837
859
  #
838
860
  # When you perform a CopyObject operation, you can optionally use the
839
861
  # appropriate encryption-related headers to encrypt the object using
840
- # server-side encryption with AWS managed encryption keys (SSE-S3 or
841
- # SSE-KMS) or a customer-provided encryption key. With server-side
842
- # encryption, Amazon S3 encrypts your data as it writes it to disks in
843
- # its data centers and decrypts the data when you access it. For more
844
- # information about server-side encryption, see [Using Server-Side
845
- # Encryption][8].
862
+ # server-side encryption with Amazon Web Services managed encryption
863
+ # keys (SSE-S3 or SSE-KMS) or a customer-provided encryption key. With
864
+ # server-side encryption, Amazon S3 encrypts your data as it writes it
865
+ # to disks in its data centers and decrypts the data when you access it.
866
+ # For more information about server-side encryption, see [Using
867
+ # Server-Side Encryption][8].
846
868
  #
847
869
  # If a target object uses SSE-KMS, you can enable an S3 Bucket Key for
848
870
  # the object. For more information, see [Amazon S3 Bucket Keys][9] in
@@ -853,10 +875,11 @@ module Aws::S3
853
875
  # When copying an object, you can optionally use headers to grant
854
876
  # ACL-based permissions. By default, all objects are private. Only the
855
877
  # owner has full access control. When adding a new object, you can grant
856
- # permissions to individual AWS accounts or to predefined groups defined
857
- # by Amazon S3. These permissions are then added to the ACL on the
858
- # object. For more information, see [Access Control List (ACL)
859
- # Overview][10] and [Managing ACLs Using the REST API][11].
878
+ # permissions to individual Amazon Web Services accounts or to
879
+ # predefined groups defined by Amazon S3. These permissions are then
880
+ # added to the ACL on the object. For more information, see [Access
881
+ # Control List (ACL) Overview][10] and [Managing ACLs Using the REST
882
+ # API][11].
860
883
  #
861
884
  # **Storage Class Options**
862
885
  #
@@ -923,19 +946,19 @@ module Aws::S3
923
946
  # When using this action with an access point, you must direct requests
924
947
  # to the access point hostname. The access point hostname takes the form
925
948
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
926
- # When using this action with an access point through the AWS SDKs, you
927
- # provide the access point ARN in place of the bucket name. For more
928
- # information about access point ARNs, see [Using access points][1] in
929
- # the *Amazon S3 User Guide*.
949
+ # When using this action with an access point through the Amazon Web
950
+ # Services SDKs, you provide the access point ARN in place of the bucket
951
+ # name. For more information about access point ARNs, see [Using access
952
+ # points][1] in the *Amazon S3 User Guide*.
930
953
  #
931
954
  # When using this action with Amazon S3 on Outposts, you must direct
932
955
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
933
956
  # takes the form
934
957
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
935
- # When using this action using S3 on Outposts through the AWS SDKs, you
936
- # provide the Outposts bucket ARN in place of the bucket name. For more
937
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
938
- # in the *Amazon S3 User Guide*.
958
+ # When using this action using S3 on Outposts through the Amazon Web
959
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
960
+ # bucket name. For more information about S3 on Outposts ARNs, see
961
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
939
962
  #
940
963
  #
941
964
  #
@@ -982,7 +1005,8 @@ module Aws::S3
982
1005
  # The value must be URL encoded.
983
1006
  #
984
1007
  # <note markdown="1"> Amazon S3 supports copy operations using access points only when the
985
- # source and destination buckets are in the same AWS Region.
1008
+ # source and destination buckets are in the same Amazon Web Services
1009
+ # Region.
986
1010
  #
987
1011
  # </note>
988
1012
  #
@@ -1095,21 +1119,22 @@ module Aws::S3
1095
1119
  # ensure that the encryption key was transmitted without error.
1096
1120
  #
1097
1121
  # @option params [String] :ssekms_key_id
1098
- # Specifies the AWS KMS key ID to use for object encryption. All GET and
1099
- # PUT requests for an object protected by AWS KMS will fail if not made
1100
- # via SSL or using SigV4. For information about configuring using any of
1101
- # the officially supported AWS SDKs and AWS CLI, see [Specifying the
1102
- # Signature Version in Request Authentication][1] in the *Amazon S3 User
1103
- # Guide*.
1122
+ # Specifies the Amazon Web Services KMS key ID to use for object
1123
+ # encryption. All GET and PUT requests for an object protected by Amazon
1124
+ # Web Services KMS will fail if not made via SSL or using SigV4. For
1125
+ # information about configuring using any of the officially supported
1126
+ # Amazon Web Services SDKs and Amazon Web Services CLI, see [Specifying
1127
+ # the Signature Version in Request Authentication][1] in the *Amazon S3
1128
+ # User Guide*.
1104
1129
  #
1105
1130
  #
1106
1131
  #
1107
1132
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
1108
1133
  #
1109
1134
  # @option params [String] :ssekms_encryption_context
1110
- # Specifies the AWS KMS Encryption Context to use for object encryption.
1111
- # The value of this header is a base64-encoded UTF-8 string holding JSON
1112
- # with the encryption context key-value pairs.
1135
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
1136
+ # object encryption. The value of this header is a base64-encoded UTF-8
1137
+ # string holding JSON with the encryption context key-value pairs.
1113
1138
  #
1114
1139
  # @option params [Boolean] :bucket_key_enabled
1115
1140
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
@@ -1275,9 +1300,9 @@ module Aws::S3
1275
1300
  end
1276
1301
 
1277
1302
  # Creates a new S3 bucket. To create a bucket, you must register with
1278
- # Amazon S3 and have a valid AWS Access Key ID to authenticate requests.
1279
- # Anonymous requests are never allowed to create buckets. By creating
1280
- # the bucket, you become the bucket owner.
1303
+ # Amazon S3 and have a valid Amazon Web Services Access Key ID to
1304
+ # authenticate requests. Anonymous requests are never allowed to create
1305
+ # buckets. By creating the bucket, you become the bucket owner.
1281
1306
  #
1282
1307
  # Not every string is an acceptable bucket name. For information about
1283
1308
  # bucket naming restrictions, see [Bucket naming rules][1].
@@ -1323,16 +1348,16 @@ module Aws::S3
1323
1348
  # You specify each grantee as a type=value pair, where the type is one
1324
1349
  # of the following:
1325
1350
  #
1326
- # * `id` – if the value specified is the canonical user ID of an AWS
1327
- # account
1351
+ # * `id` – if the value specified is the canonical user ID of an
1352
+ # Amazon Web Services account
1328
1353
  #
1329
1354
  # * `uri` – if you are granting permissions to a predefined group
1330
1355
  #
1331
1356
  # * `emailAddress` – if the value specified is the email address of an
1332
- # AWS account
1357
+ # Amazon Web Services account
1333
1358
  #
1334
1359
  # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1335
- # the following AWS Regions:
1360
+ # the following Amazon Web Services Regions:
1336
1361
  #
1337
1362
  # * US East (N. Virginia)
1338
1363
  #
@@ -1351,13 +1376,14 @@ module Aws::S3
1351
1376
  # * South America (São Paulo)
1352
1377
  #
1353
1378
  # For a list of all the Amazon S3 supported Regions and endpoints,
1354
- # see [Regions and Endpoints][7] in the AWS General Reference.
1379
+ # see [Regions and Endpoints][7] in the Amazon Web Services General
1380
+ # Reference.
1355
1381
  #
1356
1382
  # </note>
1357
1383
  #
1358
- # For example, the following `x-amz-grant-read` header grants the AWS
1359
- # accounts identified by account IDs permissions to read object data
1360
- # and its metadata:
1384
+ # For example, the following `x-amz-grant-read` header grants the
1385
+ # Amazon Web Services accounts identified by account IDs permissions
1386
+ # to read object data and its metadata:
1361
1387
  #
1362
1388
  # `x-amz-grant-read: id="11112222333", id="444455556666" `
1363
1389
  #
@@ -1366,6 +1392,19 @@ module Aws::S3
1366
1392
  #
1367
1393
  # </note>
1368
1394
  #
1395
+ # **Permissions**
1396
+ #
1397
+ # If your `CreateBucket` request specifies ACL permissions and the ACL
1398
+ # is public-read, public-read-write, authenticated-read, or if you
1399
+ # specify access permissions explicitly through any other ACL, both
1400
+ # `s3:CreateBucket` and `s3:PutBucketAcl` permissions are needed. If the
1401
+ # ACL the `CreateBucket` request is private, only `s3:CreateBucket`
1402
+ # permission is needed.
1403
+ #
1404
+ # If `ObjectLockEnabledForBucket` is set to true in your `CreateBucket`
1405
+ # request, `s3:PutBucketObjectLockConfiguration` and
1406
+ # `s3:PutBucketVersioning` permissions are required.
1407
+ #
1369
1408
  # The following operations are related to `CreateBucket`\:
1370
1409
  #
1371
1410
  # * [PutObject][8]
@@ -1504,7 +1543,8 @@ module Aws::S3
1504
1543
  # to upload parts, and then complete the multipart upload process. You
1505
1544
  # sign each request individually. There is nothing special about signing
1506
1545
  # multipart upload requests. For more information about signing, see
1507
- # [Authenticating Requests (AWS Signature Version 4)][5].
1546
+ # [Authenticating Requests (Amazon Web Services Signature Version
1547
+ # 4)][5].
1508
1548
  #
1509
1549
  # <note markdown="1"> After you initiate a multipart upload and upload one or more parts, to
1510
1550
  # stop being charged for storing the uploaded parts, you must either
@@ -1517,26 +1557,27 @@ module Aws::S3
1517
1557
  # You can optionally request server-side encryption. For server-side
1518
1558
  # encryption, Amazon S3 encrypts your data as it writes it to disks in
1519
1559
  # its data centers and decrypts it when you access it. You can provide
1520
- # your own encryption key, or use AWS Key Management Service (AWS KMS)
1521
- # customer master keys (CMKs) or Amazon S3-managed encryption keys. If
1522
- # you choose to provide your own encryption key, the request headers you
1523
- # provide in [UploadPart][1] and [UploadPartCopy][6] requests must match
1524
- # the headers you used in the request to initiate the upload by using
1525
- # `CreateMultipartUpload`.
1526
- #
1527
- # To perform a multipart upload with encryption using an AWS KMS CMK,
1528
- # the requester must have permission to the `kms:Decrypt` and
1529
- # `kms:GenerateDataKey*` actions on the key. These permissions are
1530
- # required because Amazon S3 must decrypt and read data from the
1531
- # encrypted file parts before it completes the multipart upload. For
1532
- # more information, see [Multipart upload API and permissions][7] in the
1533
- # *Amazon S3 User Guide*.
1534
- #
1535
- # If your AWS Identity and Access Management (IAM) user or role is in
1536
- # the same AWS account as the AWS KMS CMK, then you must have these
1537
- # permissions on the key policy. If your IAM user or role belongs to a
1538
- # different account than the key, then you must have the permissions on
1539
- # both the key policy and your IAM user or role.
1560
+ # your own encryption key, or use Amazon Web Services Key Management
1561
+ # Service (Amazon Web Services KMS) customer master keys (CMKs) or
1562
+ # Amazon S3-managed encryption keys. If you choose to provide your own
1563
+ # encryption key, the request headers you provide in [UploadPart][1] and
1564
+ # [UploadPartCopy][6] requests must match the headers you used in the
1565
+ # request to initiate the upload by using `CreateMultipartUpload`.
1566
+ #
1567
+ # To perform a multipart upload with encryption using an Amazon Web
1568
+ # Services KMS CMK, the requester must have permission to the
1569
+ # `kms:Decrypt` and `kms:GenerateDataKey*` actions on the key. These
1570
+ # permissions are required because Amazon S3 must decrypt and read data
1571
+ # from the encrypted file parts before it completes the multipart
1572
+ # upload. For more information, see [Multipart upload API and
1573
+ # permissions][7] in the *Amazon S3 User Guide*.
1574
+ #
1575
+ # If your Identity and Access Management (IAM) user or role is in the
1576
+ # same Amazon Web Services account as the Amazon Web Services KMS CMK,
1577
+ # then you must have these permissions on the key policy. If your IAM
1578
+ # user or role belongs to a different account than the key, then you
1579
+ # must have the permissions on both the key policy and your IAM user or
1580
+ # role.
1540
1581
  #
1541
1582
  # For more information, see [Protecting Data Using Server-Side
1542
1583
  # Encryption][8].
@@ -1566,13 +1607,14 @@ module Aws::S3
1566
1607
  # server-side encryption. Server-side encryption is for data
1567
1608
  # encryption at rest. Amazon S3 encrypts your data as it writes it to
1568
1609
  # disks in its data centers and decrypts it when you access it. The
1569
- # option you use depends on whether you want to use AWS managed
1570
- # encryption keys or provide your own encryption key.
1610
+ # option you use depends on whether you want to use Amazon Web
1611
+ # Services managed encryption keys or provide your own encryption key.
1571
1612
  #
1572
1613
  # * Use encryption keys managed by Amazon S3 or customer master keys
1573
- # (CMKs) stored in AWS Key Management Service (AWS KMS) – If you
1574
- # want AWS to manage the keys used to encrypt data, specify the
1575
- # following headers in the request.
1614
+ # (CMKs) stored in Amazon Web Services Key Management Service
1615
+ # (Amazon Web Services KMS) If you want Amazon Web Services to
1616
+ # manage the keys used to encrypt data, specify the following
1617
+ # headers in the request.
1576
1618
  #
1577
1619
  # * x-amz-server-side-encryption
1578
1620
  #
@@ -1582,16 +1624,19 @@ module Aws::S3
1582
1624
  #
1583
1625
  # <note markdown="1"> If you specify `x-amz-server-side-encryption:aws:kms`, but don't
1584
1626
  # provide `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3
1585
- # uses the AWS managed CMK in AWS KMS to protect the data.
1627
+ # uses the Amazon Web Services managed CMK in Amazon Web Services
1628
+ # KMS to protect the data.
1586
1629
  #
1587
1630
  # </note>
1588
1631
  #
1589
- # All GET and PUT requests for an object protected by AWS KMS fail
1590
- # if you don't make them with SSL or by using SigV4.
1632
+ # All GET and PUT requests for an object protected by Amazon Web
1633
+ # Services KMS fail if you don't make them with SSL or by using
1634
+ # SigV4.
1591
1635
  #
1592
1636
  # For more information about server-side encryption with CMKs stored
1593
- # in AWS KMS (SSE-KMS), see [Protecting Data Using Server-Side
1594
- # Encryption with CMKs stored in AWS KMS][11].
1637
+ # in Amazon Web Services KMS (SSE-KMS), see [Protecting Data Using
1638
+ # Server-Side Encryption with CMKs stored in Amazon Web Services
1639
+ # KMS][11].
1595
1640
  #
1596
1641
  # * Use customer-provided encryption keys – If you want to manage your
1597
1642
  # own encryption keys, provide all the following headers in the
@@ -1604,19 +1649,20 @@ module Aws::S3
1604
1649
  # * x-amz-server-side-encryption-customer-key-MD5
1605
1650
  #
1606
1651
  # For more information about server-side encryption with CMKs stored
1607
- # in AWS KMS (SSE-KMS), see [Protecting Data Using Server-Side
1608
- # Encryption with CMKs stored in AWS KMS][11].
1652
+ # in Amazon Web Services KMS (SSE-KMS), see [Protecting Data Using
1653
+ # Server-Side Encryption with CMKs stored in Amazon Web Services
1654
+ # KMS][11].
1609
1655
  #
1610
1656
  # Access-Control-List (ACL)-Specific Request Headers
1611
1657
  #
1612
1658
  # : You also can use the following access control–related headers with
1613
1659
  # this operation. By default, all objects are private. Only the owner
1614
1660
  # has full access control. When adding a new object, you can grant
1615
- # permissions to individual AWS accounts or to predefined groups
1616
- # defined by Amazon S3. These permissions are then added to the access
1617
- # control list (ACL) on the object. For more information, see [Using
1618
- # ACLs][12]. With this operation, you can grant access permissions
1619
- # using one of the following two methods:
1661
+ # permissions to individual Amazon Web Services accounts or to
1662
+ # predefined groups defined by Amazon S3. These permissions are then
1663
+ # added to the access control list (ACL) on the object. For more
1664
+ # information, see [Using ACLs][12]. With this operation, you can
1665
+ # grant access permissions using one of the following two methods:
1620
1666
  #
1621
1667
  # * Specify a canned ACL (`x-amz-acl`) — Amazon S3 supports a set of
1622
1668
  # predefined ACLs, known as *canned ACLs*. Each canned ACL has a
@@ -1624,12 +1670,12 @@ module Aws::S3
1624
1670
  # see [Canned ACL][9].
1625
1671
  #
1626
1672
  # * Specify access permissions explicitly — To explicitly grant access
1627
- # permissions to specific AWS accounts or groups, use the following
1628
- # headers. Each header maps to specific permissions that Amazon S3
1629
- # supports in an ACL. For more information, see [Access Control List
1630
- # (ACL) Overview][10]. In the header, you specify a list of grantees
1631
- # who get the specific permission. To grant permissions explicitly,
1632
- # use:
1673
+ # permissions to specific Amazon Web Services accounts or groups,
1674
+ # use the following headers. Each header maps to specific
1675
+ # permissions that Amazon S3 supports in an ACL. For more
1676
+ # information, see [Access Control List (ACL) Overview][10]. In the
1677
+ # header, you specify a list of grantees who get the specific
1678
+ # permission. To grant permissions explicitly, use:
1633
1679
  #
1634
1680
  # * x-amz-grant-read
1635
1681
  #
@@ -1644,16 +1690,16 @@ module Aws::S3
1644
1690
  # You specify each grantee as a type=value pair, where the type is
1645
1691
  # one of the following:
1646
1692
  #
1647
- # * `id` – if the value specified is the canonical user ID of an AWS
1648
- # account
1693
+ # * `id` – if the value specified is the canonical user ID of an
1694
+ # Amazon Web Services account
1649
1695
  #
1650
1696
  # * `uri` – if you are granting permissions to a predefined group
1651
1697
  #
1652
1698
  # * `emailAddress` – if the value specified is the email address of
1653
- # an AWS account
1699
+ # an Amazon Web Services account
1654
1700
  #
1655
1701
  # <note markdown="1"> Using email addresses to specify a grantee is only supported in
1656
- # the following AWS Regions:
1702
+ # the following Amazon Web Services Regions:
1657
1703
  #
1658
1704
  # * US East (N. Virginia)
1659
1705
  #
@@ -1672,13 +1718,14 @@ module Aws::S3
1672
1718
  # * South America (São Paulo)
1673
1719
  #
1674
1720
  # For a list of all the Amazon S3 supported Regions and endpoints,
1675
- # see [Regions and Endpoints][13] in the AWS General Reference.
1721
+ # see [Regions and Endpoints][13] in the Amazon Web Services
1722
+ # General Reference.
1676
1723
  #
1677
1724
  # </note>
1678
1725
  #
1679
1726
  # For example, the following `x-amz-grant-read` header grants the
1680
- # AWS accounts identified by account IDs permissions to read object
1681
- # data and its metadata:
1727
+ # Amazon Web Services accounts identified by account IDs permissions
1728
+ # to read object data and its metadata:
1682
1729
  #
1683
1730
  # `x-amz-grant-read: id="11112222333", id="444455556666" `
1684
1731
  #
@@ -1725,19 +1772,19 @@ module Aws::S3
1725
1772
  # When using this action with an access point, you must direct requests
1726
1773
  # to the access point hostname. The access point hostname takes the form
1727
1774
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
1728
- # When using this action with an access point through the AWS SDKs, you
1729
- # provide the access point ARN in place of the bucket name. For more
1730
- # information about access point ARNs, see [Using access points][1] in
1731
- # the *Amazon S3 User Guide*.
1775
+ # When using this action with an access point through the Amazon Web
1776
+ # Services SDKs, you provide the access point ARN in place of the bucket
1777
+ # name. For more information about access point ARNs, see [Using access
1778
+ # points][1] in the *Amazon S3 User Guide*.
1732
1779
  #
1733
1780
  # When using this action with Amazon S3 on Outposts, you must direct
1734
1781
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
1735
1782
  # takes the form
1736
1783
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
1737
- # When using this action using S3 on Outposts through the AWS SDKs, you
1738
- # provide the Outposts bucket ARN in place of the bucket name. For more
1739
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
1740
- # in the *Amazon S3 User Guide*.
1784
+ # When using this action using S3 on Outposts through the Amazon Web
1785
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
1786
+ # bucket name. For more information about S3 on Outposts ARNs, see
1787
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
1741
1788
  #
1742
1789
  #
1743
1790
  #
@@ -1829,11 +1876,12 @@ module Aws::S3
1829
1876
  # ensure that the encryption key was transmitted without error.
1830
1877
  #
1831
1878
  # @option params [String] :ssekms_key_id
1832
- # Specifies the ID of the symmetric customer managed AWS KMS CMK to use
1833
- # for object encryption. All GET and PUT requests for an object
1834
- # protected by AWS KMS will fail if not made via SSL or using SigV4. For
1835
- # information about configuring using any of the officially supported
1836
- # AWS SDKs and AWS CLI, see [Specifying the Signature Version in Request
1879
+ # Specifies the ID of the symmetric customer managed Amazon Web Services
1880
+ # KMS CMK to use for object encryption. All GET and PUT requests for an
1881
+ # object protected by Amazon Web Services KMS will fail if not made via
1882
+ # SSL or using SigV4. For information about configuring using any of the
1883
+ # officially supported Amazon Web Services SDKs and Amazon Web Services
1884
+ # CLI, see [Specifying the Signature Version in Request
1837
1885
  # Authentication][1] in the *Amazon S3 User Guide*.
1838
1886
  #
1839
1887
  #
@@ -1841,9 +1889,9 @@ module Aws::S3
1841
1889
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
1842
1890
  #
1843
1891
  # @option params [String] :ssekms_encryption_context
1844
- # Specifies the AWS KMS Encryption Context to use for object encryption.
1845
- # The value of this header is a base64-encoded UTF-8 string holding JSON
1846
- # with the encryption context key-value pairs.
1892
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
1893
+ # object encryption. The value of this header is a base64-encoded UTF-8
1894
+ # string holding JSON with the encryption context key-value pairs.
1847
1895
  #
1848
1896
  # @option params [Boolean] :bucket_key_enabled
1849
1897
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
@@ -2498,19 +2546,20 @@ module Aws::S3
2498
2546
 
2499
2547
  # This implementation of the DELETE action uses the policy subresource
2500
2548
  # to delete the policy of a specified bucket. If you are using an
2501
- # identity other than the root user of the AWS account that owns the
2502
- # bucket, the calling identity must have the `DeleteBucketPolicy`
2503
- # permissions on the specified bucket and belong to the bucket owner's
2504
- # account to use this operation.
2549
+ # identity other than the root user of the Amazon Web Services account
2550
+ # that owns the bucket, the calling identity must have the
2551
+ # `DeleteBucketPolicy` permissions on the specified bucket and belong to
2552
+ # the bucket owner's account to use this operation.
2505
2553
  #
2506
2554
  # If you don't have `DeleteBucketPolicy` permissions, Amazon S3 returns
2507
2555
  # a `403 Access Denied` error. If you have the correct permissions, but
2508
2556
  # you're not using an identity that belongs to the bucket owner's
2509
2557
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
2510
2558
  #
2511
- # As a security precaution, the root user of the AWS account that owns a
2512
- # bucket can always use this operation, even if the policy explicitly
2513
- # denies the root user the ability to perform this action.
2559
+ # As a security precaution, the root user of the Amazon Web Services
2560
+ # account that owns a bucket can always use this operation, even if the
2561
+ # policy explicitly denies the root user the ability to perform this
2562
+ # action.
2514
2563
  #
2515
2564
  # For more information about bucket policies, see [Using Bucket Policies
2516
2565
  # and UserPolicies][1].
@@ -2789,19 +2838,19 @@ module Aws::S3
2789
2838
  # When using this action with an access point, you must direct requests
2790
2839
  # to the access point hostname. The access point hostname takes the form
2791
2840
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
2792
- # When using this action with an access point through the AWS SDKs, you
2793
- # provide the access point ARN in place of the bucket name. For more
2794
- # information about access point ARNs, see [Using access points][1] in
2795
- # the *Amazon S3 User Guide*.
2841
+ # When using this action with an access point through the Amazon Web
2842
+ # Services SDKs, you provide the access point ARN in place of the bucket
2843
+ # name. For more information about access point ARNs, see [Using access
2844
+ # points][1] in the *Amazon S3 User Guide*.
2796
2845
  #
2797
2846
  # When using this action with Amazon S3 on Outposts, you must direct
2798
2847
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
2799
2848
  # takes the form
2800
2849
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
2801
- # When using this action using S3 on Outposts through the AWS SDKs, you
2802
- # provide the Outposts bucket ARN in place of the bucket name. For more
2803
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
2804
- # in the *Amazon S3 User Guide*.
2850
+ # When using this action using S3 on Outposts through the Amazon Web
2851
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
2852
+ # bucket name. For more information about S3 on Outposts ARNs, see
2853
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
2805
2854
  #
2806
2855
  #
2807
2856
  #
@@ -2833,7 +2882,8 @@ module Aws::S3
2833
2882
  #
2834
2883
  # @option params [Boolean] :bypass_governance_retention
2835
2884
  # Indicates whether S3 Object Lock should bypass Governance-mode
2836
- # restrictions to process this operation.
2885
+ # restrictions to process this operation. To use this header, you must
2886
+ # have the `s3:PutBucketPublicAccessBlock` permission.
2837
2887
  #
2838
2888
  # @option params [String] :expected_bucket_owner
2839
2889
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -2925,19 +2975,19 @@ module Aws::S3
2925
2975
  # When using this action with an access point, you must direct requests
2926
2976
  # to the access point hostname. The access point hostname takes the form
2927
2977
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
2928
- # When using this action with an access point through the AWS SDKs, you
2929
- # provide the access point ARN in place of the bucket name. For more
2930
- # information about access point ARNs, see [Using access points][1] in
2931
- # the *Amazon S3 User Guide*.
2978
+ # When using this action with an access point through the Amazon Web
2979
+ # Services SDKs, you provide the access point ARN in place of the bucket
2980
+ # name. For more information about access point ARNs, see [Using access
2981
+ # points][1] in the *Amazon S3 User Guide*.
2932
2982
  #
2933
2983
  # When using this action with Amazon S3 on Outposts, you must direct
2934
2984
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
2935
2985
  # takes the form
2936
2986
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
2937
- # When using this action using S3 on Outposts through the AWS SDKs, you
2938
- # provide the Outposts bucket ARN in place of the bucket name. For more
2939
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
2940
- # in the *Amazon S3 User Guide*.
2987
+ # When using this action using S3 on Outposts through the Amazon Web
2988
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
2989
+ # bucket name. For more information about S3 on Outposts ARNs, see
2990
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
2941
2991
  #
2942
2992
  #
2943
2993
  #
@@ -2961,35 +3011,35 @@ module Aws::S3
2961
3011
  # * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
2962
3012
  #
2963
3013
  #
2964
- # @example Example: To remove tag set from an object
3014
+ # @example Example: To remove tag set from an object version
2965
3015
  #
2966
- # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
2967
- # # operation removes tag set from the latest object version.
3016
+ # # The following example removes tag set associated with the specified object version. The request specifies both the
3017
+ # # object key and object version.
2968
3018
  #
2969
3019
  # resp = client.delete_object_tagging({
2970
3020
  # bucket: "examplebucket",
2971
3021
  # key: "HappyFace.jpg",
3022
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2972
3023
  # })
2973
3024
  #
2974
3025
  # resp.to_h outputs the following:
2975
3026
  # {
2976
- # version_id: "null",
3027
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2977
3028
  # }
2978
3029
  #
2979
- # @example Example: To remove tag set from an object version
3030
+ # @example Example: To remove tag set from an object
2980
3031
  #
2981
- # # The following example removes tag set associated with the specified object version. The request specifies both the
2982
- # # object key and object version.
3032
+ # # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
3033
+ # # operation removes tag set from the latest object version.
2983
3034
  #
2984
3035
  # resp = client.delete_object_tagging({
2985
3036
  # bucket: "examplebucket",
2986
3037
  # key: "HappyFace.jpg",
2987
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
2988
3038
  # })
2989
3039
  #
2990
3040
  # resp.to_h outputs the following:
2991
3041
  # {
2992
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
3042
+ # version_id: "null",
2993
3043
  # }
2994
3044
  #
2995
3045
  # @example Request syntax with placeholder values
@@ -3073,19 +3123,19 @@ module Aws::S3
3073
3123
  # When using this action with an access point, you must direct requests
3074
3124
  # to the access point hostname. The access point hostname takes the form
3075
3125
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
3076
- # When using this action with an access point through the AWS SDKs, you
3077
- # provide the access point ARN in place of the bucket name. For more
3078
- # information about access point ARNs, see [Using access points][1] in
3079
- # the *Amazon S3 User Guide*.
3126
+ # When using this action with an access point through the Amazon Web
3127
+ # Services SDKs, you provide the access point ARN in place of the bucket
3128
+ # name. For more information about access point ARNs, see [Using access
3129
+ # points][1] in the *Amazon S3 User Guide*.
3080
3130
  #
3081
3131
  # When using this action with Amazon S3 on Outposts, you must direct
3082
3132
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
3083
3133
  # takes the form
3084
3134
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
3085
- # When using this action using S3 on Outposts through the AWS SDKs, you
3086
- # provide the Outposts bucket ARN in place of the bucket name. For more
3087
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
3088
- # in the *Amazon S3 User Guide*.
3135
+ # When using this action using S3 on Outposts through the Amazon Web
3136
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
3137
+ # bucket name. For more information about S3 on Outposts ARNs, see
3138
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
3089
3139
  #
3090
3140
  #
3091
3141
  #
@@ -3114,8 +3164,8 @@ module Aws::S3
3114
3164
  #
3115
3165
  # @option params [Boolean] :bypass_governance_retention
3116
3166
  # Specifies whether you want to delete this object even if it has a
3117
- # Governance-type Object Lock in place. You must have sufficient
3118
- # permissions to perform this operation.
3167
+ # Governance-type Object Lock in place. To use this header, you must
3168
+ # have the `s3:PutBucketPublicAccessBlock` permission.
3119
3169
  #
3120
3170
  # @option params [String] :expected_bucket_owner
3121
3171
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -3129,20 +3179,22 @@ module Aws::S3
3129
3179
  # * {Types::DeleteObjectsOutput#errors #errors} => Array&lt;Types::Error&gt;
3130
3180
  #
3131
3181
  #
3132
- # @example Example: To delete multiple objects from a versioned bucket
3182
+ # @example Example: To delete multiple object versions from a versioned bucket
3133
3183
  #
3134
- # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3135
- # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3184
+ # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3185
+ # # versions and returns the key and versions of deleted objects in the response.
3136
3186
  #
3137
3187
  # resp = client.delete_objects({
3138
3188
  # bucket: "examplebucket",
3139
3189
  # delete: {
3140
3190
  # objects: [
3141
3191
  # {
3142
- # key: "objectkey1",
3192
+ # key: "HappyFace.jpg",
3193
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3143
3194
  # },
3144
3195
  # {
3145
- # key: "objectkey2",
3196
+ # key: "HappyFace.jpg",
3197
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3146
3198
  # },
3147
3199
  # ],
3148
3200
  # quiet: false,
@@ -3153,34 +3205,30 @@ module Aws::S3
3153
3205
  # {
3154
3206
  # deleted: [
3155
3207
  # {
3156
- # delete_marker: true,
3157
- # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3158
- # key: "objectkey1",
3208
+ # key: "HappyFace.jpg",
3209
+ # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3159
3210
  # },
3160
3211
  # {
3161
- # delete_marker: true,
3162
- # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3163
- # key: "objectkey2",
3212
+ # key: "HappyFace.jpg",
3213
+ # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3164
3214
  # },
3165
3215
  # ],
3166
3216
  # }
3167
3217
  #
3168
- # @example Example: To delete multiple object versions from a versioned bucket
3218
+ # @example Example: To delete multiple objects from a versioned bucket
3169
3219
  #
3170
- # # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
3171
- # # versions and returns the key and versions of deleted objects in the response.
3220
+ # # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
3221
+ # # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
3172
3222
  #
3173
3223
  # resp = client.delete_objects({
3174
3224
  # bucket: "examplebucket",
3175
3225
  # delete: {
3176
3226
  # objects: [
3177
3227
  # {
3178
- # key: "HappyFace.jpg",
3179
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3228
+ # key: "objectkey1",
3180
3229
  # },
3181
3230
  # {
3182
- # key: "HappyFace.jpg",
3183
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3231
+ # key: "objectkey2",
3184
3232
  # },
3185
3233
  # ],
3186
3234
  # quiet: false,
@@ -3191,12 +3239,14 @@ module Aws::S3
3191
3239
  # {
3192
3240
  # deleted: [
3193
3241
  # {
3194
- # key: "HappyFace.jpg",
3195
- # version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
3242
+ # delete_marker: true,
3243
+ # delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
3244
+ # key: "objectkey1",
3196
3245
  # },
3197
3246
  # {
3198
- # key: "HappyFace.jpg",
3199
- # version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
3247
+ # delete_marker: true,
3248
+ # delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
3249
+ # key: "objectkey2",
3200
3250
  # },
3201
3251
  # ],
3202
3252
  # }
@@ -4068,6 +4118,9 @@ module Aws::S3
4068
4118
  # To use this implementation of the operation, you must be the bucket
4069
4119
  # owner.
4070
4120
  #
4121
+ # To use this API against an access point, provide the alias of the
4122
+ # access point in place of the bucket name.
4123
+ #
4071
4124
  # The following operations are related to `GetBucketLocation`\:
4072
4125
  #
4073
4126
  # * [GetObject][2]
@@ -4510,19 +4563,20 @@ module Aws::S3
4510
4563
  end
4511
4564
 
4512
4565
  # Returns the policy of a specified bucket. If you are using an identity
4513
- # other than the root user of the AWS account that owns the bucket, the
4514
- # calling identity must have the `GetBucketPolicy` permissions on the
4515
- # specified bucket and belong to the bucket owner's account in order to
4516
- # use this operation.
4566
+ # other than the root user of the Amazon Web Services account that owns
4567
+ # the bucket, the calling identity must have the `GetBucketPolicy`
4568
+ # permissions on the specified bucket and belong to the bucket owner's
4569
+ # account in order to use this operation.
4517
4570
  #
4518
4571
  # If you don't have `GetBucketPolicy` permissions, Amazon S3 returns a
4519
4572
  # `403 Access Denied` error. If you have the correct permissions, but
4520
4573
  # you're not using an identity that belongs to the bucket owner's
4521
4574
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
4522
4575
  #
4523
- # As a security precaution, the root user of the AWS account that owns a
4524
- # bucket can always use this operation, even if the policy explicitly
4525
- # denies the root user the ability to perform this action.
4576
+ # As a security precaution, the root user of the Amazon Web Services
4577
+ # account that owns a bucket can always use this operation, even if the
4578
+ # policy explicitly denies the root user the ability to perform this
4579
+ # action.
4526
4580
  #
4527
4581
  # For more information about bucket policies, see [Using Bucket Policies
4528
4582
  # and User Policies][1].
@@ -5104,10 +5158,10 @@ module Aws::S3
5104
5158
  #
5105
5159
  # Encryption request headers, like `x-amz-server-side-encryption`,
5106
5160
  # should not be sent for GET requests if your object uses server-side
5107
- # encryption with CMKs stored in AWS KMS (SSE-KMS) or server-side
5108
- # encryption with Amazon S3–managed encryption keys (SSE-S3). If your
5109
- # object does use these types of keys, you’ll get an HTTP 400 BadRequest
5110
- # error.
5161
+ # encryption with CMKs stored in Amazon Web Services KMS (SSE-KMS) or
5162
+ # server-side encryption with Amazon S3–managed encryption keys
5163
+ # (SSE-S3). If your object does use these types of keys, you’ll get an
5164
+ # HTTP 400 BadRequest error.
5111
5165
  #
5112
5166
  # If you encrypt an object by using server-side encryption with
5113
5167
  # customer-provided encryption keys (SSE-C) when you store the object in
@@ -5123,18 +5177,19 @@ module Aws::S3
5123
5177
  # For more information about SSE-C, see [Server-Side Encryption (Using
5124
5178
  # Customer-Provided Encryption Keys)][6].
5125
5179
  #
5126
- # Assuming you have permission to read object tags (permission for the
5127
- # `s3:GetObjectVersionTagging` action), the response also returns the
5128
- # `x-amz-tagging-count` header that provides the count of number of tags
5129
- # associated with the object. You can use [GetObjectTagging][7] to
5130
- # retrieve the tag set associated with an object.
5180
+ # Assuming you have the relevant permission to read object tags, the
5181
+ # response also returns the `x-amz-tagging-count` header that provides
5182
+ # the count of number of tags associated with the object. You can use
5183
+ # [GetObjectTagging][7] to retrieve the tag set associated with an
5184
+ # object.
5131
5185
  #
5132
5186
  # **Permissions**
5133
5187
  #
5134
- # You need the `s3:GetObject` permission for this operation. For more
5135
- # information, see [Specifying Permissions in a Policy][8]. If the
5136
- # object you request does not exist, the error Amazon S3 returns depends
5137
- # on whether you also have the `s3:ListBucket` permission.
5188
+ # You need the relevant read object (or version) permission for this
5189
+ # operation. For more information, see [Specifying Permissions in a
5190
+ # Policy][8]. If the object you request does not exist, the error Amazon
5191
+ # S3 returns depends on whether you also have the `s3:ListBucket`
5192
+ # permission.
5138
5193
  #
5139
5194
  # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
5140
5195
  # will return an HTTP status code 404 ("no such key") error.
@@ -5147,9 +5202,12 @@ module Aws::S3
5147
5202
  # By default, the GET action returns the current version of an object.
5148
5203
  # To return a different version, use the `versionId` subresource.
5149
5204
  #
5150
- # <note markdown="1"> If the current version of the object is a delete marker, Amazon S3
5151
- # behaves as if the object was deleted and includes
5152
- # `x-amz-delete-marker: true` in the response.
5205
+ # <note markdown="1"> * You need the `s3:GetObjectVersion` permission to access a specific
5206
+ # version of an object.
5207
+ #
5208
+ # * If the current version of the object is a delete marker, Amazon S3
5209
+ # behaves as if the object was deleted and includes
5210
+ # `x-amz-delete-marker: true` in the response.
5153
5211
  #
5154
5212
  # </note>
5155
5213
  #
@@ -5233,19 +5291,19 @@ module Aws::S3
5233
5291
  # When using this action with an access point, you must direct requests
5234
5292
  # to the access point hostname. The access point hostname takes the form
5235
5293
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
5236
- # When using this action with an access point through the AWS SDKs, you
5237
- # provide the access point ARN in place of the bucket name. For more
5238
- # information about access point ARNs, see [Using access points][1] in
5239
- # the *Amazon S3 User Guide*.
5294
+ # When using this action with an access point through the Amazon Web
5295
+ # Services SDKs, you provide the access point ARN in place of the bucket
5296
+ # name. For more information about access point ARNs, see [Using access
5297
+ # points][1] in the *Amazon S3 User Guide*.
5240
5298
  #
5241
5299
  # When using this action with Amazon S3 on Outposts, you must direct
5242
5300
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
5243
5301
  # takes the form
5244
5302
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
5245
- # When using this action using S3 on Outposts through the AWS SDKs, you
5246
- # provide the Outposts bucket ARN in place of the bucket name. For more
5247
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
5248
- # in the *Amazon S3 User Guide*.
5303
+ # When using this action using S3 on Outposts through the Amazon Web
5304
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
5305
+ # bucket name. For more information about S3 on Outposts ARNs, see
5306
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
5249
5307
  #
5250
5308
  #
5251
5309
  #
@@ -5559,10 +5617,10 @@ module Aws::S3
5559
5617
  # When using this action with an access point, you must direct requests
5560
5618
  # to the access point hostname. The access point hostname takes the form
5561
5619
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
5562
- # When using this action with an access point through the AWS SDKs, you
5563
- # provide the access point ARN in place of the bucket name. For more
5564
- # information about access point ARNs, see [Using access points][1] in
5565
- # the *Amazon S3 User Guide*.
5620
+ # When using this action with an access point through the Amazon Web
5621
+ # Services SDKs, you provide the access point ARN in place of the bucket
5622
+ # name. For more information about access point ARNs, see [Using access
5623
+ # points][1] in the *Amazon S3 User Guide*.
5566
5624
  #
5567
5625
  #
5568
5626
  #
@@ -5696,10 +5754,10 @@ module Aws::S3
5696
5754
  # When using this action with an access point, you must direct requests
5697
5755
  # to the access point hostname. The access point hostname takes the form
5698
5756
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
5699
- # When using this action with an access point through the AWS SDKs, you
5700
- # provide the access point ARN in place of the bucket name. For more
5701
- # information about access point ARNs, see [Using access points][1] in
5702
- # the *Amazon S3 User Guide*.
5757
+ # When using this action with an access point through the Amazon Web
5758
+ # Services SDKs, you provide the access point ARN in place of the bucket
5759
+ # name. For more information about access point ARNs, see [Using access
5760
+ # points][1] in the *Amazon S3 User Guide*.
5703
5761
  #
5704
5762
  #
5705
5763
  #
@@ -5771,10 +5829,10 @@ module Aws::S3
5771
5829
  # When using this action with an access point, you must direct requests
5772
5830
  # to the access point hostname. The access point hostname takes the form
5773
5831
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
5774
- # When using this action with an access point through the AWS SDKs, you
5775
- # provide the access point ARN in place of the bucket name. For more
5776
- # information about access point ARNs, see [Using access points][1] in
5777
- # the *Amazon S3 User Guide*.
5832
+ # When using this action with an access point through the Amazon Web
5833
+ # Services SDKs, you provide the access point ARN in place of the bucket
5834
+ # name. For more information about access point ARNs, see [Using access
5835
+ # points][1] in the *Amazon S3 User Guide*.
5778
5836
  #
5779
5837
  #
5780
5838
  #
@@ -5828,10 +5886,10 @@ module Aws::S3
5828
5886
  # When using this action with an access point, you must direct requests
5829
5887
  # to the access point hostname. The access point hostname takes the form
5830
5888
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
5831
- # When using this action with an access point through the AWS SDKs, you
5832
- # provide the access point ARN in place of the bucket name. For more
5833
- # information about access point ARNs, see [Using access points][1] in
5834
- # the *Amazon S3 User Guide*.
5889
+ # When using this action with an access point through the Amazon Web
5890
+ # Services SDKs, you provide the access point ARN in place of the bucket
5891
+ # name. For more information about access point ARNs, see [Using access
5892
+ # points][1] in the *Amazon S3 User Guide*.
5835
5893
  #
5836
5894
  #
5837
5895
  #
@@ -5924,19 +5982,19 @@ module Aws::S3
5924
5982
  # When using this action with an access point, you must direct requests
5925
5983
  # to the access point hostname. The access point hostname takes the form
5926
5984
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
5927
- # When using this action with an access point through the AWS SDKs, you
5928
- # provide the access point ARN in place of the bucket name. For more
5929
- # information about access point ARNs, see [Using access points][1] in
5930
- # the *Amazon S3 User Guide*.
5985
+ # When using this action with an access point through the Amazon Web
5986
+ # Services SDKs, you provide the access point ARN in place of the bucket
5987
+ # name. For more information about access point ARNs, see [Using access
5988
+ # points][1] in the *Amazon S3 User Guide*.
5931
5989
  #
5932
5990
  # When using this action with Amazon S3 on Outposts, you must direct
5933
5991
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
5934
5992
  # takes the form
5935
5993
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
5936
- # When using this action using S3 on Outposts through the AWS SDKs, you
5937
- # provide the Outposts bucket ARN in place of the bucket name. For more
5938
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
5939
- # in the *Amazon S3 User Guide*.
5994
+ # When using this action using S3 on Outposts through the Amazon Web
5995
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
5996
+ # bucket name. For more information about S3 on Outposts ARNs, see
5997
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
5940
5998
  #
5941
5999
  #
5942
6000
  #
@@ -5971,49 +6029,49 @@ module Aws::S3
5971
6029
  # * {Types::GetObjectTaggingOutput#tag_set #tag_set} => Array&lt;Types::Tag&gt;
5972
6030
  #
5973
6031
  #
5974
- # @example Example: To retrieve tag set of a specific object version
6032
+ # @example Example: To retrieve tag set of an object
5975
6033
  #
5976
- # # The following example retrieves tag set of an object. The request specifies object version.
6034
+ # # The following example retrieves tag set of an object.
5977
6035
  #
5978
6036
  # resp = client.get_object_tagging({
5979
6037
  # bucket: "examplebucket",
5980
- # key: "exampleobject",
5981
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6038
+ # key: "HappyFace.jpg",
5982
6039
  # })
5983
6040
  #
5984
6041
  # resp.to_h outputs the following:
5985
6042
  # {
5986
6043
  # tag_set: [
5987
6044
  # {
5988
- # key: "Key1",
5989
- # value: "Value1",
6045
+ # key: "Key4",
6046
+ # value: "Value4",
6047
+ # },
6048
+ # {
6049
+ # key: "Key3",
6050
+ # value: "Value3",
5990
6051
  # },
5991
6052
  # ],
5992
- # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6053
+ # version_id: "null",
5993
6054
  # }
5994
6055
  #
5995
- # @example Example: To retrieve tag set of an object
6056
+ # @example Example: To retrieve tag set of a specific object version
5996
6057
  #
5997
- # # The following example retrieves tag set of an object.
6058
+ # # The following example retrieves tag set of an object. The request specifies object version.
5998
6059
  #
5999
6060
  # resp = client.get_object_tagging({
6000
6061
  # bucket: "examplebucket",
6001
- # key: "HappyFace.jpg",
6062
+ # key: "exampleobject",
6063
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6002
6064
  # })
6003
6065
  #
6004
6066
  # resp.to_h outputs the following:
6005
6067
  # {
6006
6068
  # tag_set: [
6007
6069
  # {
6008
- # key: "Key4",
6009
- # value: "Value4",
6010
- # },
6011
- # {
6012
- # key: "Key3",
6013
- # value: "Value3",
6070
+ # key: "Key1",
6071
+ # value: "Value1",
6014
6072
  # },
6015
6073
  # ],
6016
- # version_id: "null",
6074
+ # version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
6017
6075
  # }
6018
6076
  #
6019
6077
  # @example Request syntax with placeholder values
@@ -6222,10 +6280,19 @@ module Aws::S3
6222
6280
  # Operations][1] and [Managing Access Permissions to Your Amazon S3
6223
6281
  # Resources][2].
6224
6282
  #
6283
+ # To use this API against an access point, you must provide the alias of
6284
+ # the access point in place of the bucket name or specify the access
6285
+ # point ARN. When using the access point ARN, you must direct requests
6286
+ # to the access point hostname. The access point hostname takes the form
6287
+ # AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When
6288
+ # using the Amazon Web Services SDKs, you provide the ARN in place of
6289
+ # the bucket name. For more information see, [Using access points][3].
6290
+ #
6225
6291
  #
6226
6292
  #
6227
6293
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources
6228
6294
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
6295
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
6229
6296
  #
6230
6297
  # @option params [required, String] :bucket
6231
6298
  # The bucket name.
@@ -6233,19 +6300,19 @@ module Aws::S3
6233
6300
  # When using this action with an access point, you must direct requests
6234
6301
  # to the access point hostname. The access point hostname takes the form
6235
6302
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
6236
- # When using this action with an access point through the AWS SDKs, you
6237
- # provide the access point ARN in place of the bucket name. For more
6238
- # information about access point ARNs, see [Using access points][1] in
6239
- # the *Amazon S3 User Guide*.
6303
+ # When using this action with an access point through the Amazon Web
6304
+ # Services SDKs, you provide the access point ARN in place of the bucket
6305
+ # name. For more information about access point ARNs, see [Using access
6306
+ # points][1] in the *Amazon S3 User Guide*.
6240
6307
  #
6241
6308
  # When using this action with Amazon S3 on Outposts, you must direct
6242
6309
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6243
6310
  # takes the form
6244
6311
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
6245
- # When using this action using S3 on Outposts through the AWS SDKs, you
6246
- # provide the Outposts bucket ARN in place of the bucket name. For more
6247
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
6248
- # in the *Amazon S3 User Guide*.
6312
+ # When using this action using S3 on Outposts through the Amazon Web
6313
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
6314
+ # bucket name. For more information about S3 on Outposts ARNs, see
6315
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
6249
6316
  #
6250
6317
  #
6251
6318
  #
@@ -6318,10 +6385,10 @@ module Aws::S3
6318
6385
  #
6319
6386
  # <note markdown="1"> * Encryption request headers, like `x-amz-server-side-encryption`,
6320
6387
  # should not be sent for GET requests if your object uses server-side
6321
- # encryption with CMKs stored in AWS KMS (SSE-KMS) or server-side
6322
- # encryption with Amazon S3–managed encryption keys (SSE-S3). If your
6323
- # object does use these types of keys, you’ll get an HTTP 400
6324
- # BadRequest error.
6388
+ # encryption with CMKs stored in Amazon Web Services KMS (SSE-KMS) or
6389
+ # server-side encryption with Amazon S3–managed encryption keys
6390
+ # (SSE-S3). If your object does use these types of keys, you’ll get an
6391
+ # HTTP 400 BadRequest error.
6325
6392
  #
6326
6393
  # * The last modified property in this case is the creation date of the
6327
6394
  # object.
@@ -6355,10 +6422,11 @@ module Aws::S3
6355
6422
  #
6356
6423
  # **Permissions**
6357
6424
  #
6358
- # You need the `s3:GetObject` permission for this operation. For more
6359
- # information, see [Specifying Permissions in a Policy][4]. If the
6360
- # object you request does not exist, the error Amazon S3 returns depends
6361
- # on whether you also have the s3:ListBucket permission.
6425
+ # You need the relevant read object (or version) permission for this
6426
+ # operation. For more information, see [Specifying Permissions in a
6427
+ # Policy][4]. If the object you request does not exist, the error Amazon
6428
+ # S3 returns depends on whether you also have the s3:ListBucket
6429
+ # permission.
6362
6430
  #
6363
6431
  # * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
6364
6432
  # returns an HTTP status code 404 ("no such key") error.
@@ -6386,19 +6454,19 @@ module Aws::S3
6386
6454
  # When using this action with an access point, you must direct requests
6387
6455
  # to the access point hostname. The access point hostname takes the form
6388
6456
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
6389
- # When using this action with an access point through the AWS SDKs, you
6390
- # provide the access point ARN in place of the bucket name. For more
6391
- # information about access point ARNs, see [Using access points][1] in
6392
- # the *Amazon S3 User Guide*.
6457
+ # When using this action with an access point through the Amazon Web
6458
+ # Services SDKs, you provide the access point ARN in place of the bucket
6459
+ # name. For more information about access point ARNs, see [Using access
6460
+ # points][1] in the *Amazon S3 User Guide*.
6393
6461
  #
6394
6462
  # When using this action with Amazon S3 on Outposts, you must direct
6395
6463
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
6396
6464
  # takes the form
6397
6465
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
6398
- # When using this action using S3 on Outposts through the AWS SDKs, you
6399
- # provide the Outposts bucket ARN in place of the bucket name. For more
6400
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
6401
- # in the *Amazon S3 User Guide*.
6466
+ # When using this action using S3 on Outposts through the Amazon Web
6467
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
6468
+ # bucket name. For more information about S3 on Outposts ARNs, see
6469
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
6402
6470
  #
6403
6471
  #
6404
6472
  #
@@ -7093,19 +7161,19 @@ module Aws::S3
7093
7161
  # When using this action with an access point, you must direct requests
7094
7162
  # to the access point hostname. The access point hostname takes the form
7095
7163
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7096
- # When using this action with an access point through the AWS SDKs, you
7097
- # provide the access point ARN in place of the bucket name. For more
7098
- # information about access point ARNs, see [Using access points][1] in
7099
- # the *Amazon S3 User Guide*.
7164
+ # When using this action with an access point through the Amazon Web
7165
+ # Services SDKs, you provide the access point ARN in place of the bucket
7166
+ # name. For more information about access point ARNs, see [Using access
7167
+ # points][1] in the *Amazon S3 User Guide*.
7100
7168
  #
7101
7169
  # When using this action with Amazon S3 on Outposts, you must direct
7102
7170
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7103
7171
  # takes the form
7104
7172
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7105
- # When using this action using S3 on Outposts through the AWS SDKs, you
7106
- # provide the Outposts bucket ARN in place of the bucket name. For more
7107
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
7108
- # in the *Amazon S3 User Guide*.
7173
+ # When using this action using S3 on Outposts through the Amazon Web
7174
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
7175
+ # bucket name. For more information about S3 on Outposts ARNs, see
7176
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
7109
7177
  #
7110
7178
  #
7111
7179
  #
@@ -7185,97 +7253,97 @@ module Aws::S3
7185
7253
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7186
7254
  #
7187
7255
  #
7188
- # @example Example: To list in-progress multipart uploads on a bucket
7256
+ # @example Example: List next set of multipart uploads when previous result is truncated
7189
7257
  #
7190
- # # The following example lists in-progress multipart uploads on a specific bucket.
7258
+ # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
7259
+ # # setup of multipart uploads.
7191
7260
  #
7192
7261
  # resp = client.list_multipart_uploads({
7193
7262
  # bucket: "examplebucket",
7263
+ # key_marker: "nextkeyfrompreviousresponse",
7264
+ # max_uploads: 2,
7265
+ # upload_id_marker: "valuefrompreviousresponse",
7194
7266
  # })
7195
7267
  #
7196
7268
  # resp.to_h outputs the following:
7197
7269
  # {
7270
+ # bucket: "acl1",
7271
+ # is_truncated: true,
7272
+ # key_marker: "",
7273
+ # max_uploads: 2,
7274
+ # next_key_marker: "someobjectkey",
7275
+ # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7276
+ # upload_id_marker: "",
7198
7277
  # uploads: [
7199
7278
  # {
7200
7279
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
7201
7280
  # initiator: {
7202
- # display_name: "display-name",
7281
+ # display_name: "ownder-display-name",
7203
7282
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7204
7283
  # },
7205
7284
  # key: "JavaFile",
7206
7285
  # owner: {
7207
- # display_name: "display-name",
7208
- # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7286
+ # display_name: "mohanataws",
7287
+ # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7209
7288
  # },
7210
7289
  # storage_class: "STANDARD",
7211
- # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7290
+ # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7212
7291
  # },
7213
7292
  # {
7214
7293
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
7215
7294
  # initiator: {
7216
- # display_name: "display-name",
7295
+ # display_name: "ownder-display-name",
7217
7296
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7218
7297
  # },
7219
7298
  # key: "JavaFile",
7220
7299
  # owner: {
7221
- # display_name: "display-name",
7300
+ # display_name: "ownder-display-name",
7222
7301
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7223
7302
  # },
7224
7303
  # storage_class: "STANDARD",
7225
- # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7304
+ # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7226
7305
  # },
7227
7306
  # ],
7228
7307
  # }
7229
7308
  #
7230
- # @example Example: List next set of multipart uploads when previous result is truncated
7309
+ # @example Example: To list in-progress multipart uploads on a bucket
7231
7310
  #
7232
- # # The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next
7233
- # # setup of multipart uploads.
7311
+ # # The following example lists in-progress multipart uploads on a specific bucket.
7234
7312
  #
7235
7313
  # resp = client.list_multipart_uploads({
7236
7314
  # bucket: "examplebucket",
7237
- # key_marker: "nextkeyfrompreviousresponse",
7238
- # max_uploads: 2,
7239
- # upload_id_marker: "valuefrompreviousresponse",
7240
7315
  # })
7241
7316
  #
7242
7317
  # resp.to_h outputs the following:
7243
7318
  # {
7244
- # bucket: "acl1",
7245
- # is_truncated: true,
7246
- # key_marker: "",
7247
- # max_uploads: 2,
7248
- # next_key_marker: "someobjectkey",
7249
- # next_upload_id_marker: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7250
- # upload_id_marker: "",
7251
7319
  # uploads: [
7252
7320
  # {
7253
7321
  # initiated: Time.parse("2014-05-01T05:40:58.000Z"),
7254
7322
  # initiator: {
7255
- # display_name: "ownder-display-name",
7323
+ # display_name: "display-name",
7256
7324
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7257
7325
  # },
7258
7326
  # key: "JavaFile",
7259
7327
  # owner: {
7260
- # display_name: "mohanataws",
7261
- # id: "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7328
+ # display_name: "display-name",
7329
+ # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7262
7330
  # },
7263
7331
  # storage_class: "STANDARD",
7264
- # upload_id: "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7332
+ # upload_id: "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--",
7265
7333
  # },
7266
7334
  # {
7267
7335
  # initiated: Time.parse("2014-05-01T05:41:27.000Z"),
7268
7336
  # initiator: {
7269
- # display_name: "ownder-display-name",
7337
+ # display_name: "display-name",
7270
7338
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7271
7339
  # },
7272
7340
  # key: "JavaFile",
7273
7341
  # owner: {
7274
- # display_name: "ownder-display-name",
7342
+ # display_name: "display-name",
7275
7343
  # id: "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc",
7276
7344
  # },
7277
7345
  # storage_class: "STANDARD",
7278
- # upload_id: "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7346
+ # upload_id: "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--",
7279
7347
  # },
7280
7348
  # ],
7281
7349
  # }
@@ -7558,19 +7626,19 @@ module Aws::S3
7558
7626
  # When using this action with an access point, you must direct requests
7559
7627
  # to the access point hostname. The access point hostname takes the form
7560
7628
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7561
- # When using this action with an access point through the AWS SDKs, you
7562
- # provide the access point ARN in place of the bucket name. For more
7563
- # information about access point ARNs, see [Using access points][1] in
7564
- # the *Amazon S3 User Guide*.
7629
+ # When using this action with an access point through the Amazon Web
7630
+ # Services SDKs, you provide the access point ARN in place of the bucket
7631
+ # name. For more information about access point ARNs, see [Using access
7632
+ # points][1] in the *Amazon S3 User Guide*.
7565
7633
  #
7566
7634
  # When using this action with Amazon S3 on Outposts, you must direct
7567
7635
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7568
7636
  # takes the form
7569
7637
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7570
- # When using this action using S3 on Outposts through the AWS SDKs, you
7571
- # provide the Outposts bucket ARN in place of the bucket name. For more
7572
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
7573
- # in the *Amazon S3 User Guide*.
7638
+ # When using this action using S3 on Outposts through the Amazon Web
7639
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
7640
+ # bucket name. For more information about S3 on Outposts ARNs, see
7641
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
7574
7642
  #
7575
7643
  #
7576
7644
  #
@@ -7589,7 +7657,9 @@ module Aws::S3
7589
7657
  # parameter to request that Amazon S3 encode the keys in the response.
7590
7658
  #
7591
7659
  # @option params [String] :marker
7592
- # Specifies the key to start with when listing objects in a bucket.
7660
+ # Marker is where you want Amazon S3 to start listing from. Amazon S3
7661
+ # starts listing after this specified key. Marker can be any key in the
7662
+ # bucket.
7593
7663
  #
7594
7664
  # @option params [Integer] :max_keys
7595
7665
  # Sets the maximum number of keys returned in the response. By default
@@ -7717,10 +7787,10 @@ module Aws::S3
7717
7787
  #
7718
7788
  # To use this operation, you must have READ access to the bucket.
7719
7789
  #
7720
- # To use this action in an AWS Identity and Access Management (IAM)
7721
- # policy, you must have permissions to perform the `s3:ListBucket`
7722
- # action. The bucket owner has this permission by default and can grant
7723
- # this permission to others. For more information about permissions, see
7790
+ # To use this action in an Identity and Access Management (IAM) policy,
7791
+ # you must have permissions to perform the `s3:ListBucket` action. The
7792
+ # bucket owner has this permission by default and can grant this
7793
+ # permission to others. For more information about permissions, see
7724
7794
  # [Permissions Related to Bucket Subresource Operations][2] and
7725
7795
  # [Managing Access Permissions to Your Amazon S3 Resources][3].
7726
7796
  #
@@ -7756,19 +7826,19 @@ module Aws::S3
7756
7826
  # When using this action with an access point, you must direct requests
7757
7827
  # to the access point hostname. The access point hostname takes the form
7758
7828
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7759
- # When using this action with an access point through the AWS SDKs, you
7760
- # provide the access point ARN in place of the bucket name. For more
7761
- # information about access point ARNs, see [Using access points][1] in
7762
- # the *Amazon S3 User Guide*.
7829
+ # When using this action with an access point through the Amazon Web
7830
+ # Services SDKs, you provide the access point ARN in place of the bucket
7831
+ # name. For more information about access point ARNs, see [Using access
7832
+ # points][1] in the *Amazon S3 User Guide*.
7763
7833
  #
7764
7834
  # When using this action with Amazon S3 on Outposts, you must direct
7765
7835
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7766
7836
  # takes the form
7767
7837
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7768
- # When using this action using S3 on Outposts through the AWS SDKs, you
7769
- # provide the Outposts bucket ARN in place of the bucket name. For more
7770
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
7771
- # in the *Amazon S3 User Guide*.
7838
+ # When using this action using S3 on Outposts through the Amazon Web
7839
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
7840
+ # bucket name. For more information about S3 on Outposts ARNs, see
7841
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
7772
7842
  #
7773
7843
  #
7774
7844
  #
@@ -7962,19 +8032,19 @@ module Aws::S3
7962
8032
  # When using this action with an access point, you must direct requests
7963
8033
  # to the access point hostname. The access point hostname takes the form
7964
8034
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
7965
- # When using this action with an access point through the AWS SDKs, you
7966
- # provide the access point ARN in place of the bucket name. For more
7967
- # information about access point ARNs, see [Using access points][1] in
7968
- # the *Amazon S3 User Guide*.
8035
+ # When using this action with an access point through the Amazon Web
8036
+ # Services SDKs, you provide the access point ARN in place of the bucket
8037
+ # name. For more information about access point ARNs, see [Using access
8038
+ # points][1] in the *Amazon S3 User Guide*.
7969
8039
  #
7970
8040
  # When using this action with Amazon S3 on Outposts, you must direct
7971
8041
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
7972
8042
  # takes the form
7973
8043
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
7974
- # When using this action using S3 on Outposts through the AWS SDKs, you
7975
- # provide the Outposts bucket ARN in place of the bucket name. For more
7976
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
7977
- # in the *Amazon S3 User Guide*.
8044
+ # When using this action using S3 on Outposts through the Amazon Web
8045
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
8046
+ # bucket name. For more information about S3 on Outposts ARNs, see
8047
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
7978
8048
  #
7979
8049
  #
7980
8050
  #
@@ -8225,26 +8295,26 @@ module Aws::S3
8225
8295
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
8226
8296
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
8227
8297
  # `x-amz-grant-full-control` headers. When using these headers, you
8228
- # specify explicit access permissions and grantees (AWS accounts or
8229
- # Amazon S3 groups) who will receive the permission. If you use these
8230
- # ACL-specific headers, you cannot use the `x-amz-acl` header to set a
8231
- # canned ACL. These parameters map to the set of permissions that
8232
- # Amazon S3 supports in an ACL. For more information, see [Access
8233
- # Control List (ACL) Overview][3].
8298
+ # specify explicit access permissions and grantees (Amazon Web
8299
+ # Services accounts or Amazon S3 groups) who will receive the
8300
+ # permission. If you use these ACL-specific headers, you cannot use
8301
+ # the `x-amz-acl` header to set a canned ACL. These parameters map to
8302
+ # the set of permissions that Amazon S3 supports in an ACL. For more
8303
+ # information, see [Access Control List (ACL) Overview][3].
8234
8304
  #
8235
8305
  # You specify each grantee as a type=value pair, where the type is one
8236
8306
  # of the following:
8237
8307
  #
8238
- # * `id` – if the value specified is the canonical user ID of an AWS
8239
- # account
8308
+ # * `id` – if the value specified is the canonical user ID of an
8309
+ # Amazon Web Services account
8240
8310
  #
8241
8311
  # * `uri` – if you are granting permissions to a predefined group
8242
8312
  #
8243
8313
  # * `emailAddress` – if the value specified is the email address of an
8244
- # AWS account
8314
+ # Amazon Web Services account
8245
8315
  #
8246
8316
  # <note markdown="1"> Using email addresses to specify a grantee is only supported in
8247
- # the following AWS Regions:
8317
+ # the following Amazon Web Services Regions:
8248
8318
  #
8249
8319
  # * US East (N. Virginia)
8250
8320
  #
@@ -8263,14 +8333,15 @@ module Aws::S3
8263
8333
  # * South America (São Paulo)
8264
8334
  #
8265
8335
  # For a list of all the Amazon S3 supported Regions and endpoints,
8266
- # see [Regions and Endpoints][4] in the AWS General Reference.
8336
+ # see [Regions and Endpoints][4] in the Amazon Web Services General
8337
+ # Reference.
8267
8338
  #
8268
8339
  # </note>
8269
8340
  #
8270
8341
  # For example, the following `x-amz-grant-write` header grants create,
8271
8342
  # overwrite, and delete objects permission to LogDelivery group
8272
- # predefined by Amazon S3 and two AWS accounts identified by their
8273
- # email addresses.
8343
+ # predefined by Amazon S3 and two Amazon Web Services accounts
8344
+ # identified by their email addresses.
8274
8345
  #
8275
8346
  # `x-amz-grant-write:
8276
8347
  # uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
@@ -8306,7 +8377,7 @@ module Aws::S3
8306
8377
  # GET Object acl request, appears as the CanonicalUser.
8307
8378
  #
8308
8379
  # <note markdown="1"> Using email addresses to specify a grantee is only supported in the
8309
- # following AWS Regions:
8380
+ # following Amazon Web Services Regions:
8310
8381
  #
8311
8382
  # * US East (N. Virginia)
8312
8383
  #
@@ -8325,7 +8396,8 @@ module Aws::S3
8325
8396
  # * South America (São Paulo)
8326
8397
  #
8327
8398
  # For a list of all the Amazon S3 supported Regions and endpoints, see
8328
- # [Regions and Endpoints][4] in the AWS General Reference.
8399
+ # [Regions and Endpoints][4] in the Amazon Web Services General
8400
+ # Reference.
8329
8401
  #
8330
8402
  # </note>
8331
8403
  #
@@ -8362,8 +8434,9 @@ module Aws::S3
8362
8434
  # used as a message integrity check to verify that the request body was
8363
8435
  # not corrupted in transit. For more information, go to [RFC 1864.][1]
8364
8436
  #
8365
- # For requests made using the AWS Command Line Interface (CLI) or AWS
8366
- # SDKs, this field is calculated automatically.
8437
+ # For requests made using the Amazon Web Services Command Line Interface
8438
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
8439
+ # automatically.
8367
8440
  #
8368
8441
  #
8369
8442
  #
@@ -8652,8 +8725,9 @@ module Aws::S3
8652
8725
  # used as a message integrity check to verify that the request body was
8653
8726
  # not corrupted in transit. For more information, go to [RFC 1864.][1]
8654
8727
  #
8655
- # For requests made using the AWS Command Line Interface (CLI) or AWS
8656
- # SDKs, this field is calculated automatically.
8728
+ # For requests made using the Amazon Web Services Command Line Interface
8729
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
8730
+ # automatically.
8657
8731
  #
8658
8732
  #
8659
8733
  #
@@ -8743,15 +8817,16 @@ module Aws::S3
8743
8817
  # encryption and Amazon S3 Bucket Key for an existing bucket.
8744
8818
  #
8745
8819
  # Default encryption for a bucket can use server-side encryption with
8746
- # Amazon S3-managed keys (SSE-S3) or AWS KMS customer master keys
8747
- # (SSE-KMS). If you specify default encryption using SSE-KMS, you can
8748
- # also configure Amazon S3 Bucket Key. For information about default
8749
- # encryption, see [Amazon S3 default bucket encryption][1] in the
8750
- # *Amazon S3 User Guide*. For more information about S3 Bucket Keys, see
8751
- # [Amazon S3 Bucket Keys][2] in the *Amazon S3 User Guide*.
8820
+ # Amazon S3-managed keys (SSE-S3) or Amazon Web Services KMS customer
8821
+ # master keys (SSE-KMS). If you specify default encryption using
8822
+ # SSE-KMS, you can also configure Amazon S3 Bucket Key. For information
8823
+ # about default encryption, see [Amazon S3 default bucket encryption][1]
8824
+ # in the *Amazon S3 User Guide*. For more information about S3 Bucket
8825
+ # Keys, see [Amazon S3 Bucket Keys][2] in the *Amazon S3 User Guide*.
8752
8826
  #
8753
- # This action requires AWS Signature Version 4. For more information,
8754
- # see [ Authenticating Requests (AWS Signature Version 4)][3].
8827
+ # This action requires Amazon Web Services Signature Version 4. For more
8828
+ # information, see [ Authenticating Requests (Amazon Web Services
8829
+ # Signature Version 4)][3].
8755
8830
  #
8756
8831
  # To use this operation, you must have permissions to perform the
8757
8832
  # `s3:PutEncryptionConfiguration` action. The bucket owner has this
@@ -8780,9 +8855,9 @@ module Aws::S3
8780
8855
  # @option params [required, String] :bucket
8781
8856
  # Specifies default encryption for a bucket using server-side encryption
8782
8857
  # with Amazon S3-managed keys (SSE-S3) or customer master keys stored in
8783
- # AWS KMS (SSE-KMS). For information about the Amazon S3 default
8784
- # encryption feature, see [Amazon S3 Default Bucket Encryption][1] in
8785
- # the *Amazon S3 User Guide*.
8858
+ # Amazon Web Services KMS (SSE-KMS). For information about the Amazon S3
8859
+ # default encryption feature, see [Amazon S3 Default Bucket
8860
+ # Encryption][1] in the *Amazon S3 User Guide*.
8786
8861
  #
8787
8862
  #
8788
8863
  #
@@ -8792,8 +8867,9 @@ module Aws::S3
8792
8867
  # The base64-encoded 128-bit MD5 digest of the server-side encryption
8793
8868
  # configuration.
8794
8869
  #
8795
- # For requests made using the AWS Command Line Interface (CLI) or AWS
8796
- # SDKs, this field is calculated automatically.
8870
+ # For requests made using the Amazon Web Services Command Line Interface
8871
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
8872
+ # automatically.
8797
8873
  #
8798
8874
  # @option params [required, Types::ServerSideEncryptionConfiguration] :server_side_encryption_configuration
8799
8875
  # Specifies the default server-side-encryption configuration.
@@ -8962,8 +9038,8 @@ module Aws::S3
8962
9038
  # on a daily or weekly basis, and the results are published to a flat
8963
9039
  # file. The bucket that is inventoried is called the *source* bucket,
8964
9040
  # and the bucket where the inventory flat file is stored is called the
8965
- # *destination* bucket. The *destination* bucket must be in the same AWS
8966
- # Region as the *source* bucket.
9041
+ # *destination* bucket. The *destination* bucket must be in the same
9042
+ # Amazon Web Services Region as the *source* bucket.
8967
9043
  #
8968
9044
  # When you configure an inventory for a *source* bucket, you specify the
8969
9045
  # *destination* bucket where you want the inventory to be stored, and
@@ -9098,10 +9174,10 @@ module Aws::S3
9098
9174
  #
9099
9175
  # By default, all Amazon S3 resources, including buckets, objects, and
9100
9176
  # related subresources (for example, lifecycle configuration and website
9101
- # configuration) are private. Only the resource owner, the AWS account
9102
- # that created the resource, can access it. The resource owner can
9103
- # optionally grant access permissions to others by writing an access
9104
- # policy. For this operation, users must get the
9177
+ # configuration) are private. Only the resource owner, the Amazon Web
9178
+ # Services account that created the resource, can access it. The
9179
+ # resource owner can optionally grant access permissions to others by
9180
+ # writing an access policy. For this operation, users must get the
9105
9181
  # `s3:PutLifecycleConfiguration` permission.
9106
9182
  #
9107
9183
  # You can also explicitly deny permissions. Explicit denial also
@@ -9132,10 +9208,10 @@ module Aws::S3
9132
9208
  # * [RestoreObject][7]
9133
9209
  #
9134
9210
  # * By default, a resource owner—in this case, a bucket owner, which is
9135
- # the AWS account that created the bucket—can perform any of the
9136
- # operations. A resource owner can also grant others permission to
9137
- # perform the operation. For more information, see the following
9138
- # topics in the Amazon S3 User Guide:
9211
+ # the Amazon Web Services account that created the bucket—can perform
9212
+ # any of the operations. A resource owner can also grant others
9213
+ # permission to perform the operation. For more information, see the
9214
+ # following topics in the Amazon S3 User Guide:
9139
9215
  #
9140
9216
  # * [Specifying Permissions in a Policy][8]
9141
9217
  #
@@ -9155,8 +9231,9 @@ module Aws::S3
9155
9231
  # @option params [required, String] :bucket
9156
9232
  #
9157
9233
  # @option params [String] :content_md5
9158
- # For requests made using the AWS Command Line Interface (CLI) or AWS
9159
- # SDKs, this field is calculated automatically.
9234
+ # For requests made using the Amazon Web Services Command Line Interface
9235
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
9236
+ # automatically.
9160
9237
  #
9161
9238
  # @option params [Types::LifecycleConfiguration] :lifecycle_configuration
9162
9239
  #
@@ -9255,10 +9332,10 @@ module Aws::S3
9255
9332
  # By default, all Amazon S3 resources are private, including buckets,
9256
9333
  # objects, and related subresources (for example, lifecycle
9257
9334
  # configuration and website configuration). Only the resource owner
9258
- # (that is, the AWS account that created it) can access the resource.
9259
- # The resource owner can optionally grant access permissions to others
9260
- # by writing an access policy. For this operation, a user must get the
9261
- # s3:PutLifecycleConfiguration permission.
9335
+ # (that is, the Amazon Web Services account that created it) can access
9336
+ # the resource. The resource owner can optionally grant access
9337
+ # permissions to others by writing an access policy. For this operation,
9338
+ # a user must get the s3:PutLifecycleConfiguration permission.
9262
9339
  #
9263
9340
  # You can also explicitly deny permissions. Explicit deny also
9264
9341
  # supersedes any other permissions. If you want to block users or
@@ -9402,8 +9479,8 @@ module Aws::S3
9402
9479
 
9403
9480
  # Set the logging parameters for a bucket and to specify permissions for
9404
9481
  # who can view and modify the logging parameters. All logs are saved to
9405
- # buckets in the same AWS Region as the source bucket. To set the
9406
- # logging status of a bucket, you must be the bucket owner.
9482
+ # buckets in the same Amazon Web Services Region as the source bucket.
9483
+ # To set the logging status of a bucket, you must be the bucket owner.
9407
9484
  #
9408
9485
  # The bucket owner is automatically granted FULL\_CONTROL to all logs.
9409
9486
  # You use the `Grantee` request element to grant access to other people.
@@ -9477,8 +9554,9 @@ module Aws::S3
9477
9554
  # @option params [String] :content_md5
9478
9555
  # The MD5 hash of the `PutBucketLogging` request body.
9479
9556
  #
9480
- # For requests made using the AWS Command Line Interface (CLI) or AWS
9481
- # SDKs, this field is calculated automatically.
9557
+ # For requests made using the Amazon Web Services Command Line Interface
9558
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
9559
+ # automatically.
9482
9560
  #
9483
9561
  # @option params [String] :expected_bucket_owner
9484
9562
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -9656,8 +9734,9 @@ module Aws::S3
9656
9734
  # @option params [String] :content_md5
9657
9735
  # The MD5 hash of the `PutPublicAccessBlock` request body.
9658
9736
  #
9659
- # For requests made using the AWS Command Line Interface (CLI) or AWS
9660
- # SDKs, this field is calculated automatically.
9737
+ # For requests made using the Amazon Web Services Command Line Interface
9738
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
9739
+ # automatically.
9661
9740
  #
9662
9741
  # @option params [required, Types::NotificationConfigurationDeprecated] :notification_configuration
9663
9742
  # The container for the configuration.
@@ -9732,7 +9811,7 @@ module Aws::S3
9732
9811
  # Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue
9733
9812
  # Service (Amazon SQS) destination exists, and that the bucket owner has
9734
9813
  # permission to publish to it by sending a test notification. In the
9735
- # case of AWS Lambda destinations, Amazon S3 verifies that the Lambda
9814
+ # case of Lambda destinations, Amazon S3 verifies that the Lambda
9736
9815
  # function permissions grant Amazon S3 permission to invoke the function
9737
9816
  # from the Amazon S3 bucket. For more information, see [Configuring
9738
9817
  # Notifications for Amazon S3 Events][1].
@@ -9903,8 +9982,9 @@ module Aws::S3
9903
9982
  # @option params [String] :content_md5
9904
9983
  # The MD5 hash of the `OwnershipControls` request body.
9905
9984
  #
9906
- # For requests made using the AWS Command Line Interface (CLI) or AWS
9907
- # SDKs, this field is calculated automatically.
9985
+ # For requests made using the Amazon Web Services Command Line Interface
9986
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
9987
+ # automatically.
9908
9988
  #
9909
9989
  # @option params [String] :expected_bucket_owner
9910
9990
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -9942,22 +10022,22 @@ module Aws::S3
9942
10022
  end
9943
10023
 
9944
10024
  # Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are
9945
- # using an identity other than the root user of the AWS account that
9946
- # owns the bucket, the calling identity must have the `PutBucketPolicy`
9947
- # permissions on the specified bucket and belong to the bucket owner's
9948
- # account in order to use this operation.
10025
+ # using an identity other than the root user of the Amazon Web Services
10026
+ # account that owns the bucket, the calling identity must have the
10027
+ # `PutBucketPolicy` permissions on the specified bucket and belong to
10028
+ # the bucket owner's account in order to use this operation.
9949
10029
  #
9950
10030
  # If you don't have `PutBucketPolicy` permissions, Amazon S3 returns a
9951
10031
  # `403 Access Denied` error. If you have the correct permissions, but
9952
10032
  # you're not using an identity that belongs to the bucket owner's
9953
10033
  # account, Amazon S3 returns a `405 Method Not Allowed` error.
9954
10034
  #
9955
- # As a security precaution, the root user of the AWS account that owns a
9956
- # bucket can always use this operation, even if the policy explicitly
9957
- # denies the root user the ability to perform this action.
10035
+ # As a security precaution, the root user of the Amazon Web Services
10036
+ # account that owns a bucket can always use this operation, even if the
10037
+ # policy explicitly denies the root user the ability to perform this
10038
+ # action.
9958
10039
  #
9959
- # For more information about bucket policies, see [Using Bucket Policies
9960
- # and User Policies][1].
10040
+ # For more information, see [Bucket policy examples][1].
9961
10041
  #
9962
10042
  # The following operations are related to `PutBucketPolicy`\:
9963
10043
  #
@@ -9967,7 +10047,7 @@ module Aws::S3
9967
10047
  #
9968
10048
  #
9969
10049
  #
9970
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
10050
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html
9971
10051
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
9972
10052
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
9973
10053
  #
@@ -9977,8 +10057,9 @@ module Aws::S3
9977
10057
  # @option params [String] :content_md5
9978
10058
  # The MD5 hash of the request body.
9979
10059
  #
9980
- # For requests made using the AWS Command Line Interface (CLI) or AWS
9981
- # SDKs, this field is calculated automatically.
10060
+ # For requests made using the Amazon Web Services Command Line Interface
10061
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
10062
+ # automatically.
9982
10063
  #
9983
10064
  # @option params [Boolean] :confirm_remove_self_bucket_access
9984
10065
  # Set this parameter to true to confirm that you want to remove your
@@ -10026,11 +10107,6 @@ module Aws::S3
10026
10107
  # Creates a replication configuration or replaces an existing one. For
10027
10108
  # more information, see [Replication][1] in the *Amazon S3 User Guide*.
10028
10109
  #
10029
- # <note markdown="1"> To perform this operation, the user or role performing the action must
10030
- # have the [iam:PassRole][2] permission.
10031
- #
10032
- # </note>
10033
- #
10034
10110
  # Specify the replication configuration in the request body. In the
10035
10111
  # replication configuration, you provide the name of the destination
10036
10112
  # bucket or buckets where you want Amazon S3 to replicate objects, the
@@ -10052,32 +10128,43 @@ module Aws::S3
10052
10128
  #
10053
10129
  # <note markdown="1"> If you are using an earlier version of the replication configuration,
10054
10130
  # Amazon S3 handles replication of delete markers differently. For more
10055
- # information, see [Backward Compatibility][3].
10131
+ # information, see [Backward Compatibility][2].
10056
10132
  #
10057
10133
  # </note>
10058
10134
  #
10059
10135
  # For information about enabling versioning on a bucket, see [Using
10060
- # Versioning][4].
10061
- #
10062
- # By default, a resource owner, in this case the AWS account that
10063
- # created the bucket, can perform this operation. The resource owner can
10064
- # also grant others permissions to perform the operation. For more
10065
- # information about permissions, see [Specifying Permissions in a
10066
- # Policy][5] and [Managing Access Permissions to Your Amazon S3
10067
- # Resources][6].
10136
+ # Versioning][3].
10068
10137
  #
10069
10138
  # **Handling Replication of Encrypted Objects**
10070
10139
  #
10071
10140
  # By default, Amazon S3 doesn't replicate objects that are stored at
10072
- # rest using server-side encryption with CMKs stored in AWS KMS. To
10073
- # replicate AWS KMS-encrypted objects, add the following:
10074
- # `SourceSelectionCriteria`, `SseKmsEncryptedObjects`, `Status`,
10075
- # `EncryptionConfiguration`, and `ReplicaKmsKeyID`. For information
10076
- # about replication configuration, see [Replicating Objects Created with
10077
- # SSE Using CMKs stored in AWS KMS][7].
10141
+ # rest using server-side encryption with CMKs stored in Amazon Web
10142
+ # Services KMS. To replicate Amazon Web Services KMS-encrypted objects,
10143
+ # add the following: `SourceSelectionCriteria`,
10144
+ # `SseKmsEncryptedObjects`, `Status`, `EncryptionConfiguration`, and
10145
+ # `ReplicaKmsKeyID`. For information about replication configuration,
10146
+ # see [Replicating Objects Created with SSE Using CMKs stored in Amazon
10147
+ # Web Services KMS][4].
10078
10148
  #
10079
10149
  # For information on `PutBucketReplication` errors, see [List of
10080
- # replication-related error codes][8]
10150
+ # replication-related error codes][5]
10151
+ #
10152
+ # **Permissions**
10153
+ #
10154
+ # To create a `PutBucketReplication` request, you must have
10155
+ # `s3:PutReplicationConfiguration` permissions for the bucket.
10156
+ #
10157
+ # By default, a resource owner, in this case the Amazon Web Services
10158
+ # account that created the bucket, can perform this operation. The
10159
+ # resource owner can also grant others permissions to perform the
10160
+ # operation. For more information about permissions, see [Specifying
10161
+ # Permissions in a Policy][6] and [Managing Access Permissions to Your
10162
+ # Amazon S3 Resources][7].
10163
+ #
10164
+ # <note markdown="1"> To perform this operation, the user or role performing the action must
10165
+ # have the [iam:PassRole][8] permission.
10166
+ #
10167
+ # </note>
10081
10168
  #
10082
10169
  # The following operations are related to `PutBucketReplication`\:
10083
10170
  #
@@ -10088,13 +10175,13 @@ module Aws::S3
10088
10175
  #
10089
10176
  #
10090
10177
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html
10091
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
10092
- # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations
10093
- # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html
10094
- # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
10095
- # [6]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
10096
- # [7]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html
10097
- # [8]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList
10178
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations
10179
+ # [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html
10180
+ # [4]: https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html
10181
+ # [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList
10182
+ # [6]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
10183
+ # [7]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
10184
+ # [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
10098
10185
  # [9]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html
10099
10186
  # [10]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html
10100
10187
  #
@@ -10106,8 +10193,9 @@ module Aws::S3
10106
10193
  # header as a message integrity check to verify that the request body
10107
10194
  # was not corrupted in transit. For more information, see [RFC 1864][1].
10108
10195
  #
10109
- # For requests made using the AWS Command Line Interface (CLI) or AWS
10110
- # SDKs, this field is calculated automatically.
10196
+ # For requests made using the Amazon Web Services Command Line Interface
10197
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
10198
+ # automatically.
10111
10199
  #
10112
10200
  #
10113
10201
  #
@@ -10257,8 +10345,9 @@ module Aws::S3
10257
10345
  # header as a message integrity check to verify that the request body
10258
10346
  # was not corrupted in transit. For more information, see [RFC 1864][1].
10259
10347
  #
10260
- # For requests made using the AWS Command Line Interface (CLI) or AWS
10261
- # SDKs, this field is calculated automatically.
10348
+ # For requests made using the Amazon Web Services Command Line Interface
10349
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
10350
+ # automatically.
10262
10351
  #
10263
10352
  #
10264
10353
  #
@@ -10308,15 +10397,16 @@ module Aws::S3
10308
10397
 
10309
10398
  # Sets the tags for a bucket.
10310
10399
  #
10311
- # Use tags to organize your AWS bill to reflect your own cost structure.
10312
- # To do this, sign up to get your AWS account bill with tag key values
10313
- # included. Then, to see the cost of combined resources, organize your
10314
- # billing information according to resources with the same tag key
10315
- # values. For example, you can tag several resources with a specific
10316
- # application name, and then organize your billing information to see
10317
- # the total cost of that application across several services. For more
10318
- # information, see [Cost Allocation and Tagging][1] and [Using Cost
10319
- # Allocation in Amazon S3 Bucket Tags][2].
10400
+ # Use tags to organize your Amazon Web Services bill to reflect your own
10401
+ # cost structure. To do this, sign up to get your Amazon Web Services
10402
+ # account bill with tag key values included. Then, to see the cost of
10403
+ # combined resources, organize your billing information according to
10404
+ # resources with the same tag key values. For example, you can tag
10405
+ # several resources with a specific application name, and then organize
10406
+ # your billing information to see the total cost of that application
10407
+ # across several services. For more information, see [Cost Allocation
10408
+ # and Tagging][1] and [Using Cost Allocation in Amazon S3 Bucket
10409
+ # Tags][2].
10320
10410
  #
10321
10411
  # <note markdown="1"> When this operation sets the tags for a bucket, it will overwrite any
10322
10412
  # current tags the bucket already has. You cannot use this operation to
@@ -10338,7 +10428,8 @@ module Aws::S3
10338
10428
  # * Description: The tag provided was not a valid tag. This error can
10339
10429
  # occur if the tag did not pass input validation. For information
10340
10430
  # about tag restrictions, see [User-Defined Tag Restrictions][5] and
10341
- # [AWS-Generated Cost Allocation Tag Restrictions][6].
10431
+ # [Amazon Web Services-Generated Cost Allocation Tag
10432
+ # Restrictions][6].
10342
10433
  #
10343
10434
  # ^
10344
10435
  #
@@ -10387,8 +10478,9 @@ module Aws::S3
10387
10478
  # header as a message integrity check to verify that the request body
10388
10479
  # was not corrupted in transit. For more information, see [RFC 1864][1].
10389
10480
  #
10390
- # For requests made using the AWS Command Line Interface (CLI) or AWS
10391
- # SDKs, this field is calculated automatically.
10481
+ # For requests made using the Amazon Web Services Command Line Interface
10482
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
10483
+ # automatically.
10392
10484
  #
10393
10485
  #
10394
10486
  #
@@ -10503,8 +10595,9 @@ module Aws::S3
10503
10595
  # body was not corrupted in transit. For more information, see [RFC
10504
10596
  # 1864][1].
10505
10597
  #
10506
- # For requests made using the AWS Command Line Interface (CLI) or AWS
10507
- # SDKs, this field is calculated automatically.
10598
+ # For requests made using the Amazon Web Services Command Line Interface
10599
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
10600
+ # automatically.
10508
10601
  #
10509
10602
  #
10510
10603
  #
@@ -10640,8 +10733,9 @@ module Aws::S3
10640
10733
  # header as a message integrity check to verify that the request body
10641
10734
  # was not corrupted in transit. For more information, see [RFC 1864][1].
10642
10735
  #
10643
- # For requests made using the AWS Command Line Interface (CLI) or AWS
10644
- # SDKs, this field is calculated automatically.
10736
+ # For requests made using the Amazon Web Services Command Line Interface
10737
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
10738
+ # automatically.
10645
10739
  #
10646
10740
  #
10647
10741
  #
@@ -10738,10 +10832,16 @@ module Aws::S3
10738
10832
  # putting an object to Amazon S3 and compare the returned ETag to the
10739
10833
  # calculated MD5 value.
10740
10834
  #
10741
- # <note markdown="1"> The `Content-MD5` header is required for any request to upload an
10742
- # object with a retention period configured using Amazon S3 Object Lock.
10743
- # For more information about Amazon S3 Object Lock, see [Amazon S3
10744
- # Object Lock Overview][1] in the *Amazon S3 User Guide*.
10835
+ # <note markdown="1"> * To successfully complete the `PutObject` request, you must have the
10836
+ # `s3:PutObject` in your IAM permissions.
10837
+ #
10838
+ # * To successfully change the objects acl of your `PutObject` request,
10839
+ # you must have the `s3:PutObjectAcl` in your IAM permissions.
10840
+ #
10841
+ # * The `Content-MD5` header is required for any request to upload an
10842
+ # object with a retention period configured using Amazon S3 Object
10843
+ # Lock. For more information about Amazon S3 Object Lock, see [Amazon
10844
+ # S3 Object Lock Overview][1] in the *Amazon S3 User Guide*.
10745
10845
  #
10746
10846
  # </note>
10747
10847
  #
@@ -10750,22 +10850,22 @@ module Aws::S3
10750
10850
  # You can optionally request server-side encryption. With server-side
10751
10851
  # encryption, Amazon S3 encrypts your data as it writes it to disks in
10752
10852
  # its data centers and decrypts the data when you access it. You have
10753
- # the option to provide your own encryption key or use AWS managed
10754
- # encryption keys (SSE-S3 or SSE-KMS). For more information, see [Using
10755
- # Server-Side Encryption][2].
10853
+ # the option to provide your own encryption key or use Amazon Web
10854
+ # Services managed encryption keys (SSE-S3 or SSE-KMS). For more
10855
+ # information, see [Using Server-Side Encryption][2].
10756
10856
  #
10757
- # If you request server-side encryption using AWS Key Management Service
10758
- # (SSE-KMS), you can enable an S3 Bucket Key at the object-level. For
10759
- # more information, see [Amazon S3 Bucket Keys][3] in the *Amazon S3
10760
- # User Guide*.
10857
+ # If you request server-side encryption using Amazon Web Services Key
10858
+ # Management Service (SSE-KMS), you can enable an S3 Bucket Key at the
10859
+ # object-level. For more information, see [Amazon S3 Bucket Keys][3] in
10860
+ # the *Amazon S3 User Guide*.
10761
10861
  #
10762
10862
  # **Access Control List (ACL)-Specific Request Headers**
10763
10863
  #
10764
10864
  # You can use headers to grant ACL- based permissions. By default, all
10765
10865
  # objects are private. Only the owner has full access control. When
10766
- # adding a new object, you can grant permissions to individual AWS
10767
- # accounts or to predefined groups defined by Amazon S3. These
10768
- # permissions are then added to the ACL on the object. For more
10866
+ # adding a new object, you can grant permissions to individual Amazon
10867
+ # Web Services accounts or to predefined groups defined by Amazon S3.
10868
+ # These permissions are then added to the ACL on the object. For more
10769
10869
  # information, see [Access Control List (ACL) Overview][4] and [Managing
10770
10870
  # ACLs Using the REST API][5].
10771
10871
  #
@@ -10828,19 +10928,19 @@ module Aws::S3
10828
10928
  # When using this action with an access point, you must direct requests
10829
10929
  # to the access point hostname. The access point hostname takes the form
10830
10930
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
10831
- # When using this action with an access point through the AWS SDKs, you
10832
- # provide the access point ARN in place of the bucket name. For more
10833
- # information about access point ARNs, see [Using access points][1] in
10834
- # the *Amazon S3 User Guide*.
10931
+ # When using this action with an access point through the Amazon Web
10932
+ # Services SDKs, you provide the access point ARN in place of the bucket
10933
+ # name. For more information about access point ARNs, see [Using access
10934
+ # points][1] in the *Amazon S3 User Guide*.
10835
10935
  #
10836
10936
  # When using this action with Amazon S3 on Outposts, you must direct
10837
10937
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
10838
10938
  # takes the form
10839
10939
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
10840
- # When using this action using S3 on Outposts through the AWS SDKs, you
10841
- # provide the Outposts bucket ARN in place of the bucket name. For more
10842
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
10843
- # in the *Amazon S3 User Guide*.
10940
+ # When using this action using S3 on Outposts through the Amazon Web
10941
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
10942
+ # bucket name. For more information about S3 on Outposts ARNs, see
10943
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
10844
10944
  #
10845
10945
  #
10846
10946
  #
@@ -11005,19 +11105,19 @@ module Aws::S3
11005
11105
  #
11006
11106
  # @option params [String] :ssekms_key_id
11007
11107
  # If `x-amz-server-side-encryption` is present and has the value of
11008
- # `aws:kms`, this header specifies the ID of the AWS Key Management
11009
- # Service (AWS KMS) symmetrical customer managed customer master key
11010
- # (CMK) that was used for the object. If you specify
11011
- # `x-amz-server-side-encryption:aws:kms`, but do not provide`
11012
- # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the AWS
11013
- # managed CMK in AWS to protect the data. If the KMS key does not exist
11014
- # in the same account issuing the command, you must use the full ARN and
11015
- # not just the ID.
11108
+ # `aws:kms`, this header specifies the ID of the Amazon Web Services Key
11109
+ # Management Service (Amazon Web Services KMS) symmetrical customer
11110
+ # managed customer master key (CMK) that was used for the object. If you
11111
+ # specify `x-amz-server-side-encryption:aws:kms`, but do not provide`
11112
+ # x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
11113
+ # Amazon Web Services managed CMK in Amazon Web Services to protect the
11114
+ # data. If the KMS key does not exist in the same account issuing the
11115
+ # command, you must use the full ARN and not just the ID.
11016
11116
  #
11017
11117
  # @option params [String] :ssekms_encryption_context
11018
- # Specifies the AWS KMS Encryption Context to use for object encryption.
11019
- # The value of this header is a base64-encoded UTF-8 string holding JSON
11020
- # with the encryption context key-value pairs.
11118
+ # Specifies the Amazon Web Services KMS Encryption Context to use for
11119
+ # object encryption. The value of this header is a base64-encoded UTF-8
11120
+ # string holding JSON with the encryption context key-value pairs.
11021
11121
  #
11022
11122
  # @option params [Boolean] :bucket_key_enabled
11023
11123
  # Specifies whether Amazon S3 should use an S3 Bucket Key for object
@@ -11077,134 +11177,134 @@ module Aws::S3
11077
11177
  # * {Types::PutObjectOutput#request_charged #request_charged} => String
11078
11178
  #
11079
11179
  #
11080
- # @example Example: To upload an object
11180
+ # @example Example: To upload an object (specify optional headers)
11081
11181
  #
11082
- # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11083
- # # syntax. S3 returns VersionId of the newly created object.
11182
+ # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11183
+ # # storage class and use server-side encryption.
11084
11184
  #
11085
11185
  # resp = client.put_object({
11086
11186
  # body: "HappyFace.jpg",
11087
11187
  # bucket: "examplebucket",
11088
11188
  # key: "HappyFace.jpg",
11189
+ # server_side_encryption: "AES256",
11190
+ # storage_class: "STANDARD_IA",
11089
11191
  # })
11090
11192
  #
11091
11193
  # resp.to_h outputs the following:
11092
11194
  # {
11093
11195
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11094
- # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11196
+ # server_side_encryption: "AES256",
11197
+ # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11095
11198
  # }
11096
11199
  #
11097
- # @example Example: To upload object and specify user-defined metadata
11200
+ # @example Example: To upload an object and specify server-side encryption and object tags
11098
11201
  #
11099
- # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11100
- # # enabled, S3 returns version ID in response.
11202
+ # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
11203
+ # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
11101
11204
  #
11102
11205
  # resp = client.put_object({
11103
11206
  # body: "filetoupload",
11104
11207
  # bucket: "examplebucket",
11105
11208
  # key: "exampleobject",
11106
- # metadata: {
11107
- # "metadata1" => "value1",
11108
- # "metadata2" => "value2",
11109
- # },
11209
+ # server_side_encryption: "AES256",
11210
+ # tagging: "key1=value1&key2=value2",
11110
11211
  # })
11111
11212
  #
11112
11213
  # resp.to_h outputs the following:
11113
11214
  # {
11114
11215
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11115
- # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11216
+ # server_side_encryption: "AES256",
11217
+ # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11116
11218
  # }
11117
11219
  #
11118
- # @example Example: To upload an object (specify optional headers)
11220
+ # @example Example: To create an object.
11119
11221
  #
11120
- # # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
11121
- # # storage class and use server-side encryption.
11222
+ # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
11122
11223
  #
11123
11224
  # resp = client.put_object({
11124
- # body: "HappyFace.jpg",
11225
+ # body: "filetoupload",
11125
11226
  # bucket: "examplebucket",
11126
- # key: "HappyFace.jpg",
11127
- # server_side_encryption: "AES256",
11128
- # storage_class: "STANDARD_IA",
11227
+ # key: "objectkey",
11129
11228
  # })
11130
11229
  #
11131
11230
  # resp.to_h outputs the following:
11132
11231
  # {
11133
11232
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11134
- # server_side_encryption: "AES256",
11135
- # version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
11233
+ # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
11136
11234
  # }
11137
11235
  #
11138
- # @example Example: To create an object.
11236
+ # @example Example: To upload object and specify user-defined metadata
11139
11237
  #
11140
- # # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
11238
+ # # The following example creates an object. The request also specifies optional metadata. If the bucket is versioning
11239
+ # # enabled, S3 returns version ID in response.
11141
11240
  #
11142
11241
  # resp = client.put_object({
11143
11242
  # body: "filetoupload",
11144
11243
  # bucket: "examplebucket",
11145
- # key: "objectkey",
11244
+ # key: "exampleobject",
11245
+ # metadata: {
11246
+ # "metadata1" => "value1",
11247
+ # "metadata2" => "value2",
11248
+ # },
11146
11249
  # })
11147
11250
  #
11148
11251
  # resp.to_h outputs the following:
11149
11252
  # {
11150
11253
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11151
- # version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
11254
+ # version_id: "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0",
11152
11255
  # }
11153
11256
  #
11154
- # @example Example: To upload an object and specify server-side encryption and object tags
11257
+ # @example Example: To upload an object and specify canned ACL.
11155
11258
  #
11156
- # # The following example uploads and object. The request specifies the optional server-side encryption option. The request
11157
- # # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
11259
+ # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11260
+ # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11158
11261
  #
11159
11262
  # resp = client.put_object({
11263
+ # acl: "authenticated-read",
11160
11264
  # body: "filetoupload",
11161
11265
  # bucket: "examplebucket",
11162
11266
  # key: "exampleobject",
11163
- # server_side_encryption: "AES256",
11164
- # tagging: "key1=value1&key2=value2",
11165
11267
  # })
11166
11268
  #
11167
11269
  # resp.to_h outputs the following:
11168
11270
  # {
11169
11271
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11170
- # server_side_encryption: "AES256",
11171
- # version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
11272
+ # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11172
11273
  # }
11173
11274
  #
11174
- # @example Example: To upload an object and specify optional tags
11275
+ # @example Example: To upload an object
11175
11276
  #
11176
- # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
11177
- # # S3 returns version ID of the newly created object.
11277
+ # # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
11278
+ # # syntax. S3 returns VersionId of the newly created object.
11178
11279
  #
11179
11280
  # resp = client.put_object({
11180
- # body: "c:\\HappyFace.jpg",
11281
+ # body: "HappyFace.jpg",
11181
11282
  # bucket: "examplebucket",
11182
11283
  # key: "HappyFace.jpg",
11183
- # tagging: "key1=value1&key2=value2",
11184
11284
  # })
11185
11285
  #
11186
11286
  # resp.to_h outputs the following:
11187
11287
  # {
11188
11288
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11189
- # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11289
+ # version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
11190
11290
  # }
11191
11291
  #
11192
- # @example Example: To upload an object and specify canned ACL.
11292
+ # @example Example: To upload an object and specify optional tags
11193
11293
  #
11194
- # # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
11195
- # # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
11294
+ # # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
11295
+ # # S3 returns version ID of the newly created object.
11196
11296
  #
11197
11297
  # resp = client.put_object({
11198
- # acl: "authenticated-read",
11199
- # body: "filetoupload",
11298
+ # body: "c:\\HappyFace.jpg",
11200
11299
  # bucket: "examplebucket",
11201
- # key: "exampleobject",
11300
+ # key: "HappyFace.jpg",
11301
+ # tagging: "key1=value1&key2=value2",
11202
11302
  # })
11203
11303
  #
11204
11304
  # resp.to_h outputs the following:
11205
11305
  # {
11206
11306
  # etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
11207
- # version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
11307
+ # version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
11208
11308
  # }
11209
11309
  #
11210
11310
  # @example Streaming a file from disk
@@ -11303,26 +11403,26 @@ module Aws::S3
11303
11403
  # * Specify access permissions explicitly with the `x-amz-grant-read`,
11304
11404
  # `x-amz-grant-read-acp`, `x-amz-grant-write-acp`, and
11305
11405
  # `x-amz-grant-full-control` headers. When using these headers, you
11306
- # specify explicit access permissions and grantees (AWS accounts or
11307
- # Amazon S3 groups) who will receive the permission. If you use these
11308
- # ACL-specific headers, you cannot use `x-amz-acl` header to set a
11309
- # canned ACL. These parameters map to the set of permissions that
11310
- # Amazon S3 supports in an ACL. For more information, see [Access
11311
- # Control List (ACL) Overview][2].
11406
+ # specify explicit access permissions and grantees (Amazon Web
11407
+ # Services accounts or Amazon S3 groups) who will receive the
11408
+ # permission. If you use these ACL-specific headers, you cannot use
11409
+ # `x-amz-acl` header to set a canned ACL. These parameters map to the
11410
+ # set of permissions that Amazon S3 supports in an ACL. For more
11411
+ # information, see [Access Control List (ACL) Overview][2].
11312
11412
  #
11313
11413
  # You specify each grantee as a type=value pair, where the type is one
11314
11414
  # of the following:
11315
11415
  #
11316
- # * `id` – if the value specified is the canonical user ID of an AWS
11317
- # account
11416
+ # * `id` – if the value specified is the canonical user ID of an
11417
+ # Amazon Web Services account
11318
11418
  #
11319
11419
  # * `uri` – if you are granting permissions to a predefined group
11320
11420
  #
11321
11421
  # * `emailAddress` – if the value specified is the email address of an
11322
- # AWS account
11422
+ # Amazon Web Services account
11323
11423
  #
11324
11424
  # <note markdown="1"> Using email addresses to specify a grantee is only supported in
11325
- # the following AWS Regions:
11425
+ # the following Amazon Web Services Regions:
11326
11426
  #
11327
11427
  # * US East (N. Virginia)
11328
11428
  #
@@ -11341,13 +11441,14 @@ module Aws::S3
11341
11441
  # * South America (São Paulo)
11342
11442
  #
11343
11443
  # For a list of all the Amazon S3 supported Regions and endpoints,
11344
- # see [Regions and Endpoints][4] in the AWS General Reference.
11444
+ # see [Regions and Endpoints][4] in the Amazon Web Services General
11445
+ # Reference.
11345
11446
  #
11346
11447
  # </note>
11347
11448
  #
11348
11449
  # For example, the following `x-amz-grant-read` header grants list
11349
- # objects permission to the two AWS accounts identified by their email
11350
- # addresses.
11450
+ # objects permission to the two Amazon Web Services accounts
11451
+ # identified by their email addresses.
11351
11452
  #
11352
11453
  # `x-amz-grant-read: emailAddress="xyz@amazon.com",
11353
11454
  # emailAddress="abc@amazon.com" `
@@ -11382,7 +11483,7 @@ module Aws::S3
11382
11483
  # GET Object acl request, appears as the CanonicalUser.
11383
11484
  #
11384
11485
  # <note markdown="1"> Using email addresses to specify a grantee is only supported in the
11385
- # following AWS Regions:
11486
+ # following Amazon Web Services Regions:
11386
11487
  #
11387
11488
  # * US East (N. Virginia)
11388
11489
  #
@@ -11401,7 +11502,8 @@ module Aws::S3
11401
11502
  # * South America (São Paulo)
11402
11503
  #
11403
11504
  # For a list of all the Amazon S3 supported Regions and endpoints, see
11404
- # [Regions and Endpoints][4] in the AWS General Reference.
11505
+ # [Regions and Endpoints][4] in the Amazon Web Services General
11506
+ # Reference.
11405
11507
  #
11406
11508
  # </note>
11407
11509
  #
@@ -11445,10 +11547,10 @@ module Aws::S3
11445
11547
  # When using this action with an access point, you must direct requests
11446
11548
  # to the access point hostname. The access point hostname takes the form
11447
11549
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11448
- # When using this action with an access point through the AWS SDKs, you
11449
- # provide the access point ARN in place of the bucket name. For more
11450
- # information about access point ARNs, see [Using access points][1] in
11451
- # the *Amazon S3 User Guide*.
11550
+ # When using this action with an access point through the Amazon Web
11551
+ # Services SDKs, you provide the access point ARN in place of the bucket
11552
+ # name. For more information about access point ARNs, see [Using access
11553
+ # points][1] in the *Amazon S3 User Guide*.
11452
11554
  #
11453
11555
  #
11454
11556
  #
@@ -11460,8 +11562,9 @@ module Aws::S3
11460
11562
  # not corrupted in transit. For more information, go to [RFC
11461
11563
  # 1864.&gt;][1]
11462
11564
  #
11463
- # For requests made using the AWS Command Line Interface (CLI) or AWS
11464
- # SDKs, this field is calculated automatically.
11565
+ # For requests made using the Amazon Web Services Command Line Interface
11566
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
11567
+ # automatically.
11465
11568
  #
11466
11569
  #
11467
11570
  #
@@ -11500,19 +11603,19 @@ module Aws::S3
11500
11603
  # When using this action with an access point, you must direct requests
11501
11604
  # to the access point hostname. The access point hostname takes the form
11502
11605
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11503
- # When using this action with an access point through the AWS SDKs, you
11504
- # provide the access point ARN in place of the bucket name. For more
11505
- # information about access point ARNs, see [Using access points][1] in
11506
- # the *Amazon S3 User Guide*.
11606
+ # When using this action with an access point through the Amazon Web
11607
+ # Services SDKs, you provide the access point ARN in place of the bucket
11608
+ # name. For more information about access point ARNs, see [Using access
11609
+ # points][1] in the *Amazon S3 User Guide*.
11507
11610
  #
11508
11611
  # When using this action with Amazon S3 on Outposts, you must direct
11509
11612
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
11510
11613
  # takes the form
11511
11614
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
11512
- # When using this action using S3 on Outposts through the AWS SDKs, you
11513
- # provide the Outposts bucket ARN in place of the bucket name. For more
11514
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
11515
- # in the *Amazon S3 User Guide*.
11615
+ # When using this action using S3 on Outposts through the Amazon Web
11616
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
11617
+ # bucket name. For more information about S3 on Outposts ARNs, see
11618
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
11516
11619
  #
11517
11620
  #
11518
11621
  #
@@ -11625,10 +11728,10 @@ module Aws::S3
11625
11728
  # When using this action with an access point, you must direct requests
11626
11729
  # to the access point hostname. The access point hostname takes the form
11627
11730
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11628
- # When using this action with an access point through the AWS SDKs, you
11629
- # provide the access point ARN in place of the bucket name. For more
11630
- # information about access point ARNs, see [Using access points][1] in
11631
- # the *Amazon S3 User Guide*.
11731
+ # When using this action with an access point through the Amazon Web
11732
+ # Services SDKs, you provide the access point ARN in place of the bucket
11733
+ # name. For more information about access point ARNs, see [Using access
11734
+ # points][1] in the *Amazon S3 User Guide*.
11632
11735
  #
11633
11736
  #
11634
11737
  #
@@ -11658,8 +11761,9 @@ module Aws::S3
11658
11761
  # @option params [String] :content_md5
11659
11762
  # The MD5 hash for the request body.
11660
11763
  #
11661
- # For requests made using the AWS Command Line Interface (CLI) or AWS
11662
- # SDKs, this field is calculated automatically.
11764
+ # For requests made using the Amazon Web Services Command Line Interface
11765
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
11766
+ # automatically.
11663
11767
  #
11664
11768
  # @option params [String] :expected_bucket_owner
11665
11769
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -11709,7 +11813,8 @@ module Aws::S3
11709
11813
  # same time.
11710
11814
  #
11711
11815
  # * You can only enable Object Lock for new buckets. If you want to turn
11712
- # on Object Lock for an existing bucket, contact AWS Support.
11816
+ # on Object Lock for an existing bucket, contact Amazon Web Services
11817
+ # Support.
11713
11818
  #
11714
11819
  # </note>
11715
11820
  #
@@ -11742,8 +11847,9 @@ module Aws::S3
11742
11847
  # @option params [String] :content_md5
11743
11848
  # The MD5 hash for the request body.
11744
11849
  #
11745
- # For requests made using the AWS Command Line Interface (CLI) or AWS
11746
- # SDKs, this field is calculated automatically.
11850
+ # For requests made using the Amazon Web Services Command Line Interface
11851
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
11852
+ # automatically.
11747
11853
  #
11748
11854
  # @option params [String] :expected_bucket_owner
11749
11855
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -11788,10 +11894,20 @@ module Aws::S3
11788
11894
  end
11789
11895
 
11790
11896
  # Places an Object Retention configuration on an object. For more
11791
- # information, see [Locking Objects][1].
11897
+ # information, see [Locking Objects][1]. Users or accounts require the
11898
+ # `s3:PutObjectRetention` permission in order to place an Object
11899
+ # Retention configuration on objects. Bypassing a Governance Retention
11900
+ # configuration requires the `s3:BypassGovernanceRetention` permission.
11792
11901
  #
11793
11902
  # This action is not supported by Amazon S3 on Outposts.
11794
11903
  #
11904
+ # **Permissions**
11905
+ #
11906
+ # When the Object Lock retention mode is set to compliance, you need
11907
+ # `s3:PutObjectRetention` and `s3:BypassGovernanceRetention`
11908
+ # permissions. For other requests to `PutObjectRetention`, only
11909
+ # `s3:PutObjectRetention` permissions are required.
11910
+ #
11795
11911
  #
11796
11912
  #
11797
11913
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html
@@ -11803,10 +11919,10 @@ module Aws::S3
11803
11919
  # When using this action with an access point, you must direct requests
11804
11920
  # to the access point hostname. The access point hostname takes the form
11805
11921
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11806
- # When using this action with an access point through the AWS SDKs, you
11807
- # provide the access point ARN in place of the bucket name. For more
11808
- # information about access point ARNs, see [Using access points][1] in
11809
- # the *Amazon S3 User Guide*.
11922
+ # When using this action with an access point through the Amazon Web
11923
+ # Services SDKs, you provide the access point ARN in place of the bucket
11924
+ # name. For more information about access point ARNs, see [Using access
11925
+ # points][1] in the *Amazon S3 User Guide*.
11810
11926
  #
11811
11927
  #
11812
11928
  #
@@ -11841,8 +11957,9 @@ module Aws::S3
11841
11957
  # @option params [String] :content_md5
11842
11958
  # The MD5 hash for the request body.
11843
11959
  #
11844
- # For requests made using the AWS Command Line Interface (CLI) or AWS
11845
- # SDKs, this field is calculated automatically.
11960
+ # For requests made using the Amazon Web Services Command Line Interface
11961
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
11962
+ # automatically.
11846
11963
  #
11847
11964
  # @option params [String] :expected_bucket_owner
11848
11965
  # The account ID of the expected bucket owner. If the bucket is owned by
@@ -11945,19 +12062,19 @@ module Aws::S3
11945
12062
  # When using this action with an access point, you must direct requests
11946
12063
  # to the access point hostname. The access point hostname takes the form
11947
12064
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
11948
- # When using this action with an access point through the AWS SDKs, you
11949
- # provide the access point ARN in place of the bucket name. For more
11950
- # information about access point ARNs, see [Using access points][1] in
11951
- # the *Amazon S3 User Guide*.
12065
+ # When using this action with an access point through the Amazon Web
12066
+ # Services SDKs, you provide the access point ARN in place of the bucket
12067
+ # name. For more information about access point ARNs, see [Using access
12068
+ # points][1] in the *Amazon S3 User Guide*.
11952
12069
  #
11953
12070
  # When using this action with Amazon S3 on Outposts, you must direct
11954
12071
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
11955
12072
  # takes the form
11956
12073
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
11957
- # When using this action using S3 on Outposts through the AWS SDKs, you
11958
- # provide the Outposts bucket ARN in place of the bucket name. For more
11959
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
11960
- # in the *Amazon S3 User Guide*.
12074
+ # When using this action using S3 on Outposts through the Amazon Web
12075
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
12076
+ # bucket name. For more information about S3 on Outposts ARNs, see
12077
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
11961
12078
  #
11962
12079
  #
11963
12080
  #
@@ -11973,8 +12090,9 @@ module Aws::S3
11973
12090
  # @option params [String] :content_md5
11974
12091
  # The MD5 hash for the request body.
11975
12092
  #
11976
- # For requests made using the AWS Command Line Interface (CLI) or AWS
11977
- # SDKs, this field is calculated automatically.
12093
+ # For requests made using the Amazon Web Services Command Line Interface
12094
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
12095
+ # automatically.
11978
12096
  #
11979
12097
  # @option params [required, Types::Tagging] :tagging
11980
12098
  # Container for the `TagSet` and `Tag` elements
@@ -12100,8 +12218,9 @@ module Aws::S3
12100
12218
  # @option params [String] :content_md5
12101
12219
  # The MD5 hash of the `PutPublicAccessBlock` request body.
12102
12220
  #
12103
- # For requests made using the AWS Command Line Interface (CLI) or AWS
12104
- # SDKs, this field is calculated automatically.
12221
+ # For requests made using the Amazon Web Services Command Line Interface
12222
+ # (CLI) or Amazon Web Services SDKs, this field is calculated
12223
+ # automatically.
12105
12224
  #
12106
12225
  # @option params [required, Types::PublicAccessBlockConfiguration] :public_access_block_configuration
12107
12226
  # The `PublicAccessBlock` configuration that you want to apply to this
@@ -12174,13 +12293,13 @@ module Aws::S3
12174
12293
  # When making a select request, do the following:
12175
12294
  #
12176
12295
  # * Define an output location for the select query's output. This must
12177
- # be an Amazon S3 bucket in the same AWS Region as the bucket that
12178
- # contains the archive object that is being queried. The AWS account
12179
- # that initiates the job must have permissions to write to the S3
12180
- # bucket. You can specify the storage class and encryption for the
12181
- # output objects stored in the bucket. For more information about
12182
- # output, see [Querying Archived Objects][3] in the *Amazon S3 User
12183
- # Guide*.
12296
+ # be an Amazon S3 bucket in the same Amazon Web Services Region as the
12297
+ # bucket that contains the archive object that is being queried. The
12298
+ # Amazon Web Services account that initiates the job must have
12299
+ # permissions to write to the S3 bucket. You can specify the storage
12300
+ # class and encryption for the output objects stored in the bucket.
12301
+ # For more information about output, see [Querying Archived
12302
+ # Objects][3] in the *Amazon S3 User Guide*.
12184
12303
  #
12185
12304
  # For more information about the `S3` structure in the request body,
12186
12305
  # see the following:
@@ -12389,19 +12508,19 @@ module Aws::S3
12389
12508
  # When using this action with an access point, you must direct requests
12390
12509
  # to the access point hostname. The access point hostname takes the form
12391
12510
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
12392
- # When using this action with an access point through the AWS SDKs, you
12393
- # provide the access point ARN in place of the bucket name. For more
12394
- # information about access point ARNs, see [Using access points][1] in
12395
- # the *Amazon S3 User Guide*.
12511
+ # When using this action with an access point through the Amazon Web
12512
+ # Services SDKs, you provide the access point ARN in place of the bucket
12513
+ # name. For more information about access point ARNs, see [Using access
12514
+ # points][1] in the *Amazon S3 User Guide*.
12396
12515
  #
12397
12516
  # When using this action with Amazon S3 on Outposts, you must direct
12398
12517
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
12399
12518
  # takes the form
12400
12519
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
12401
- # When using this action using S3 on Outposts through the AWS SDKs, you
12402
- # provide the Outposts bucket ARN in place of the bucket name. For more
12403
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
12404
- # in the *Amazon S3 User Guide*.
12520
+ # When using this action using S3 on Outposts through the Amazon Web
12521
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
12522
+ # bucket name. For more information about S3 on Outposts ARNs, see
12523
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
12405
12524
  #
12406
12525
  #
12407
12526
  #
@@ -12618,10 +12737,10 @@ module Aws::S3
12618
12737
  # Encryption Keys)][5] in the *Amazon S3 User Guide*.
12619
12738
  #
12620
12739
  # For objects that are encrypted with Amazon S3 managed encryption
12621
- # keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key
12622
- # Management Service (SSE-KMS), server-side encryption is handled
12623
- # transparently, so you don't need to specify anything. For more
12624
- # information about server-side encryption, including SSE-S3 and
12740
+ # keys (SSE-S3) and customer master keys (CMKs) stored in Amazon Web
12741
+ # Services Key Management Service (SSE-KMS), server-side encryption is
12742
+ # handled transparently, so you don't need to specify anything. For
12743
+ # more information about server-side encryption, including SSE-S3 and
12625
12744
  # SSE-KMS, see [Protecting Data Using Server-Side Encryption][6] in
12626
12745
  # the *Amazon S3 User Guide*.
12627
12746
  #
@@ -12630,7 +12749,7 @@ module Aws::S3
12630
12749
  # Given the response size is unknown, Amazon S3 Select streams the
12631
12750
  # response as a series of messages and includes a `Transfer-Encoding`
12632
12751
  # header with `chunked` as its value in the response. For more
12633
- # information, see [Appendix: SelectObjectContent Response][7] .
12752
+ # information, see [Appendix: SelectObjectContent Response][7].
12634
12753
  #
12635
12754
  #
12636
12755
  #
@@ -13001,10 +13120,11 @@ module Aws::S3
13001
13120
  # checks the part data against the provided MD5 value. If they do not
13002
13121
  # match, Amazon S3 returns an error.
13003
13122
  #
13004
- # If the upload request is signed with Signature Version 4, then AWS S3
13005
- # uses the `x-amz-content-sha256` header as a checksum instead of
13006
- # `Content-MD5`. For more information see [Authenticating Requests:
13007
- # Using the Authorization Header (AWS Signature Version 4)][3].
13123
+ # If the upload request is signed with Signature Version 4, then Amazon
13124
+ # Web Services S3 uses the `x-amz-content-sha256` header as a checksum
13125
+ # instead of `Content-MD5`. For more information see [Authenticating
13126
+ # Requests: Using the Authorization Header (Amazon Web Services
13127
+ # Signature Version 4)][3].
13008
13128
  #
13009
13129
  # **Note:** After you initiate multipart upload and upload one or more
13010
13130
  # parts, you must either complete or abort multipart upload in order to
@@ -13022,11 +13142,11 @@ module Aws::S3
13022
13142
  # You can optionally request server-side encryption where Amazon S3
13023
13143
  # encrypts your data as it writes it to disks in its data centers and
13024
13144
  # decrypts it for you when you access it. You have the option of
13025
- # providing your own encryption key, or you can use the AWS managed
13026
- # encryption keys. If you choose to provide your own encryption key, the
13027
- # request headers you provide in the request must match the headers you
13028
- # used in the request to initiate the upload by using
13029
- # [CreateMultipartUpload][2]. For more information, go to [Using
13145
+ # providing your own encryption key, or you can use the Amazon Web
13146
+ # Services managed encryption keys. If you choose to provide your own
13147
+ # encryption key, the request headers you provide in the request must
13148
+ # match the headers you used in the request to initiate the upload by
13149
+ # using [CreateMultipartUpload][2]. For more information, go to [Using
13030
13150
  # Server-Side Encryption][6] in the *Amazon S3 User Guide*.
13031
13151
  #
13032
13152
  # Server-side encryption is supported by the S3 Multipart Upload
@@ -13093,19 +13213,19 @@ module Aws::S3
13093
13213
  # When using this action with an access point, you must direct requests
13094
13214
  # to the access point hostname. The access point hostname takes the form
13095
13215
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
13096
- # When using this action with an access point through the AWS SDKs, you
13097
- # provide the access point ARN in place of the bucket name. For more
13098
- # information about access point ARNs, see [Using access points][1] in
13099
- # the *Amazon S3 User Guide*.
13216
+ # When using this action with an access point through the Amazon Web
13217
+ # Services SDKs, you provide the access point ARN in place of the bucket
13218
+ # name. For more information about access point ARNs, see [Using access
13219
+ # points][1] in the *Amazon S3 User Guide*.
13100
13220
  #
13101
13221
  # When using this action with Amazon S3 on Outposts, you must direct
13102
13222
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
13103
13223
  # takes the form
13104
13224
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
13105
- # When using this action using S3 on Outposts through the AWS SDKs, you
13106
- # provide the Outposts bucket ARN in place of the bucket name. For more
13107
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
13108
- # in the *Amazon S3 User Guide*.
13225
+ # When using this action using S3 on Outposts through the Amazon Web
13226
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
13227
+ # bucket name. For more information about S3 on Outposts ARNs, see
13228
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
13109
13229
  #
13110
13230
  #
13111
13231
  #
@@ -13367,19 +13487,19 @@ module Aws::S3
13367
13487
  # When using this action with an access point, you must direct requests
13368
13488
  # to the access point hostname. The access point hostname takes the form
13369
13489
  # *AccessPointName*-*AccountId*.s3-accesspoint.*Region*.amazonaws.com.
13370
- # When using this action with an access point through the AWS SDKs, you
13371
- # provide the access point ARN in place of the bucket name. For more
13372
- # information about access point ARNs, see [Using access points][1] in
13373
- # the *Amazon S3 User Guide*.
13490
+ # When using this action with an access point through the Amazon Web
13491
+ # Services SDKs, you provide the access point ARN in place of the bucket
13492
+ # name. For more information about access point ARNs, see [Using access
13493
+ # points][1] in the *Amazon S3 User Guide*.
13374
13494
  #
13375
13495
  # When using this action with Amazon S3 on Outposts, you must direct
13376
13496
  # requests to the S3 on Outposts hostname. The S3 on Outposts hostname
13377
13497
  # takes the form
13378
13498
  # *AccessPointName*-*AccountId*.*outpostID*.s3-outposts.*Region*.amazonaws.com.
13379
- # When using this action using S3 on Outposts through the AWS SDKs, you
13380
- # provide the Outposts bucket ARN in place of the bucket name. For more
13381
- # information about S3 on Outposts ARNs, see [Using S3 on Outposts][2]
13382
- # in the *Amazon S3 User Guide*.
13499
+ # When using this action using S3 on Outposts through the Amazon Web
13500
+ # Services SDKs, you provide the Outposts bucket ARN in place of the
13501
+ # bucket name. For more information about S3 on Outposts ARNs, see
13502
+ # [Using S3 on Outposts][2] in the *Amazon S3 User Guide*.
13383
13503
  #
13384
13504
  #
13385
13505
  #
@@ -13409,7 +13529,8 @@ module Aws::S3
13409
13529
  # The value must be URL encoded.
13410
13530
  #
13411
13531
  # <note markdown="1"> Amazon S3 supports copy operations using access points only when the
13412
- # source and destination buckets are in the same AWS Region.
13532
+ # source and destination buckets are in the same Amazon Web Services
13533
+ # Region.
13413
13534
  #
13414
13535
  # </note>
13415
13536
  #
@@ -13624,18 +13745,24 @@ module Aws::S3
13624
13745
  # [GetObject][2], in addition to `RequestRoute`, `RequestToken`,
13625
13746
  # `StatusCode`, `ErrorCode`, and `ErrorMessage`. The `GetObject`
13626
13747
  # response metadata is supported so that the `WriteGetObjectResponse`
13627
- # caller, typically an AWS Lambda function, can provide the same
13628
- # metadata when it internally invokes `GetObject`. When
13629
- # `WriteGetObjectResponse` is called by a customer-owned Lambda
13630
- # function, the metadata returned to the end user `GetObject` call might
13631
- # differ from what Amazon S3 would normally return.
13632
- #
13633
- # AWS provides some prebuilt Lambda functions that you can use with S3
13634
- # Object Lambda to detect and redact personally identifiable information
13635
- # (PII) and decompress S3 objects. These Lambda functions are available
13636
- # in the AWS Serverless Application Repository, and can be selected
13637
- # through the AWS Management Console when you create your Object Lambda
13638
- # Access Point.
13748
+ # caller, typically an Lambda function, can provide the same metadata
13749
+ # when it internally invokes `GetObject`. When `WriteGetObjectResponse`
13750
+ # is called by a customer-owned Lambda function, the metadata returned
13751
+ # to the end user `GetObject` call might differ from what Amazon S3
13752
+ # would normally return.
13753
+ #
13754
+ # You can include any number of metadata headers. When including a
13755
+ # metadata header, it should be prefaced with `x-amz-meta`. For example,
13756
+ # `x-amz-meta-my-custom-header: MyCustomValue`. The primary use case for
13757
+ # this is to forward `GetObject` metadata.
13758
+ #
13759
+ # Amazon Web Services provides some prebuilt Lambda functions that you
13760
+ # can use with S3 Object Lambda to detect and redact personally
13761
+ # identifiable information (PII) and decompress S3 objects. These Lambda
13762
+ # functions are available in the Amazon Web Services Serverless
13763
+ # Application Repository, and can be selected through the Amazon Web
13764
+ # Services Management Console when you create your Object Lambda Access
13765
+ # Point.
13639
13766
  #
13640
13767
  # Example 1: PII Access Control - This Lambda function uses Amazon
13641
13768
  # Comprehend, a natural language processing (NLP) service using machine
@@ -13656,8 +13783,9 @@ module Aws::S3
13656
13783
  # in S3 in one of six compressed file formats including bzip2, gzip,
13657
13784
  # snappy, zlib, zstandard and ZIP.
13658
13785
  #
13659
- # For information on how to view and use these functions, see [Using AWS
13660
- # built Lambda functions][3] in the *Amazon S3 User Guide*.
13786
+ # For information on how to view and use these functions, see [Using
13787
+ # Amazon Web Services built Lambda functions][3] in the *Amazon S3 User
13788
+ # Guide*.
13661
13789
  #
13662
13790
  #
13663
13791
  #
@@ -13825,9 +13953,9 @@ module Aws::S3
13825
13953
  # Amazon S3.
13826
13954
  #
13827
13955
  # @option params [String] :ssekms_key_id
13828
- # If present, specifies the ID of the AWS Key Management Service (AWS
13829
- # KMS) symmetric customer managed customer master key (CMK) that was
13830
- # used for stored in Amazon S3 object.
13956
+ # If present, specifies the ID of the Amazon Web Services Key Management
13957
+ # Service (Amazon Web Services KMS) symmetric customer managed customer
13958
+ # master key (CMK) that was used for stored in Amazon S3 object.
13831
13959
  #
13832
13960
  # @option params [String] :sse_customer_key_md5
13833
13961
  # 128-bit MD5 digest of customer-provided encryption key used in Amazon
@@ -13850,7 +13978,7 @@ module Aws::S3
13850
13978
  #
13851
13979
  # @option params [Boolean] :bucket_key_enabled
13852
13980
  # Indicates whether the object stored in Amazon S3 uses an S3 bucket key
13853
- # for server-side encryption with AWS KMS (SSE-KMS).
13981
+ # for server-side encryption with Amazon Web Services KMS (SSE-KMS).
13854
13982
  #
13855
13983
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
13856
13984
  #
@@ -13919,7 +14047,7 @@ module Aws::S3
13919
14047
  params: params,
13920
14048
  config: config)
13921
14049
  context[:gem_name] = 'aws-sdk-s3'
13922
- context[:gem_version] = '1.96.2'
14050
+ context[:gem_version] = '1.100.0'
13923
14051
  Seahorse::Client::Request.new(handlers, context)
13924
14052
  end
13925
14053