aws-sdk-s3 1.99.0 → 1.103.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 +4 -4
- data/CHANGELOG.md +20 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb +69 -0
- data/lib/aws-sdk-s3/bucket.rb +7 -7
- data/lib/aws-sdk-s3/client.rb +261 -244
- data/lib/aws-sdk-s3/client_api.rb +3 -0
- data/lib/aws-sdk-s3/encryption/client.rb +1 -1
- data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/encryptionV2/client.rb +1 -1
- data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +0 -4
- data/lib/aws-sdk-s3/object.rb +22 -21
- data/lib/aws-sdk-s3/object_summary.rb +16 -15
- data/lib/aws-sdk-s3/object_version.rb +4 -3
- data/lib/aws-sdk-s3/plugins/arn.rb +51 -12
- data/lib/aws-sdk-s3/plugins/s3_signer.rb +10 -1
- data/lib/aws-sdk-s3/presigner.rb +6 -0
- data/lib/aws-sdk-s3/types.rb +82 -60
- data/lib/aws-sdk-s3.rb +1 -1
- metadata +8 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 15712b72bf9c4eceb463344aa738f5e520a02161776d0a2e0c501c589ffba31b
|
4
|
+
data.tar.gz: 44bd3b0c543a0bb6b31ff26da9e664b431b0497ca5157385671526a9bbe8c589
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f4dc0b61914a6c48dac9858321b0a6eb972991e2938d39a10d105140c18fcf7a43d1d905654942033f44336e491e82d5ad178eb2fc84beac05ac1e059da98be7
|
7
|
+
data.tar.gz: 709d8e45a27f894622800dabb2ebb300f0d4b6f888c081987e42022b602d703aa22bd42fab179aeb976ee5ef12b98cb6b04d1663a49749b8693ea81b8099a2d3
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,26 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.103.0 (2021-09-16)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Add support for access point arn filtering in S3 CW Request Metrics
|
8
|
+
|
9
|
+
1.102.0 (2021-09-02)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
13
|
+
|
14
|
+
1.101.0 (2021-09-01)
|
15
|
+
------------------
|
16
|
+
|
17
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
18
|
+
|
19
|
+
1.100.0 (2021-08-27)
|
20
|
+
------------------
|
21
|
+
|
22
|
+
* Feature - Documentation updates for Amazon S3.
|
23
|
+
|
4
24
|
1.99.0 (2021-08-16)
|
5
25
|
------------------
|
6
26
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.103.0
|
@@ -0,0 +1,69 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Aws
|
4
|
+
module S3
|
5
|
+
# @api private
|
6
|
+
class MultiRegionAccessPointARN < Aws::ARN
|
7
|
+
def initialize(options)
|
8
|
+
super(options)
|
9
|
+
@type, @mrap_alias, @extra = @resource.split(/[:,\/]/)
|
10
|
+
end
|
11
|
+
|
12
|
+
attr_reader :mrap_alias
|
13
|
+
|
14
|
+
def support_dualstack?
|
15
|
+
false
|
16
|
+
end
|
17
|
+
|
18
|
+
def support_fips?
|
19
|
+
false
|
20
|
+
end
|
21
|
+
|
22
|
+
def validate_arn!
|
23
|
+
unless @service == 's3'
|
24
|
+
raise ArgumentError,
|
25
|
+
'Must provide a valid S3 multi-region access point ARN.'
|
26
|
+
end
|
27
|
+
|
28
|
+
if @account_id.empty?
|
29
|
+
raise ArgumentError,
|
30
|
+
'S3 multi-region access point ARNs must contain '\
|
31
|
+
'an account id.'
|
32
|
+
end
|
33
|
+
|
34
|
+
unless @region.empty?
|
35
|
+
raise ArgumentError,
|
36
|
+
'Multi-region access points must have an empty region.'
|
37
|
+
end
|
38
|
+
|
39
|
+
if @type != 'accesspoint'
|
40
|
+
raise ArgumentError, 'Invalid ARN, resource format is not correct'
|
41
|
+
end
|
42
|
+
|
43
|
+
if @mrap_alias.nil? || @mrap_alias.empty?
|
44
|
+
raise ArgumentError, 'Missing ARN multi-region access points alias.'
|
45
|
+
end
|
46
|
+
|
47
|
+
unless @mrap_alias.split('.').all? { |s| Seahorse::Util.host_label?(s) }
|
48
|
+
raise ArgumentError, "#{@mrap_alias} is not a valid "\
|
49
|
+
'multi region access point alias.'
|
50
|
+
end
|
51
|
+
|
52
|
+
if @extra
|
53
|
+
raise ArgumentError,
|
54
|
+
'ARN access point resource must be a single value.'
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
def host_url(region, fips = false, dualstack = false, custom_endpoint = nil)
|
59
|
+
if custom_endpoint
|
60
|
+
"#{@mrap_alias}.#{custom_endpoint}"
|
61
|
+
else
|
62
|
+
|
63
|
+
sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(@partition)
|
64
|
+
"#{@mrap_alias}.accesspoint.s3-global.#{sfx}"
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
data/lib/aws-sdk-s3/bucket.rb
CHANGED
@@ -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.
|
319
|
-
#
|
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
|
@@ -517,12 +517,12 @@ module Aws::S3
|
|
517
517
|
# If `x-amz-server-side-encryption` is present and has the value of
|
518
518
|
# `aws:kms`, this header specifies the ID of the Amazon Web Services Key
|
519
519
|
# Management Service (Amazon Web Services KMS) symmetrical customer
|
520
|
-
# managed
|
521
|
-
#
|
520
|
+
# managed key that was used for the object. If you specify
|
521
|
+
# `x-amz-server-side-encryption:aws:kms`, but do not provide`
|
522
522
|
# x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
523
|
-
# Amazon Web Services managed
|
524
|
-
#
|
525
|
-
#
|
523
|
+
# Amazon Web Services managed key to protect the data. If the KMS key
|
524
|
+
# does not exist in the same account issuing the command, you must use
|
525
|
+
# the full ARN and not just the ID.
|
526
526
|
# @option options [String] :ssekms_encryption_context
|
527
527
|
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
528
528
|
# object encryption. The value of this header is a base64-encoded UTF-8
|
data/lib/aws-sdk-s3/client.rb
CHANGED
@@ -327,6 +327,11 @@ module Aws::S3
|
|
327
327
|
# in the future.
|
328
328
|
#
|
329
329
|
#
|
330
|
+
# @option options [Boolean] :s3_disable_multiregion_access_points (false)
|
331
|
+
# When set to `false` this will option will raise errors when multi-region
|
332
|
+
# access point ARNs are used. Multi-region access points can potentially
|
333
|
+
# result in cross region requests.
|
334
|
+
#
|
330
335
|
# @option options [String] :s3_us_east_1_regional_endpoint ("legacy")
|
331
336
|
# Pass in `regional` to enable the `us-east-1` regional endpoint.
|
332
337
|
# Defaults to `legacy` mode which uses the global endpoint.
|
@@ -1557,15 +1562,14 @@ module Aws::S3
|
|
1557
1562
|
# You can optionally request server-side encryption. For server-side
|
1558
1563
|
# encryption, Amazon S3 encrypts your data as it writes it to disks in
|
1559
1564
|
# its data centers and decrypts it when you access it. You can provide
|
1560
|
-
# your own encryption key, or use Amazon Web Services
|
1561
|
-
#
|
1562
|
-
# Amazon S3-managed encryption keys. If you choose to provide your own
|
1565
|
+
# your own encryption key, or use Amazon Web Services KMS keys or Amazon
|
1566
|
+
# S3-managed encryption keys. If you choose to provide your own
|
1563
1567
|
# encryption key, the request headers you provide in [UploadPart][1] and
|
1564
1568
|
# [UploadPartCopy][6] requests must match the headers you used in the
|
1565
1569
|
# request to initiate the upload by using `CreateMultipartUpload`.
|
1566
1570
|
#
|
1567
1571
|
# To perform a multipart upload with encryption using an Amazon Web
|
1568
|
-
# Services KMS
|
1572
|
+
# Services KMS key, the requester must have permission to the
|
1569
1573
|
# `kms:Decrypt` and `kms:GenerateDataKey*` actions on the key. These
|
1570
1574
|
# permissions are required because Amazon S3 must decrypt and read data
|
1571
1575
|
# from the encrypted file parts before it completes the multipart
|
@@ -1573,11 +1577,10 @@ module Aws::S3
|
|
1573
1577
|
# permissions][7] in the *Amazon S3 User Guide*.
|
1574
1578
|
#
|
1575
1579
|
# If your Identity and Access Management (IAM) user or role is in the
|
1576
|
-
# same Amazon Web Services account as the
|
1577
|
-
#
|
1578
|
-
#
|
1579
|
-
#
|
1580
|
-
# role.
|
1580
|
+
# same Amazon Web Services account as the KMS key, then you must have
|
1581
|
+
# these permissions on the key policy. If your IAM user or role belongs
|
1582
|
+
# to a different account than the key, then you must have the
|
1583
|
+
# permissions on both the key policy and your IAM user or role.
|
1581
1584
|
#
|
1582
1585
|
# For more information, see [Protecting Data Using Server-Side
|
1583
1586
|
# Encryption][8].
|
@@ -1610,11 +1613,11 @@ module Aws::S3
|
|
1610
1613
|
# option you use depends on whether you want to use Amazon Web
|
1611
1614
|
# Services managed encryption keys or provide your own encryption key.
|
1612
1615
|
#
|
1613
|
-
# * Use encryption keys managed by Amazon S3 or customer
|
1614
|
-
#
|
1615
|
-
#
|
1616
|
-
#
|
1617
|
-
#
|
1616
|
+
# * Use encryption keys managed by Amazon S3 or customer managed key
|
1617
|
+
# stored in Amazon Web Services Key Management Service (Amazon Web
|
1618
|
+
# Services KMS) – If you want Amazon Web Services to manage the keys
|
1619
|
+
# used to encrypt data, specify the following headers in the
|
1620
|
+
# request.
|
1618
1621
|
#
|
1619
1622
|
# * x-amz-server-side-encryption
|
1620
1623
|
#
|
@@ -1624,7 +1627,7 @@ module Aws::S3
|
|
1624
1627
|
#
|
1625
1628
|
# <note markdown="1"> If you specify `x-amz-server-side-encryption:aws:kms`, but don't
|
1626
1629
|
# provide `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3
|
1627
|
-
# uses the Amazon Web Services managed
|
1630
|
+
# uses the Amazon Web Services managed key in Amazon Web Services
|
1628
1631
|
# KMS to protect the data.
|
1629
1632
|
#
|
1630
1633
|
# </note>
|
@@ -1633,10 +1636,9 @@ module Aws::S3
|
|
1633
1636
|
# Services KMS fail if you don't make them with SSL or by using
|
1634
1637
|
# SigV4.
|
1635
1638
|
#
|
1636
|
-
# For more information about server-side encryption with
|
1637
|
-
#
|
1638
|
-
#
|
1639
|
-
# KMS][11].
|
1639
|
+
# For more information about server-side encryption with KMS key
|
1640
|
+
# (SSE-KMS), see [Protecting Data Using Server-Side Encryption with
|
1641
|
+
# KMS keys][11].
|
1640
1642
|
#
|
1641
1643
|
# * Use customer-provided encryption keys – If you want to manage your
|
1642
1644
|
# own encryption keys, provide all the following headers in the
|
@@ -1648,10 +1650,9 @@ module Aws::S3
|
|
1648
1650
|
#
|
1649
1651
|
# * x-amz-server-side-encryption-customer-key-MD5
|
1650
1652
|
#
|
1651
|
-
# For more information about server-side encryption with
|
1652
|
-
#
|
1653
|
-
#
|
1654
|
-
# KMS][11].
|
1653
|
+
# For more information about server-side encryption with KMS keys
|
1654
|
+
# (SSE-KMS), see [Protecting Data Using Server-Side Encryption with
|
1655
|
+
# KMS keys][11].
|
1655
1656
|
#
|
1656
1657
|
# Access-Control-List (ACL)-Specific Request Headers
|
1657
1658
|
#
|
@@ -1876,13 +1877,13 @@ module Aws::S3
|
|
1876
1877
|
# ensure that the encryption key was transmitted without error.
|
1877
1878
|
#
|
1878
1879
|
# @option params [String] :ssekms_key_id
|
1879
|
-
# Specifies the ID of the symmetric customer managed
|
1880
|
-
#
|
1881
|
-
#
|
1882
|
-
#
|
1883
|
-
#
|
1884
|
-
#
|
1885
|
-
#
|
1880
|
+
# Specifies the ID of the symmetric customer managed key to use for
|
1881
|
+
# object encryption. All GET and PUT requests for an object protected by
|
1882
|
+
# Amazon Web Services KMS will fail if not made via SSL or using SigV4.
|
1883
|
+
# For information about configuring using any of the officially
|
1884
|
+
# supported Amazon Web Services SDKs and Amazon Web Services CLI, see
|
1885
|
+
# [Specifying the Signature Version in Request Authentication][1] in the
|
1886
|
+
# *Amazon S3 User Guide*.
|
1886
1887
|
#
|
1887
1888
|
#
|
1888
1889
|
#
|
@@ -2252,21 +2253,23 @@ module Aws::S3
|
|
2252
2253
|
#
|
2253
2254
|
# The S3 Intelligent-Tiering storage class is designed to optimize
|
2254
2255
|
# storage costs by automatically moving data to the most cost-effective
|
2255
|
-
# storage access tier, without
|
2256
|
-
# Intelligent-Tiering delivers automatic cost savings
|
2257
|
-
#
|
2258
|
-
#
|
2259
|
-
#
|
2260
|
-
#
|
2261
|
-
#
|
2262
|
-
#
|
2263
|
-
#
|
2264
|
-
#
|
2265
|
-
#
|
2266
|
-
#
|
2267
|
-
#
|
2268
|
-
#
|
2269
|
-
#
|
2256
|
+
# storage access tier, without performance impact or operational
|
2257
|
+
# overhead. S3 Intelligent-Tiering delivers automatic cost savings in
|
2258
|
+
# two low latency and high throughput access tiers. For data that can be
|
2259
|
+
# accessed asynchronously, you can choose to activate automatic
|
2260
|
+
# archiving capabilities within the S3 Intelligent-Tiering storage
|
2261
|
+
# class.
|
2262
|
+
#
|
2263
|
+
# The S3 Intelligent-Tiering storage class is the ideal storage class
|
2264
|
+
# for data with unknown, changing, or unpredictable access patterns,
|
2265
|
+
# independent of object size or retention period. If the size of an
|
2266
|
+
# object is less than 128 KB, it is not eligible for auto-tiering.
|
2267
|
+
# Smaller objects can be stored, but they are always charged at the
|
2268
|
+
# Frequent Access tier rates in the S3 Intelligent-Tiering storage
|
2269
|
+
# class.
|
2270
|
+
#
|
2271
|
+
# For more information, see [Storage class for automatically optimizing
|
2272
|
+
# frequently and infrequently accessed objects][1].
|
2270
2273
|
#
|
2271
2274
|
# Operations related to `DeleteBucketIntelligentTieringConfiguration`
|
2272
2275
|
# include:
|
@@ -2882,7 +2885,8 @@ module Aws::S3
|
|
2882
2885
|
#
|
2883
2886
|
# @option params [Boolean] :bypass_governance_retention
|
2884
2887
|
# Indicates whether S3 Object Lock should bypass Governance-mode
|
2885
|
-
# restrictions to process this operation.
|
2888
|
+
# restrictions to process this operation. To use this header, you must
|
2889
|
+
# have the `s3:PutBucketPublicAccessBlock` permission.
|
2886
2890
|
#
|
2887
2891
|
# @option params [String] :expected_bucket_owner
|
2888
2892
|
# The account ID of the expected bucket owner. If the bucket is owned by
|
@@ -3010,35 +3014,35 @@ module Aws::S3
|
|
3010
3014
|
# * {Types::DeleteObjectTaggingOutput#version_id #version_id} => String
|
3011
3015
|
#
|
3012
3016
|
#
|
3013
|
-
# @example Example: To remove tag set from an object
|
3017
|
+
# @example Example: To remove tag set from an object version
|
3014
3018
|
#
|
3015
|
-
# # The following example removes tag set associated with the specified object.
|
3016
|
-
# #
|
3019
|
+
# # The following example removes tag set associated with the specified object version. The request specifies both the
|
3020
|
+
# # object key and object version.
|
3017
3021
|
#
|
3018
3022
|
# resp = client.delete_object_tagging({
|
3019
3023
|
# bucket: "examplebucket",
|
3020
3024
|
# key: "HappyFace.jpg",
|
3025
|
+
# version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
|
3021
3026
|
# })
|
3022
3027
|
#
|
3023
3028
|
# resp.to_h outputs the following:
|
3024
3029
|
# {
|
3025
|
-
# version_id: "
|
3030
|
+
# version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
|
3026
3031
|
# }
|
3027
3032
|
#
|
3028
|
-
# @example Example: To remove tag set from an object
|
3033
|
+
# @example Example: To remove tag set from an object
|
3029
3034
|
#
|
3030
|
-
# # The following example removes tag set associated with the specified object
|
3031
|
-
# #
|
3035
|
+
# # The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the
|
3036
|
+
# # operation removes tag set from the latest object version.
|
3032
3037
|
#
|
3033
3038
|
# resp = client.delete_object_tagging({
|
3034
3039
|
# bucket: "examplebucket",
|
3035
3040
|
# key: "HappyFace.jpg",
|
3036
|
-
# version_id: "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI",
|
3037
3041
|
# })
|
3038
3042
|
#
|
3039
3043
|
# resp.to_h outputs the following:
|
3040
3044
|
# {
|
3041
|
-
# version_id: "
|
3045
|
+
# version_id: "null",
|
3042
3046
|
# }
|
3043
3047
|
#
|
3044
3048
|
# @example Request syntax with placeholder values
|
@@ -3163,8 +3167,8 @@ module Aws::S3
|
|
3163
3167
|
#
|
3164
3168
|
# @option params [Boolean] :bypass_governance_retention
|
3165
3169
|
# Specifies whether you want to delete this object even if it has a
|
3166
|
-
# Governance-type Object Lock in place.
|
3167
|
-
#
|
3170
|
+
# Governance-type Object Lock in place. To use this header, you must
|
3171
|
+
# have the `s3:PutBucketPublicAccessBlock` permission.
|
3168
3172
|
#
|
3169
3173
|
# @option params [String] :expected_bucket_owner
|
3170
3174
|
# The account ID of the expected bucket owner. If the bucket is owned by
|
@@ -3178,20 +3182,22 @@ module Aws::S3
|
|
3178
3182
|
# * {Types::DeleteObjectsOutput#errors #errors} => Array<Types::Error>
|
3179
3183
|
#
|
3180
3184
|
#
|
3181
|
-
# @example Example: To delete multiple
|
3185
|
+
# @example Example: To delete multiple object versions from a versioned bucket
|
3182
3186
|
#
|
3183
|
-
# # The following example deletes objects from a bucket. The
|
3184
|
-
# #
|
3187
|
+
# # The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object
|
3188
|
+
# # versions and returns the key and versions of deleted objects in the response.
|
3185
3189
|
#
|
3186
3190
|
# resp = client.delete_objects({
|
3187
3191
|
# bucket: "examplebucket",
|
3188
3192
|
# delete: {
|
3189
3193
|
# objects: [
|
3190
3194
|
# {
|
3191
|
-
# key: "
|
3195
|
+
# key: "HappyFace.jpg",
|
3196
|
+
# version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
|
3192
3197
|
# },
|
3193
3198
|
# {
|
3194
|
-
# key: "
|
3199
|
+
# key: "HappyFace.jpg",
|
3200
|
+
# version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
|
3195
3201
|
# },
|
3196
3202
|
# ],
|
3197
3203
|
# quiet: false,
|
@@ -3202,34 +3208,30 @@ module Aws::S3
|
|
3202
3208
|
# {
|
3203
3209
|
# deleted: [
|
3204
3210
|
# {
|
3205
|
-
#
|
3206
|
-
#
|
3207
|
-
# key: "objectkey1",
|
3211
|
+
# key: "HappyFace.jpg",
|
3212
|
+
# version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
|
3208
3213
|
# },
|
3209
3214
|
# {
|
3210
|
-
#
|
3211
|
-
#
|
3212
|
-
# key: "objectkey2",
|
3215
|
+
# key: "HappyFace.jpg",
|
3216
|
+
# version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
|
3213
3217
|
# },
|
3214
3218
|
# ],
|
3215
3219
|
# }
|
3216
3220
|
#
|
3217
|
-
# @example Example: To delete multiple
|
3221
|
+
# @example Example: To delete multiple objects from a versioned bucket
|
3218
3222
|
#
|
3219
|
-
# # The following example deletes objects from a bucket. The
|
3220
|
-
# #
|
3223
|
+
# # The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the
|
3224
|
+
# # object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
|
3221
3225
|
#
|
3222
3226
|
# resp = client.delete_objects({
|
3223
3227
|
# bucket: "examplebucket",
|
3224
3228
|
# delete: {
|
3225
3229
|
# objects: [
|
3226
3230
|
# {
|
3227
|
-
# key: "
|
3228
|
-
# version_id: "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b",
|
3231
|
+
# key: "objectkey1",
|
3229
3232
|
# },
|
3230
3233
|
# {
|
3231
|
-
# key: "
|
3232
|
-
# version_id: "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd",
|
3234
|
+
# key: "objectkey2",
|
3233
3235
|
# },
|
3234
3236
|
# ],
|
3235
3237
|
# quiet: false,
|
@@ -3240,12 +3242,14 @@ module Aws::S3
|
|
3240
3242
|
# {
|
3241
3243
|
# deleted: [
|
3242
3244
|
# {
|
3243
|
-
#
|
3244
|
-
#
|
3245
|
+
# delete_marker: true,
|
3246
|
+
# delete_marker_version_id: "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
|
3247
|
+
# key: "objectkey1",
|
3245
3248
|
# },
|
3246
3249
|
# {
|
3247
|
-
#
|
3248
|
-
#
|
3250
|
+
# delete_marker: true,
|
3251
|
+
# delete_marker_version_id: "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
|
3252
|
+
# key: "objectkey2",
|
3249
3253
|
# },
|
3250
3254
|
# ],
|
3251
3255
|
# }
|
@@ -3715,21 +3719,23 @@ module Aws::S3
|
|
3715
3719
|
#
|
3716
3720
|
# The S3 Intelligent-Tiering storage class is designed to optimize
|
3717
3721
|
# storage costs by automatically moving data to the most cost-effective
|
3718
|
-
# storage access tier, without
|
3719
|
-
# Intelligent-Tiering delivers automatic cost savings
|
3720
|
-
#
|
3721
|
-
#
|
3722
|
-
#
|
3723
|
-
#
|
3724
|
-
#
|
3725
|
-
#
|
3726
|
-
#
|
3727
|
-
#
|
3728
|
-
#
|
3729
|
-
#
|
3730
|
-
#
|
3731
|
-
#
|
3732
|
-
#
|
3722
|
+
# storage access tier, without performance impact or operational
|
3723
|
+
# overhead. S3 Intelligent-Tiering delivers automatic cost savings in
|
3724
|
+
# two low latency and high throughput access tiers. For data that can be
|
3725
|
+
# accessed asynchronously, you can choose to activate automatic
|
3726
|
+
# archiving capabilities within the S3 Intelligent-Tiering storage
|
3727
|
+
# class.
|
3728
|
+
#
|
3729
|
+
# The S3 Intelligent-Tiering storage class is the ideal storage class
|
3730
|
+
# for data with unknown, changing, or unpredictable access patterns,
|
3731
|
+
# independent of object size or retention period. If the size of an
|
3732
|
+
# object is less than 128 KB, it is not eligible for auto-tiering.
|
3733
|
+
# Smaller objects can be stored, but they are always charged at the
|
3734
|
+
# Frequent Access tier rates in the S3 Intelligent-Tiering storage
|
3735
|
+
# class.
|
3736
|
+
#
|
3737
|
+
# For more information, see [Storage class for automatically optimizing
|
3738
|
+
# frequently and infrequently accessed objects][1].
|
3733
3739
|
#
|
3734
3740
|
# Operations related to `GetBucketIntelligentTieringConfiguration`
|
3735
3741
|
# include:
|
@@ -4296,10 +4302,12 @@ module Aws::S3
|
|
4296
4302
|
# resp.metrics_configuration.filter.prefix #=> String
|
4297
4303
|
# resp.metrics_configuration.filter.tag.key #=> String
|
4298
4304
|
# resp.metrics_configuration.filter.tag.value #=> String
|
4305
|
+
# resp.metrics_configuration.filter.access_point_arn #=> String
|
4299
4306
|
# resp.metrics_configuration.filter.and.prefix #=> String
|
4300
4307
|
# resp.metrics_configuration.filter.and.tags #=> Array
|
4301
4308
|
# resp.metrics_configuration.filter.and.tags[0].key #=> String
|
4302
4309
|
# resp.metrics_configuration.filter.and.tags[0].value #=> String
|
4310
|
+
# resp.metrics_configuration.filter.and.access_point_arn #=> String
|
4303
4311
|
#
|
4304
4312
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetricsConfiguration AWS API Documentation
|
4305
4313
|
#
|
@@ -5157,10 +5165,9 @@ module Aws::S3
|
|
5157
5165
|
#
|
5158
5166
|
# Encryption request headers, like `x-amz-server-side-encryption`,
|
5159
5167
|
# should not be sent for GET requests if your object uses server-side
|
5160
|
-
# encryption with
|
5161
|
-
#
|
5162
|
-
#
|
5163
|
-
# HTTP 400 BadRequest error.
|
5168
|
+
# encryption with KMS keys (SSE-KMS) or server-side encryption with
|
5169
|
+
# Amazon S3–managed encryption keys (SSE-S3). If your object does use
|
5170
|
+
# these types of keys, you’ll get an HTTP 400 BadRequest error.
|
5164
5171
|
#
|
5165
5172
|
# If you encrypt an object by using server-side encryption with
|
5166
5173
|
# customer-provided encryption keys (SSE-C) when you store the object in
|
@@ -5176,18 +5183,19 @@ module Aws::S3
|
|
5176
5183
|
# For more information about SSE-C, see [Server-Side Encryption (Using
|
5177
5184
|
# Customer-Provided Encryption Keys)][6].
|
5178
5185
|
#
|
5179
|
-
# Assuming you have permission to read object tags
|
5180
|
-
#
|
5181
|
-
#
|
5182
|
-
#
|
5183
|
-
#
|
5186
|
+
# Assuming you have the relevant permission to read object tags, the
|
5187
|
+
# response also returns the `x-amz-tagging-count` header that provides
|
5188
|
+
# the count of number of tags associated with the object. You can use
|
5189
|
+
# [GetObjectTagging][7] to retrieve the tag set associated with an
|
5190
|
+
# object.
|
5184
5191
|
#
|
5185
5192
|
# **Permissions**
|
5186
5193
|
#
|
5187
|
-
# You need the
|
5188
|
-
# information, see [Specifying Permissions in a
|
5189
|
-
# object you request does not exist, the error Amazon
|
5190
|
-
# on whether you also have the `s3:ListBucket`
|
5194
|
+
# You need the relevant read object (or version) permission for this
|
5195
|
+
# operation. For more information, see [Specifying Permissions in a
|
5196
|
+
# Policy][8]. If the object you request does not exist, the error Amazon
|
5197
|
+
# S3 returns depends on whether you also have the `s3:ListBucket`
|
5198
|
+
# permission.
|
5191
5199
|
#
|
5192
5200
|
# * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
|
5193
5201
|
# will return an HTTP status code 404 ("no such key") error.
|
@@ -5294,6 +5302,9 @@ module Aws::S3
|
|
5294
5302
|
# name. For more information about access point ARNs, see [Using access
|
5295
5303
|
# points][1] in the *Amazon S3 User Guide*.
|
5296
5304
|
#
|
5305
|
+
# When using an Object Lambda access point the hostname takes the form
|
5306
|
+
# *AccessPointName*-*AccountId*.s3-object-lambda.*Region*.amazonaws.com.
|
5307
|
+
#
|
5297
5308
|
# When using this action with Amazon S3 on Outposts, you must direct
|
5298
5309
|
# requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
5299
5310
|
# takes the form
|
@@ -5437,49 +5448,49 @@ module Aws::S3
|
|
5437
5448
|
# * {Types::GetObjectOutput#object_lock_legal_hold_status #object_lock_legal_hold_status} => String
|
5438
5449
|
#
|
5439
5450
|
#
|
5440
|
-
# @example Example: To retrieve
|
5451
|
+
# @example Example: To retrieve an object
|
5441
5452
|
#
|
5442
|
-
# # The following example retrieves an object for an S3 bucket.
|
5443
|
-
# # specific byte range.
|
5453
|
+
# # The following example retrieves an object for an S3 bucket.
|
5444
5454
|
#
|
5445
5455
|
# resp = client.get_object({
|
5446
5456
|
# bucket: "examplebucket",
|
5447
|
-
# key: "
|
5448
|
-
# range: "bytes=0-9",
|
5457
|
+
# key: "HappyFace.jpg",
|
5449
5458
|
# })
|
5450
5459
|
#
|
5451
5460
|
# resp.to_h outputs the following:
|
5452
5461
|
# {
|
5453
5462
|
# accept_ranges: "bytes",
|
5454
|
-
# content_length:
|
5455
|
-
#
|
5456
|
-
#
|
5457
|
-
#
|
5458
|
-
# last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
|
5463
|
+
# content_length: 3191,
|
5464
|
+
# content_type: "image/jpeg",
|
5465
|
+
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
5466
|
+
# last_modified: Time.parse("Thu, 15 Dec 2016 01:19:41 GMT"),
|
5459
5467
|
# metadata: {
|
5460
5468
|
# },
|
5469
|
+
# tag_count: 2,
|
5461
5470
|
# version_id: "null",
|
5462
5471
|
# }
|
5463
5472
|
#
|
5464
|
-
# @example Example: To retrieve an object
|
5473
|
+
# @example Example: To retrieve a byte range of an object
|
5465
5474
|
#
|
5466
|
-
# # The following example retrieves an object for an S3 bucket.
|
5475
|
+
# # The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a
|
5476
|
+
# # specific byte range.
|
5467
5477
|
#
|
5468
5478
|
# resp = client.get_object({
|
5469
5479
|
# bucket: "examplebucket",
|
5470
|
-
# key: "
|
5480
|
+
# key: "SampleFile.txt",
|
5481
|
+
# range: "bytes=0-9",
|
5471
5482
|
# })
|
5472
5483
|
#
|
5473
5484
|
# resp.to_h outputs the following:
|
5474
5485
|
# {
|
5475
5486
|
# accept_ranges: "bytes",
|
5476
|
-
# content_length:
|
5477
|
-
#
|
5478
|
-
#
|
5479
|
-
#
|
5487
|
+
# content_length: 10,
|
5488
|
+
# content_range: "bytes 0-9/43",
|
5489
|
+
# content_type: "text/plain",
|
5490
|
+
# etag: "\"0d94420ffd0bc68cd3d152506b97a9cc\"",
|
5491
|
+
# last_modified: Time.parse("Thu, 09 Oct 2014 22:57:28 GMT"),
|
5480
5492
|
# metadata: {
|
5481
5493
|
# },
|
5482
|
-
# tag_count: 2,
|
5483
5494
|
# version_id: "null",
|
5484
5495
|
# }
|
5485
5496
|
#
|
@@ -6383,10 +6394,9 @@ module Aws::S3
|
|
6383
6394
|
#
|
6384
6395
|
# <note markdown="1"> * Encryption request headers, like `x-amz-server-side-encryption`,
|
6385
6396
|
# should not be sent for GET requests if your object uses server-side
|
6386
|
-
# encryption with
|
6387
|
-
#
|
6388
|
-
#
|
6389
|
-
# HTTP 400 BadRequest error.
|
6397
|
+
# encryption with KMS keys (SSE-KMS) or server-side encryption with
|
6398
|
+
# Amazon S3–managed encryption keys (SSE-S3). If your object does use
|
6399
|
+
# these types of keys, you’ll get an HTTP 400 BadRequest error.
|
6390
6400
|
#
|
6391
6401
|
# * The last modified property in this case is the creation date of the
|
6392
6402
|
# object.
|
@@ -6420,10 +6430,11 @@ module Aws::S3
|
|
6420
6430
|
#
|
6421
6431
|
# **Permissions**
|
6422
6432
|
#
|
6423
|
-
# You need the
|
6424
|
-
# information, see [Specifying Permissions in a
|
6425
|
-
# object you request does not exist, the error Amazon
|
6426
|
-
# on whether you also have the s3:ListBucket
|
6433
|
+
# You need the relevant read object (or version) permission for this
|
6434
|
+
# operation. For more information, see [Specifying Permissions in a
|
6435
|
+
# Policy][4]. If the object you request does not exist, the error Amazon
|
6436
|
+
# S3 returns depends on whether you also have the s3:ListBucket
|
6437
|
+
# permission.
|
6427
6438
|
#
|
6428
6439
|
# * If you have the `s3:ListBucket` permission on the bucket, Amazon S3
|
6429
6440
|
# returns an HTTP status code 404 ("no such key") error.
|
@@ -6771,21 +6782,23 @@ module Aws::S3
|
|
6771
6782
|
#
|
6772
6783
|
# The S3 Intelligent-Tiering storage class is designed to optimize
|
6773
6784
|
# storage costs by automatically moving data to the most cost-effective
|
6774
|
-
# storage access tier, without
|
6775
|
-
# Intelligent-Tiering delivers automatic cost savings
|
6776
|
-
#
|
6777
|
-
#
|
6778
|
-
#
|
6779
|
-
#
|
6780
|
-
#
|
6781
|
-
#
|
6782
|
-
#
|
6783
|
-
#
|
6784
|
-
#
|
6785
|
-
#
|
6786
|
-
#
|
6787
|
-
#
|
6788
|
-
#
|
6785
|
+
# storage access tier, without performance impact or operational
|
6786
|
+
# overhead. S3 Intelligent-Tiering delivers automatic cost savings in
|
6787
|
+
# two low latency and high throughput access tiers. For data that can be
|
6788
|
+
# accessed asynchronously, you can choose to activate automatic
|
6789
|
+
# archiving capabilities within the S3 Intelligent-Tiering storage
|
6790
|
+
# class.
|
6791
|
+
#
|
6792
|
+
# The S3 Intelligent-Tiering storage class is the ideal storage class
|
6793
|
+
# for data with unknown, changing, or unpredictable access patterns,
|
6794
|
+
# independent of object size or retention period. If the size of an
|
6795
|
+
# object is less than 128 KB, it is not eligible for auto-tiering.
|
6796
|
+
# Smaller objects can be stored, but they are always charged at the
|
6797
|
+
# Frequent Access tier rates in the S3 Intelligent-Tiering storage
|
6798
|
+
# class.
|
6799
|
+
#
|
6800
|
+
# For more information, see [Storage class for automatically optimizing
|
6801
|
+
# frequently and infrequently accessed objects][1].
|
6789
6802
|
#
|
6790
6803
|
# Operations related to `ListBucketIntelligentTieringConfigurations`
|
6791
6804
|
# include:
|
@@ -7033,10 +7046,12 @@ module Aws::S3
|
|
7033
7046
|
# resp.metrics_configuration_list[0].filter.prefix #=> String
|
7034
7047
|
# resp.metrics_configuration_list[0].filter.tag.key #=> String
|
7035
7048
|
# resp.metrics_configuration_list[0].filter.tag.value #=> String
|
7049
|
+
# resp.metrics_configuration_list[0].filter.access_point_arn #=> String
|
7036
7050
|
# resp.metrics_configuration_list[0].filter.and.prefix #=> String
|
7037
7051
|
# resp.metrics_configuration_list[0].filter.and.tags #=> Array
|
7038
7052
|
# resp.metrics_configuration_list[0].filter.and.tags[0].key #=> String
|
7039
7053
|
# resp.metrics_configuration_list[0].filter.and.tags[0].value #=> String
|
7054
|
+
# resp.metrics_configuration_list[0].filter.and.access_point_arn #=> String
|
7040
7055
|
#
|
7041
7056
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketMetricsConfigurations AWS API Documentation
|
7042
7057
|
#
|
@@ -8814,12 +8829,12 @@ module Aws::S3
|
|
8814
8829
|
# encryption and Amazon S3 Bucket Key for an existing bucket.
|
8815
8830
|
#
|
8816
8831
|
# Default encryption for a bucket can use server-side encryption with
|
8817
|
-
# Amazon S3-managed keys (SSE-S3) or
|
8818
|
-
#
|
8819
|
-
#
|
8820
|
-
#
|
8821
|
-
#
|
8822
|
-
#
|
8832
|
+
# Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). If
|
8833
|
+
# you specify default encryption using SSE-KMS, you can also configure
|
8834
|
+
# Amazon S3 Bucket Key. For information about default encryption, see
|
8835
|
+
# [Amazon S3 default bucket encryption][1] in the *Amazon S3 User
|
8836
|
+
# Guide*. For more information about S3 Bucket Keys, see [Amazon S3
|
8837
|
+
# Bucket Keys][2] in the *Amazon S3 User Guide*.
|
8823
8838
|
#
|
8824
8839
|
# This action requires Amazon Web Services Signature Version 4. For more
|
8825
8840
|
# information, see [ Authenticating Requests (Amazon Web Services
|
@@ -8851,10 +8866,10 @@ module Aws::S3
|
|
8851
8866
|
#
|
8852
8867
|
# @option params [required, String] :bucket
|
8853
8868
|
# Specifies default encryption for a bucket using server-side encryption
|
8854
|
-
# with Amazon S3-managed keys (SSE-S3) or customer
|
8855
|
-
#
|
8856
|
-
#
|
8857
|
-
#
|
8869
|
+
# with Amazon S3-managed keys (SSE-S3) or customer managed keys
|
8870
|
+
# (SSE-KMS). For information about the Amazon S3 default encryption
|
8871
|
+
# feature, see [Amazon S3 Default Bucket Encryption][1] in the *Amazon
|
8872
|
+
# S3 User Guide*.
|
8858
8873
|
#
|
8859
8874
|
#
|
8860
8875
|
#
|
@@ -8912,21 +8927,23 @@ module Aws::S3
|
|
8912
8927
|
#
|
8913
8928
|
# The S3 Intelligent-Tiering storage class is designed to optimize
|
8914
8929
|
# storage costs by automatically moving data to the most cost-effective
|
8915
|
-
# storage access tier, without
|
8916
|
-
# Intelligent-Tiering delivers automatic cost savings
|
8917
|
-
#
|
8918
|
-
#
|
8919
|
-
#
|
8920
|
-
#
|
8921
|
-
#
|
8922
|
-
#
|
8923
|
-
#
|
8924
|
-
#
|
8925
|
-
#
|
8926
|
-
#
|
8927
|
-
#
|
8928
|
-
#
|
8929
|
-
#
|
8930
|
+
# storage access tier, without performance impact or operational
|
8931
|
+
# overhead. S3 Intelligent-Tiering delivers automatic cost savings in
|
8932
|
+
# two low latency and high throughput access tiers. For data that can be
|
8933
|
+
# accessed asynchronously, you can choose to activate automatic
|
8934
|
+
# archiving capabilities within the S3 Intelligent-Tiering storage
|
8935
|
+
# class.
|
8936
|
+
#
|
8937
|
+
# The S3 Intelligent-Tiering storage class is the ideal storage class
|
8938
|
+
# for data with unknown, changing, or unpredictable access patterns,
|
8939
|
+
# independent of object size or retention period. If the size of an
|
8940
|
+
# object is less than 128 KB, it is not eligible for auto-tiering.
|
8941
|
+
# Smaller objects can be stored, but they are always charged at the
|
8942
|
+
# Frequent Access tier rates in the S3 Intelligent-Tiering storage
|
8943
|
+
# class.
|
8944
|
+
#
|
8945
|
+
# For more information, see [Storage class for automatically optimizing
|
8946
|
+
# frequently and infrequently accessed objects][1].
|
8930
8947
|
#
|
8931
8948
|
# Operations related to `PutBucketIntelligentTieringConfiguration`
|
8932
8949
|
# include:
|
@@ -9644,7 +9661,7 @@ module Aws::S3
|
|
9644
9661
|
#
|
9645
9662
|
# * [DeleteBucketMetricsConfiguration][4]
|
9646
9663
|
#
|
9647
|
-
# * [
|
9664
|
+
# * [GetBucketMetricsConfiguration][5]
|
9648
9665
|
#
|
9649
9666
|
# * [ListBucketMetricsConfigurations][6]
|
9650
9667
|
#
|
@@ -9663,7 +9680,7 @@ module Aws::S3
|
|
9663
9680
|
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
|
9664
9681
|
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html
|
9665
9682
|
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html
|
9666
|
-
# [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/
|
9683
|
+
# [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html
|
9667
9684
|
# [6]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html
|
9668
9685
|
#
|
9669
9686
|
# @option params [required, String] :bucket
|
@@ -9695,6 +9712,7 @@ module Aws::S3
|
|
9695
9712
|
# key: "ObjectKey", # required
|
9696
9713
|
# value: "Value", # required
|
9697
9714
|
# },
|
9715
|
+
# access_point_arn: "AccessPointArn",
|
9698
9716
|
# and: {
|
9699
9717
|
# prefix: "Prefix",
|
9700
9718
|
# tags: [
|
@@ -9703,6 +9721,7 @@ module Aws::S3
|
|
9703
9721
|
# value: "Value", # required
|
9704
9722
|
# },
|
9705
9723
|
# ],
|
9724
|
+
# access_point_arn: "AccessPointArn",
|
9706
9725
|
# },
|
9707
9726
|
# },
|
9708
9727
|
# },
|
@@ -10135,13 +10154,12 @@ module Aws::S3
|
|
10135
10154
|
# **Handling Replication of Encrypted Objects**
|
10136
10155
|
#
|
10137
10156
|
# By default, Amazon S3 doesn't replicate objects that are stored at
|
10138
|
-
# rest using server-side encryption with
|
10139
|
-
#
|
10140
|
-
#
|
10141
|
-
# `
|
10142
|
-
#
|
10143
|
-
#
|
10144
|
-
# Web Services KMS][4].
|
10157
|
+
# rest using server-side encryption with KMS keys. To replicate Amazon
|
10158
|
+
# Web Services KMS-encrypted objects, add the following:
|
10159
|
+
# `SourceSelectionCriteria`, `SseKmsEncryptedObjects`, `Status`,
|
10160
|
+
# `EncryptionConfiguration`, and `ReplicaKmsKeyID`. For information
|
10161
|
+
# about replication configuration, see [Replicating Objects Created with
|
10162
|
+
# SSE Using KMS keys][4].
|
10145
10163
|
#
|
10146
10164
|
# For information on `PutBucketReplication` errors, see [List of
|
10147
10165
|
# replication-related error codes][5]
|
@@ -11104,12 +11122,12 @@ module Aws::S3
|
|
11104
11122
|
# If `x-amz-server-side-encryption` is present and has the value of
|
11105
11123
|
# `aws:kms`, this header specifies the ID of the Amazon Web Services Key
|
11106
11124
|
# Management Service (Amazon Web Services KMS) symmetrical customer
|
11107
|
-
# managed
|
11108
|
-
#
|
11125
|
+
# managed key that was used for the object. If you specify
|
11126
|
+
# `x-amz-server-side-encryption:aws:kms`, but do not provide`
|
11109
11127
|
# x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
11110
|
-
# Amazon Web Services managed
|
11111
|
-
#
|
11112
|
-
#
|
11128
|
+
# Amazon Web Services managed key to protect the data. If the KMS key
|
11129
|
+
# does not exist in the same account issuing the command, you must use
|
11130
|
+
# the full ARN and not just the ID.
|
11113
11131
|
#
|
11114
11132
|
# @option params [String] :ssekms_encryption_context
|
11115
11133
|
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
@@ -11174,113 +11192,113 @@ module Aws::S3
|
|
11174
11192
|
# * {Types::PutObjectOutput#request_charged #request_charged} => String
|
11175
11193
|
#
|
11176
11194
|
#
|
11177
|
-
# @example Example: To
|
11195
|
+
# @example Example: To upload an object and specify optional tags
|
11178
11196
|
#
|
11179
|
-
# # The following example
|
11197
|
+
# # The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore
|
11198
|
+
# # S3 returns version ID of the newly created object.
|
11180
11199
|
#
|
11181
11200
|
# resp = client.put_object({
|
11182
|
-
# body: "
|
11201
|
+
# body: "c:\\HappyFace.jpg",
|
11183
11202
|
# bucket: "examplebucket",
|
11184
|
-
# key: "
|
11203
|
+
# key: "HappyFace.jpg",
|
11204
|
+
# tagging: "key1=value1&key2=value2",
|
11185
11205
|
# })
|
11186
11206
|
#
|
11187
11207
|
# resp.to_h outputs the following:
|
11188
11208
|
# {
|
11189
11209
|
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
11190
|
-
# version_id: "
|
11210
|
+
# version_id: "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a",
|
11191
11211
|
# }
|
11192
11212
|
#
|
11193
|
-
# @example Example: To upload an object and specify
|
11213
|
+
# @example Example: To upload an object and specify canned ACL.
|
11194
11214
|
#
|
11195
|
-
# # The following example uploads
|
11196
|
-
# # S3 returns version ID
|
11215
|
+
# # The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ
|
11216
|
+
# # access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.
|
11197
11217
|
#
|
11198
11218
|
# resp = client.put_object({
|
11199
|
-
#
|
11219
|
+
# acl: "authenticated-read",
|
11220
|
+
# body: "filetoupload",
|
11200
11221
|
# bucket: "examplebucket",
|
11201
|
-
# key: "
|
11202
|
-
# tagging: "key1=value1&key2=value2",
|
11222
|
+
# key: "exampleobject",
|
11203
11223
|
# })
|
11204
11224
|
#
|
11205
11225
|
# resp.to_h outputs the following:
|
11206
11226
|
# {
|
11207
11227
|
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
11208
|
-
# version_id: "
|
11228
|
+
# version_id: "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr",
|
11209
11229
|
# }
|
11210
11230
|
#
|
11211
|
-
# @example Example: To upload an object
|
11231
|
+
# @example Example: To upload an object and specify server-side encryption and object tags
|
11212
11232
|
#
|
11213
|
-
# # The following example uploads
|
11214
|
-
# #
|
11233
|
+
# # The following example uploads and object. The request specifies the optional server-side encryption option. The request
|
11234
|
+
# # also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
|
11215
11235
|
#
|
11216
11236
|
# resp = client.put_object({
|
11217
|
-
# body: "
|
11237
|
+
# body: "filetoupload",
|
11218
11238
|
# bucket: "examplebucket",
|
11219
|
-
# key: "
|
11239
|
+
# key: "exampleobject",
|
11240
|
+
# server_side_encryption: "AES256",
|
11241
|
+
# tagging: "key1=value1&key2=value2",
|
11220
11242
|
# })
|
11221
11243
|
#
|
11222
11244
|
# resp.to_h outputs the following:
|
11223
11245
|
# {
|
11224
11246
|
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
11225
|
-
#
|
11247
|
+
# server_side_encryption: "AES256",
|
11248
|
+
# version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
|
11226
11249
|
# }
|
11227
11250
|
#
|
11228
|
-
# @example Example: To
|
11251
|
+
# @example Example: To create an object.
|
11229
11252
|
#
|
11230
|
-
# # The following example
|
11231
|
-
# # storage class and use server-side encryption.
|
11253
|
+
# # The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
|
11232
11254
|
#
|
11233
11255
|
# resp = client.put_object({
|
11234
|
-
# body: "
|
11256
|
+
# body: "filetoupload",
|
11235
11257
|
# bucket: "examplebucket",
|
11236
|
-
# key: "
|
11237
|
-
# server_side_encryption: "AES256",
|
11238
|
-
# storage_class: "STANDARD_IA",
|
11258
|
+
# key: "objectkey",
|
11239
11259
|
# })
|
11240
11260
|
#
|
11241
11261
|
# resp.to_h outputs the following:
|
11242
11262
|
# {
|
11243
11263
|
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
11244
|
-
#
|
11245
|
-
# version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
|
11264
|
+
# version_id: "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ",
|
11246
11265
|
# }
|
11247
11266
|
#
|
11248
|
-
# @example Example: To upload an object
|
11267
|
+
# @example Example: To upload an object
|
11249
11268
|
#
|
11250
|
-
# # The following example uploads
|
11251
|
-
# #
|
11269
|
+
# # The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file
|
11270
|
+
# # syntax. S3 returns VersionId of the newly created object.
|
11252
11271
|
#
|
11253
11272
|
# resp = client.put_object({
|
11254
|
-
# body: "
|
11273
|
+
# body: "HappyFace.jpg",
|
11255
11274
|
# bucket: "examplebucket",
|
11256
|
-
# key: "
|
11257
|
-
# server_side_encryption: "AES256",
|
11258
|
-
# tagging: "key1=value1&key2=value2",
|
11275
|
+
# key: "HappyFace.jpg",
|
11259
11276
|
# })
|
11260
11277
|
#
|
11261
11278
|
# resp.to_h outputs the following:
|
11262
11279
|
# {
|
11263
11280
|
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
11264
|
-
#
|
11265
|
-
# version_id: "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt",
|
11281
|
+
# version_id: "tpf3zF08nBplQK1XLOefGskR7mGDwcDk",
|
11266
11282
|
# }
|
11267
11283
|
#
|
11268
|
-
# @example Example: To upload an object
|
11284
|
+
# @example Example: To upload an object (specify optional headers)
|
11269
11285
|
#
|
11270
|
-
# # The following example uploads
|
11271
|
-
# #
|
11286
|
+
# # The following example uploads an object. The request specifies optional request headers to directs S3 to use specific
|
11287
|
+
# # storage class and use server-side encryption.
|
11272
11288
|
#
|
11273
11289
|
# resp = client.put_object({
|
11274
|
-
#
|
11275
|
-
# body: "filetoupload",
|
11290
|
+
# body: "HappyFace.jpg",
|
11276
11291
|
# bucket: "examplebucket",
|
11277
|
-
# key: "
|
11292
|
+
# key: "HappyFace.jpg",
|
11293
|
+
# server_side_encryption: "AES256",
|
11294
|
+
# storage_class: "STANDARD_IA",
|
11278
11295
|
# })
|
11279
11296
|
#
|
11280
11297
|
# resp.to_h outputs the following:
|
11281
11298
|
# {
|
11282
11299
|
# etag: "\"6805f2cfc46c0f04559748bb039d69ae\"",
|
11283
|
-
#
|
11300
|
+
# server_side_encryption: "AES256",
|
11301
|
+
# version_id: "CG612hodqujkf8FaaNfp8U..FIhLROcp",
|
11284
11302
|
# }
|
11285
11303
|
#
|
11286
11304
|
# @example Example: To upload object and specify user-defined metadata
|
@@ -12734,12 +12752,11 @@ module Aws::S3
|
|
12734
12752
|
# Encryption Keys)][5] in the *Amazon S3 User Guide*.
|
12735
12753
|
#
|
12736
12754
|
# For objects that are encrypted with Amazon S3 managed encryption
|
12737
|
-
# keys (SSE-S3) and
|
12738
|
-
#
|
12739
|
-
#
|
12740
|
-
#
|
12741
|
-
#
|
12742
|
-
# the *Amazon S3 User Guide*.
|
12755
|
+
# keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS),
|
12756
|
+
# server-side encryption is handled transparently, so you don't need
|
12757
|
+
# to specify anything. For more information about server-side
|
12758
|
+
# encryption, including SSE-S3 and SSE-KMS, see [Protecting Data Using
|
12759
|
+
# Server-Side Encryption][6] in the *Amazon S3 User Guide*.
|
12743
12760
|
#
|
12744
12761
|
# **Working with the Response Body**
|
12745
12762
|
#
|
@@ -13734,9 +13751,9 @@ module Aws::S3
|
|
13734
13751
|
end
|
13735
13752
|
|
13736
13753
|
# Passes transformed objects to a `GetObject` operation when using
|
13737
|
-
# Object Lambda
|
13738
|
-
#
|
13739
|
-
#
|
13754
|
+
# Object Lambda access points. For information about Object Lambda
|
13755
|
+
# access points, see [Transforming objects with Object Lambda access
|
13756
|
+
# points][1] in the *Amazon S3 User Guide*.
|
13740
13757
|
#
|
13741
13758
|
# This operation supports metadata that can be returned by
|
13742
13759
|
# [GetObject][2], in addition to `RequestRoute`, `RequestToken`,
|
@@ -13758,8 +13775,8 @@ module Aws::S3
|
|
13758
13775
|
# identifiable information (PII) and decompress S3 objects. These Lambda
|
13759
13776
|
# functions are available in the Amazon Web Services Serverless
|
13760
13777
|
# Application Repository, and can be selected through the Amazon Web
|
13761
|
-
# Services Management Console when you create your Object Lambda
|
13762
|
-
#
|
13778
|
+
# Services Management Console when you create your Object Lambda access
|
13779
|
+
# point.
|
13763
13780
|
#
|
13764
13781
|
# Example 1: PII Access Control - This Lambda function uses Amazon
|
13765
13782
|
# Comprehend, a natural language processing (NLP) service using machine
|
@@ -13951,8 +13968,8 @@ module Aws::S3
|
|
13951
13968
|
#
|
13952
13969
|
# @option params [String] :ssekms_key_id
|
13953
13970
|
# If present, specifies the ID of the Amazon Web Services Key Management
|
13954
|
-
# Service (Amazon Web Services KMS) symmetric customer managed
|
13955
|
-
#
|
13971
|
+
# Service (Amazon Web Services KMS) symmetric customer managed key that
|
13972
|
+
# was used for stored in Amazon S3 object.
|
13956
13973
|
#
|
13957
13974
|
# @option params [String] :sse_customer_key_md5
|
13958
13975
|
# 128-bit MD5 digest of customer-provided encryption key used in Amazon
|
@@ -14044,7 +14061,7 @@ module Aws::S3
|
|
14044
14061
|
params: params,
|
14045
14062
|
config: config)
|
14046
14063
|
context[:gem_name] = 'aws-sdk-s3'
|
14047
|
-
context[:gem_version] = '1.
|
14064
|
+
context[:gem_version] = '1.103.0'
|
14048
14065
|
Seahorse::Client::Request.new(handlers, context)
|
14049
14066
|
end
|
14050
14067
|
|