aws-sdk-s3 1.157.0 → 1.166.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 +45 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/bucket.rb +202 -59
- data/lib/aws-sdk-s3/client.rb +1544 -595
- data/lib/aws-sdk-s3/client_api.rb +25 -1
- data/lib/aws-sdk-s3/customizations/object.rb +6 -0
- data/lib/aws-sdk-s3/customizations/object_summary.rb +5 -0
- data/lib/aws-sdk-s3/customizations/object_version.rb +13 -0
- data/lib/aws-sdk-s3/customizations.rb +24 -38
- data/lib/aws-sdk-s3/endpoints.rb +99 -396
- data/lib/aws-sdk-s3/errors.rb +3 -0
- data/lib/aws-sdk-s3/multipart_upload.rb +23 -0
- data/lib/aws-sdk-s3/object.rb +367 -125
- data/lib/aws-sdk-s3/object_summary.rb +351 -105
- data/lib/aws-sdk-s3/object_version.rb +26 -4
- data/lib/aws-sdk-s3/plugins/endpoints.rb +23 -8
- data/lib/aws-sdk-s3/resource.rb +10 -8
- data/lib/aws-sdk-s3/types.rb +923 -335
- data/lib/aws-sdk-s3.rb +35 -31
- data/sig/bucket.rbs +1 -0
- data/sig/client.rbs +18 -2
- data/sig/multipart_upload.rbs +1 -0
- data/sig/object.rbs +1 -0
- data/sig/object_summary.rbs +1 -0
- data/sig/resource.rbs +4 -1
- data/sig/types.rbs +19 -2
- metadata +5 -4
data/lib/aws-sdk-s3/types.rb
CHANGED
@@ -865,11 +865,6 @@ module Aws::S3
|
|
865
865
|
# @!attribute [rw] server_side_encryption
|
866
866
|
# The server-side encryption algorithm used when storing this object
|
867
867
|
# in Amazon S3 (for example, `AES256`, `aws:kms`).
|
868
|
-
#
|
869
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
870
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
871
|
-
#
|
872
|
-
# </note>
|
873
868
|
# @return [String]
|
874
869
|
#
|
875
870
|
# @!attribute [rw] version_id
|
@@ -882,23 +877,14 @@ module Aws::S3
|
|
882
877
|
# @return [String]
|
883
878
|
#
|
884
879
|
# @!attribute [rw] ssekms_key_id
|
885
|
-
# If present, indicates the ID of the
|
886
|
-
#
|
887
|
-
# object.
|
888
|
-
#
|
889
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
890
|
-
#
|
891
|
-
# </note>
|
880
|
+
# If present, indicates the ID of the KMS key that was used for object
|
881
|
+
# encryption.
|
892
882
|
# @return [String]
|
893
883
|
#
|
894
884
|
# @!attribute [rw] bucket_key_enabled
|
895
885
|
# Indicates whether the multipart upload uses an S3 Bucket Key for
|
896
886
|
# server-side encryption with Key Management Service (KMS) keys
|
897
887
|
# (SSE-KMS).
|
898
|
-
#
|
899
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
900
|
-
#
|
901
|
-
# </note>
|
902
888
|
# @return [Boolean]
|
903
889
|
#
|
904
890
|
# @!attribute [rw] request_charged
|
@@ -1061,6 +1047,27 @@ module Aws::S3
|
|
1061
1047
|
# denied).
|
1062
1048
|
# @return [String]
|
1063
1049
|
#
|
1050
|
+
# @!attribute [rw] if_none_match
|
1051
|
+
# Uploads the object only if the object key name does not already
|
1052
|
+
# exist in the bucket specified. Otherwise, Amazon S3 returns a `412
|
1053
|
+
# Precondition Failed` error.
|
1054
|
+
#
|
1055
|
+
# If a conflicting operation occurs during the upload S3 returns a
|
1056
|
+
# `409 ConditionalRequestConflict` response. On a 409 failure you
|
1057
|
+
# should re-initiate the multipart upload with `CreateMultipartUpload`
|
1058
|
+
# and re-upload each part.
|
1059
|
+
#
|
1060
|
+
# Expects the '*' (asterisk) character.
|
1061
|
+
#
|
1062
|
+
# For more information about conditional requests, see [RFC 7232][1],
|
1063
|
+
# or [Conditional requests][2] in the *Amazon S3 User Guide*.
|
1064
|
+
#
|
1065
|
+
#
|
1066
|
+
#
|
1067
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
1068
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
|
1069
|
+
# @return [String]
|
1070
|
+
#
|
1064
1071
|
# @!attribute [rw] sse_customer_algorithm
|
1065
1072
|
# The server-side encryption (SSE) algorithm used to encrypt the
|
1066
1073
|
# object. This parameter is required only when the object was created
|
@@ -1120,6 +1127,7 @@ module Aws::S3
|
|
1120
1127
|
:checksum_sha256,
|
1121
1128
|
:request_payer,
|
1122
1129
|
:expected_bucket_owner,
|
1130
|
+
:if_none_match,
|
1123
1131
|
:sse_customer_algorithm,
|
1124
1132
|
:sse_customer_key,
|
1125
1133
|
:sse_customer_key_md5)
|
@@ -1326,11 +1334,6 @@ module Aws::S3
|
|
1326
1334
|
# @!attribute [rw] server_side_encryption
|
1327
1335
|
# The server-side encryption algorithm used when you store this object
|
1328
1336
|
# in Amazon S3 (for example, `AES256`, `aws:kms`, `aws:kms:dsse`).
|
1329
|
-
#
|
1330
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
1331
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
1332
|
-
#
|
1333
|
-
# </note>
|
1334
1337
|
# @return [String]
|
1335
1338
|
#
|
1336
1339
|
# @!attribute [rw] sse_customer_algorithm
|
@@ -1355,13 +1358,8 @@ module Aws::S3
|
|
1355
1358
|
# @return [String]
|
1356
1359
|
#
|
1357
1360
|
# @!attribute [rw] ssekms_key_id
|
1358
|
-
# If present, indicates the ID of the
|
1359
|
-
#
|
1360
|
-
# object.
|
1361
|
-
#
|
1362
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
1363
|
-
#
|
1364
|
-
# </note>
|
1361
|
+
# If present, indicates the ID of the KMS key that was used for object
|
1362
|
+
# encryption.
|
1365
1363
|
# @return [String]
|
1366
1364
|
#
|
1367
1365
|
# @!attribute [rw] ssekms_encryption_context
|
@@ -1369,20 +1367,12 @@ module Aws::S3
|
|
1369
1367
|
# to use for object encryption. The value of this header is a
|
1370
1368
|
# base64-encoded UTF-8 string holding JSON with the encryption context
|
1371
1369
|
# key-value pairs.
|
1372
|
-
#
|
1373
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
1374
|
-
#
|
1375
|
-
# </note>
|
1376
1370
|
# @return [String]
|
1377
1371
|
#
|
1378
1372
|
# @!attribute [rw] bucket_key_enabled
|
1379
1373
|
# Indicates whether the copied object uses an S3 Bucket Key for
|
1380
1374
|
# server-side encryption with Key Management Service (KMS) keys
|
1381
1375
|
# (SSE-KMS).
|
1382
|
-
#
|
1383
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
1384
|
-
#
|
1385
|
-
# </note>
|
1386
1376
|
# @return [Boolean]
|
1387
1377
|
#
|
1388
1378
|
# @!attribute [rw] request_charged
|
@@ -1810,9 +1800,8 @@ module Aws::S3
|
|
1810
1800
|
#
|
1811
1801
|
# @!attribute [rw] server_side_encryption
|
1812
1802
|
# The server-side encryption algorithm used when storing this object
|
1813
|
-
# in Amazon S3
|
1814
|
-
#
|
1815
|
-
# and will receive a `400 Bad Request` response.
|
1803
|
+
# in Amazon S3. Unrecognized or unsupported values won’t write a
|
1804
|
+
# destination object and will receive a `400 Bad Request` response.
|
1816
1805
|
#
|
1817
1806
|
# Amazon S3 automatically encrypts all new objects that are copied to
|
1818
1807
|
# an S3 bucket. When copying an object, if you don't specify
|
@@ -1821,21 +1810,8 @@ module Aws::S3
|
|
1821
1810
|
# of the destination bucket. By default, all buckets have a base level
|
1822
1811
|
# of encryption configuration that uses server-side encryption with
|
1823
1812
|
# Amazon S3 managed keys (SSE-S3). If the destination bucket has a
|
1824
|
-
# default encryption configuration
|
1825
|
-
#
|
1826
|
-
# server-side encryption with Amazon Web Services KMS keys (DSSE-KMS),
|
1827
|
-
# or server-side encryption with customer-provided encryption keys
|
1828
|
-
# (SSE-C), Amazon S3 uses the corresponding KMS key, or a
|
1829
|
-
# customer-provided key to encrypt the target object copy.
|
1830
|
-
#
|
1831
|
-
# When you perform a `CopyObject` operation, if you want to use a
|
1832
|
-
# different type of encryption setting for the target object, you can
|
1833
|
-
# specify appropriate encryption-related headers to encrypt the target
|
1834
|
-
# object with an Amazon S3 managed key, a KMS key, or a
|
1835
|
-
# customer-provided key. If the encryption setting in your request is
|
1836
|
-
# different from the default encryption configuration of the
|
1837
|
-
# destination bucket, the encryption setting in your request takes
|
1838
|
-
# precedence.
|
1813
|
+
# different default encryption configuration, Amazon S3 uses the
|
1814
|
+
# corresponding encryption key to encrypt the target object copy.
|
1839
1815
|
#
|
1840
1816
|
# With server-side encryption, Amazon S3 encrypts your data as it
|
1841
1817
|
# writes your data to disks in its data centers and decrypts the data
|
@@ -1843,14 +1819,63 @@ module Aws::S3
|
|
1843
1819
|
# encryption, see [Using Server-Side Encryption][1] in the *Amazon S3
|
1844
1820
|
# User Guide*.
|
1845
1821
|
#
|
1846
|
-
# <
|
1847
|
-
#
|
1848
|
-
#
|
1849
|
-
#
|
1822
|
+
# <b>General purpose buckets </b>
|
1823
|
+
#
|
1824
|
+
# * For general purpose buckets, there are the following supported
|
1825
|
+
# options for server-side encryption: server-side encryption with
|
1826
|
+
# Key Management Service (KMS) keys (SSE-KMS), dual-layer
|
1827
|
+
# server-side encryption with Amazon Web Services KMS keys
|
1828
|
+
# (DSSE-KMS), and server-side encryption with customer-provided
|
1829
|
+
# encryption keys (SSE-C). Amazon S3 uses the corresponding KMS key,
|
1830
|
+
# or a customer-provided key to encrypt the target object copy.
|
1831
|
+
#
|
1832
|
+
# * When you perform a `CopyObject` operation, if you want to use a
|
1833
|
+
# different type of encryption setting for the target object, you
|
1834
|
+
# can specify appropriate encryption-related headers to encrypt the
|
1835
|
+
# target object with an Amazon S3 managed key, a KMS key, or a
|
1836
|
+
# customer-provided key. If the encryption setting in your request
|
1837
|
+
# is different from the default encryption configuration of the
|
1838
|
+
# destination bucket, the encryption setting in your request takes
|
1839
|
+
# precedence.
|
1840
|
+
#
|
1841
|
+
# <b>Directory buckets </b>
|
1842
|
+
#
|
1843
|
+
# * For directory buckets, there are only two supported options for
|
1844
|
+
# server-side encryption: server-side encryption with Amazon S3
|
1845
|
+
# managed keys (SSE-S3) (`AES256`) and server-side encryption with
|
1846
|
+
# KMS keys (SSE-KMS) (`aws:kms`). We recommend that the bucket's
|
1847
|
+
# default encryption uses the desired encryption configuration and
|
1848
|
+
# you don't override the bucket default encryption in your
|
1849
|
+
# `CreateSession` requests or `PUT` object requests. Then, new
|
1850
|
+
# objects are automatically encrypted with the desired encryption
|
1851
|
+
# settings. For more information, see [Protecting data with
|
1852
|
+
# server-side encryption][2] in the *Amazon S3 User Guide*. For more
|
1853
|
+
# information about the encryption overriding behaviors in directory
|
1854
|
+
# buckets, see [Specifying server-side encryption with KMS for new
|
1855
|
+
# object uploads][3].
|
1856
|
+
#
|
1857
|
+
# * To encrypt new object copies to a directory bucket with SSE-KMS,
|
1858
|
+
# we recommend you specify SSE-KMS as the directory bucket's
|
1859
|
+
# default encryption configuration with a KMS key (specifically, a
|
1860
|
+
# [customer managed key][4]). [Amazon Web Services managed key][5]
|
1861
|
+
# (`aws/s3`) isn't supported. Your SSE-KMS configuration can only
|
1862
|
+
# support 1 [customer managed key][4] per directory bucket for the
|
1863
|
+
# lifetime of the bucket. After you specify a customer managed key
|
1864
|
+
# for SSE-KMS, you can't override the customer managed key for the
|
1865
|
+
# bucket's SSE-KMS configuration. Then, when you perform a
|
1866
|
+
# `CopyObject` operation and want to specify server-side encryption
|
1867
|
+
# settings for new object copies with SSE-KMS in the
|
1868
|
+
# encryption-related request headers, you must ensure the encryption
|
1869
|
+
# key is the same customer managed key that you specified for the
|
1870
|
+
# directory bucket's default encryption configuration.
|
1850
1871
|
#
|
1851
1872
|
#
|
1852
1873
|
#
|
1853
1874
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html
|
1875
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
1876
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html
|
1877
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
1878
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
1854
1879
|
# @return [String]
|
1855
1880
|
#
|
1856
1881
|
# @!attribute [rw] storage_class
|
@@ -1956,7 +1981,7 @@ module Aws::S3
|
|
1956
1981
|
# @return [String]
|
1957
1982
|
#
|
1958
1983
|
# @!attribute [rw] ssekms_key_id
|
1959
|
-
# Specifies the KMS ID (Key ID, Key ARN, or Key Alias) to use for
|
1984
|
+
# Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for
|
1960
1985
|
# object encryption. All GET and PUT requests for an object protected
|
1961
1986
|
# by KMS will fail if they're not made via SSL or using SigV4. For
|
1962
1987
|
# information about configuring any of the officially supported Amazon
|
@@ -1964,27 +1989,45 @@ module Aws::S3
|
|
1964
1989
|
# Signature Version in Request Authentication][1] in the *Amazon S3
|
1965
1990
|
# User Guide*.
|
1966
1991
|
#
|
1967
|
-
#
|
1968
|
-
#
|
1969
|
-
#
|
1970
|
-
#
|
1992
|
+
# **Directory buckets** - If you specify
|
1993
|
+
# `x-amz-server-side-encryption` with `aws:kms`, you must specify the
|
1994
|
+
# ` x-amz-server-side-encryption-aws-kms-key-id` header with the ID
|
1995
|
+
# (Key ID or Key ARN) of the KMS symmetric encryption customer managed
|
1996
|
+
# key to use. Otherwise, you get an HTTP `400 Bad Request` error. Only
|
1997
|
+
# use the key ID or key ARN. The key alias format of the KMS key
|
1998
|
+
# isn't supported. Your SSE-KMS configuration can only support 1
|
1999
|
+
# [customer managed key][2] per directory bucket for the lifetime of
|
2000
|
+
# the bucket. [Amazon Web Services managed key][3] (`aws/s3`) isn't
|
2001
|
+
# supported.
|
1971
2002
|
#
|
1972
2003
|
#
|
1973
2004
|
#
|
1974
2005
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
|
2006
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
2007
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
1975
2008
|
# @return [String]
|
1976
2009
|
#
|
1977
2010
|
# @!attribute [rw] ssekms_encryption_context
|
1978
|
-
# Specifies the Amazon Web Services KMS Encryption Context
|
1979
|
-
#
|
1980
|
-
#
|
1981
|
-
#
|
1982
|
-
# context for `CopyObject` requests.
|
2011
|
+
# Specifies the Amazon Web Services KMS Encryption Context as an
|
2012
|
+
# additional encryption context to use for the destination object
|
2013
|
+
# encryption. The value of this header is a base64-encoded UTF-8
|
2014
|
+
# string holding JSON with the encryption context key-value pairs.
|
1983
2015
|
#
|
1984
|
-
#
|
1985
|
-
#
|
2016
|
+
# **General purpose buckets** - This value must be explicitly added to
|
2017
|
+
# specify encryption context for `CopyObject` requests if you want an
|
2018
|
+
# additional encryption context for your destination object. The
|
2019
|
+
# additional encryption context of the source object won't be copied
|
2020
|
+
# to the destination object. For more information, see [Encryption
|
2021
|
+
# context][1] in the *Amazon S3 User Guide*.
|
1986
2022
|
#
|
1987
|
-
#
|
2023
|
+
# **Directory buckets** - You can optionally provide an explicit
|
2024
|
+
# encryption context value. The value must match the default
|
2025
|
+
# encryption context - the bucket Amazon Resource Name (ARN). An
|
2026
|
+
# additional encryption context value is not supported.
|
2027
|
+
#
|
2028
|
+
#
|
2029
|
+
#
|
2030
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html#encryption-context
|
1988
2031
|
# @return [String]
|
1989
2032
|
#
|
1990
2033
|
# @!attribute [rw] bucket_key_enabled
|
@@ -2001,14 +2044,19 @@ module Aws::S3
|
|
2001
2044
|
# For more information, see [Amazon S3 Bucket Keys][1] in the *Amazon
|
2002
2045
|
# S3 User Guide*.
|
2003
2046
|
#
|
2004
|
-
# <note markdown="1">
|
2005
|
-
#
|
2047
|
+
# <note markdown="1"> **Directory buckets** - S3 Bucket Keys aren't supported, when you
|
2048
|
+
# copy SSE-KMS encrypted objects from general purpose buckets to
|
2049
|
+
# directory buckets, from directory buckets to general purpose
|
2050
|
+
# buckets, or between directory buckets, through [CopyObject][2]. In
|
2051
|
+
# this case, Amazon S3 makes a call to KMS every time a copy request
|
2052
|
+
# is made for a KMS-encrypted object.
|
2006
2053
|
#
|
2007
2054
|
# </note>
|
2008
2055
|
#
|
2009
2056
|
#
|
2010
2057
|
#
|
2011
2058
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
|
2059
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
2012
2060
|
# @return [Boolean]
|
2013
2061
|
#
|
2014
2062
|
# @!attribute [rw] copy_source_sse_customer_algorithm
|
@@ -2620,11 +2668,6 @@ module Aws::S3
|
|
2620
2668
|
# @!attribute [rw] server_side_encryption
|
2621
2669
|
# The server-side encryption algorithm used when you store this object
|
2622
2670
|
# in Amazon S3 (for example, `AES256`, `aws:kms`).
|
2623
|
-
#
|
2624
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
2625
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
2626
|
-
#
|
2627
|
-
# </note>
|
2628
2671
|
# @return [String]
|
2629
2672
|
#
|
2630
2673
|
# @!attribute [rw] sse_customer_algorithm
|
@@ -2649,34 +2692,21 @@ module Aws::S3
|
|
2649
2692
|
# @return [String]
|
2650
2693
|
#
|
2651
2694
|
# @!attribute [rw] ssekms_key_id
|
2652
|
-
# If present, indicates the ID of the
|
2653
|
-
#
|
2654
|
-
# object.
|
2655
|
-
#
|
2656
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
2657
|
-
#
|
2658
|
-
# </note>
|
2695
|
+
# If present, indicates the ID of the KMS key that was used for object
|
2696
|
+
# encryption.
|
2659
2697
|
# @return [String]
|
2660
2698
|
#
|
2661
2699
|
# @!attribute [rw] ssekms_encryption_context
|
2662
2700
|
# If present, indicates the Amazon Web Services KMS Encryption Context
|
2663
2701
|
# to use for object encryption. The value of this header is a
|
2664
|
-
#
|
2665
|
-
# key-value pairs.
|
2666
|
-
#
|
2667
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
2668
|
-
#
|
2669
|
-
# </note>
|
2702
|
+
# Base64-encoded string of a UTF-8 encoded JSON, which contains the
|
2703
|
+
# encryption context as key-value pairs.
|
2670
2704
|
# @return [String]
|
2671
2705
|
#
|
2672
2706
|
# @!attribute [rw] bucket_key_enabled
|
2673
2707
|
# Indicates whether the multipart upload uses an S3 Bucket Key for
|
2674
2708
|
# server-side encryption with Key Management Service (KMS) keys
|
2675
2709
|
# (SSE-KMS).
|
2676
|
-
#
|
2677
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
2678
|
-
#
|
2679
|
-
# </note>
|
2680
2710
|
# @return [Boolean]
|
2681
2711
|
#
|
2682
2712
|
# @!attribute [rw] request_charged
|
@@ -3088,10 +3118,53 @@ module Aws::S3
|
|
3088
3118
|
# The server-side encryption algorithm used when you store this object
|
3089
3119
|
# in Amazon S3 (for example, `AES256`, `aws:kms`).
|
3090
3120
|
#
|
3091
|
-
# <
|
3092
|
-
#
|
3121
|
+
# * <b>Directory buckets </b> - For directory buckets, there are only
|
3122
|
+
# two supported options for server-side encryption: server-side
|
3123
|
+
# encryption with Amazon S3 managed keys (SSE-S3) (`AES256`) and
|
3124
|
+
# server-side encryption with KMS keys (SSE-KMS) (`aws:kms`). We
|
3125
|
+
# recommend that the bucket's default encryption uses the desired
|
3126
|
+
# encryption configuration and you don't override the bucket
|
3127
|
+
# default encryption in your `CreateSession` requests or `PUT`
|
3128
|
+
# object requests. Then, new objects are automatically encrypted
|
3129
|
+
# with the desired encryption settings. For more information, see
|
3130
|
+
# [Protecting data with server-side encryption][1] in the *Amazon S3
|
3131
|
+
# User Guide*. For more information about the encryption overriding
|
3132
|
+
# behaviors in directory buckets, see [Specifying server-side
|
3133
|
+
# encryption with KMS for new object uploads][2].
|
3134
|
+
#
|
3135
|
+
# In the Zonal endpoint API calls (except [CopyObject][3] and
|
3136
|
+
# [UploadPartCopy][4]) using the REST API, the encryption request
|
3137
|
+
# headers must match the encryption settings that are specified in
|
3138
|
+
# the `CreateSession` request. You can't override the values of the
|
3139
|
+
# encryption settings (`x-amz-server-side-encryption`,
|
3140
|
+
# `x-amz-server-side-encryption-aws-kms-key-id`,
|
3141
|
+
# `x-amz-server-side-encryption-context`, and
|
3142
|
+
# `x-amz-server-side-encryption-bucket-key-enabled`) that are
|
3143
|
+
# specified in the `CreateSession` request. You don't need to
|
3144
|
+
# explicitly specify these encryption settings values in Zonal
|
3145
|
+
# endpoint API calls, and Amazon S3 will use the encryption settings
|
3146
|
+
# values from the `CreateSession` request to protect new objects in
|
3147
|
+
# the directory bucket.
|
3148
|
+
#
|
3149
|
+
# <note markdown="1"> When you use the CLI or the Amazon Web Services SDKs, for
|
3150
|
+
# `CreateSession`, the session token refreshes automatically to
|
3151
|
+
# avoid service interruptions when a session expires. The CLI or the
|
3152
|
+
# Amazon Web Services SDKs use the bucket's default encryption
|
3153
|
+
# configuration for the `CreateSession` request. It's not supported
|
3154
|
+
# to override the encryption settings values in the `CreateSession`
|
3155
|
+
# request. So in the Zonal endpoint API calls (except
|
3156
|
+
# [CopyObject][3] and [UploadPartCopy][4]), the encryption request
|
3157
|
+
# headers must match the default encryption configuration of the
|
3158
|
+
# directory bucket.
|
3093
3159
|
#
|
3094
|
-
#
|
3160
|
+
# </note>
|
3161
|
+
#
|
3162
|
+
#
|
3163
|
+
#
|
3164
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
3165
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html
|
3166
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
3167
|
+
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
3095
3168
|
# @return [String]
|
3096
3169
|
#
|
3097
3170
|
# @!attribute [rw] storage_class
|
@@ -3157,37 +3230,75 @@ module Aws::S3
|
|
3157
3230
|
# @return [String]
|
3158
3231
|
#
|
3159
3232
|
# @!attribute [rw] ssekms_key_id
|
3160
|
-
# Specifies the ID (Key ID, Key ARN, or Key Alias)
|
3161
|
-
# encryption
|
3233
|
+
# Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for
|
3234
|
+
# object encryption. If the KMS key doesn't exist in the same account
|
3235
|
+
# that's issuing the command, you must use the full Key ARN not the
|
3236
|
+
# Key ID.
|
3237
|
+
#
|
3238
|
+
# **General purpose buckets** - If you specify
|
3239
|
+
# `x-amz-server-side-encryption` with `aws:kms` or `aws:kms:dsse`,
|
3240
|
+
# this header specifies the ID (Key ID, Key ARN, or Key Alias) of the
|
3241
|
+
# KMS key to use. If you specify
|
3242
|
+
# `x-amz-server-side-encryption:aws:kms` or
|
3243
|
+
# `x-amz-server-side-encryption:aws:kms:dsse`, but do not provide
|
3244
|
+
# `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
3245
|
+
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
3162
3246
|
#
|
3163
|
-
#
|
3247
|
+
# **Directory buckets** - If you specify
|
3248
|
+
# `x-amz-server-side-encryption` with `aws:kms`, you must specify the
|
3249
|
+
# ` x-amz-server-side-encryption-aws-kms-key-id` header with the ID
|
3250
|
+
# (Key ID or Key ARN) of the KMS symmetric encryption customer managed
|
3251
|
+
# key to use. Otherwise, you get an HTTP `400 Bad Request` error. Only
|
3252
|
+
# use the key ID or key ARN. The key alias format of the KMS key
|
3253
|
+
# isn't supported. Your SSE-KMS configuration can only support 1
|
3254
|
+
# [customer managed key][1] per directory bucket for the lifetime of
|
3255
|
+
# the bucket. [Amazon Web Services managed key][2] (`aws/s3`) isn't
|
3256
|
+
# supported.
|
3164
3257
|
#
|
3165
|
-
#
|
3258
|
+
#
|
3259
|
+
#
|
3260
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
3261
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
3166
3262
|
# @return [String]
|
3167
3263
|
#
|
3168
3264
|
# @!attribute [rw] ssekms_encryption_context
|
3169
3265
|
# Specifies the Amazon Web Services KMS Encryption Context to use for
|
3170
|
-
# object encryption. The value of this header is a
|
3171
|
-
# UTF-8
|
3172
|
-
# pairs.
|
3173
|
-
#
|
3174
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
3266
|
+
# object encryption. The value of this header is a Base64-encoded
|
3267
|
+
# string of a UTF-8 encoded JSON, which contains the encryption
|
3268
|
+
# context as key-value pairs.
|
3175
3269
|
#
|
3176
|
-
#
|
3270
|
+
# **Directory buckets** - You can optionally provide an explicit
|
3271
|
+
# encryption context value. The value must match the default
|
3272
|
+
# encryption context - the bucket Amazon Resource Name (ARN). An
|
3273
|
+
# additional encryption context value is not supported.
|
3177
3274
|
# @return [String]
|
3178
3275
|
#
|
3179
3276
|
# @!attribute [rw] bucket_key_enabled
|
3180
3277
|
# Specifies whether Amazon S3 should use an S3 Bucket Key for object
|
3181
3278
|
# encryption with server-side encryption using Key Management Service
|
3182
|
-
# (KMS) keys (SSE-KMS).
|
3183
|
-
# to use an S3 Bucket Key for object encryption with SSE-KMS.
|
3279
|
+
# (KMS) keys (SSE-KMS).
|
3184
3280
|
#
|
3185
|
-
#
|
3186
|
-
#
|
3281
|
+
# **General purpose buckets** - Setting this header to `true` causes
|
3282
|
+
# Amazon S3 to use an S3 Bucket Key for object encryption with
|
3283
|
+
# SSE-KMS. Also, specifying this header with a PUT action doesn't
|
3284
|
+
# affect bucket-level settings for S3 Bucket Key.
|
3187
3285
|
#
|
3188
|
-
#
|
3286
|
+
# **Directory buckets** - S3 Bucket Keys are always enabled for `GET`
|
3287
|
+
# and `PUT` operations in a directory bucket and can’t be disabled. S3
|
3288
|
+
# Bucket Keys aren't supported, when you copy SSE-KMS encrypted
|
3289
|
+
# objects from general purpose buckets to directory buckets, from
|
3290
|
+
# directory buckets to general purpose buckets, or between directory
|
3291
|
+
# buckets, through [CopyObject][1], [UploadPartCopy][2], [the Copy
|
3292
|
+
# operation in Batch Operations][3], or [the import jobs][4]. In this
|
3293
|
+
# case, Amazon S3 makes a call to KMS every time a copy request is
|
3294
|
+
# made for a KMS-encrypted object.
|
3189
3295
|
#
|
3190
|
-
#
|
3296
|
+
#
|
3297
|
+
#
|
3298
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
3299
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
3300
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-Batch-Ops
|
3301
|
+
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-import-job
|
3191
3302
|
# @return [Boolean]
|
3192
3303
|
#
|
3193
3304
|
# @!attribute [rw] request_payer
|
@@ -3297,6 +3408,31 @@ module Aws::S3
|
|
3297
3408
|
include Aws::Structure
|
3298
3409
|
end
|
3299
3410
|
|
3411
|
+
# @!attribute [rw] server_side_encryption
|
3412
|
+
# The server-side encryption algorithm used when you store objects in
|
3413
|
+
# the directory bucket.
|
3414
|
+
# @return [String]
|
3415
|
+
#
|
3416
|
+
# @!attribute [rw] ssekms_key_id
|
3417
|
+
# If you specify `x-amz-server-side-encryption` with `aws:kms`, this
|
3418
|
+
# header indicates the ID of the KMS symmetric encryption customer
|
3419
|
+
# managed key that was used for object encryption.
|
3420
|
+
# @return [String]
|
3421
|
+
#
|
3422
|
+
# @!attribute [rw] ssekms_encryption_context
|
3423
|
+
# If present, indicates the Amazon Web Services KMS Encryption Context
|
3424
|
+
# to use for object encryption. The value of this header is a
|
3425
|
+
# Base64-encoded string of a UTF-8 encoded JSON, which contains the
|
3426
|
+
# encryption context as key-value pairs. This value is stored as
|
3427
|
+
# object metadata and automatically gets passed on to Amazon Web
|
3428
|
+
# Services KMS for future `GetObject` operations on this object.
|
3429
|
+
# @return [String]
|
3430
|
+
#
|
3431
|
+
# @!attribute [rw] bucket_key_enabled
|
3432
|
+
# Indicates whether to use an S3 Bucket Key for server-side encryption
|
3433
|
+
# with KMS keys (SSE-KMS).
|
3434
|
+
# @return [Boolean]
|
3435
|
+
#
|
3300
3436
|
# @!attribute [rw] credentials
|
3301
3437
|
# The established temporary security credentials for the created
|
3302
3438
|
# session.
|
@@ -3305,8 +3441,12 @@ module Aws::S3
|
|
3305
3441
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateSessionOutput AWS API Documentation
|
3306
3442
|
#
|
3307
3443
|
class CreateSessionOutput < Struct.new(
|
3444
|
+
:server_side_encryption,
|
3445
|
+
:ssekms_key_id,
|
3446
|
+
:ssekms_encryption_context,
|
3447
|
+
:bucket_key_enabled,
|
3308
3448
|
:credentials)
|
3309
|
-
SENSITIVE = []
|
3449
|
+
SENSITIVE = [:ssekms_key_id, :ssekms_encryption_context]
|
3310
3450
|
include Aws::Structure
|
3311
3451
|
end
|
3312
3452
|
|
@@ -3314,27 +3454,114 @@ module Aws::S3
|
|
3314
3454
|
# Specifies the mode of the session that will be created, either
|
3315
3455
|
# `ReadWrite` or `ReadOnly`. By default, a `ReadWrite` session is
|
3316
3456
|
# created. A `ReadWrite` session is capable of executing all the Zonal
|
3317
|
-
# endpoint
|
3318
|
-
# constrained to execute the following Zonal endpoint
|
3319
|
-
# `GetObject`, `HeadObject`, `ListObjectsV2`,
|
3320
|
-
# `ListParts`, and `ListMultipartUploads`.
|
3457
|
+
# endpoint API operations on a directory bucket. A `ReadOnly` session
|
3458
|
+
# is constrained to execute the following Zonal endpoint API
|
3459
|
+
# operations: `GetObject`, `HeadObject`, `ListObjectsV2`,
|
3460
|
+
# `GetObjectAttributes`, `ListParts`, and `ListMultipartUploads`.
|
3321
3461
|
# @return [String]
|
3322
3462
|
#
|
3323
3463
|
# @!attribute [rw] bucket
|
3324
3464
|
# The name of the bucket that you create a session for.
|
3325
3465
|
# @return [String]
|
3326
3466
|
#
|
3467
|
+
# @!attribute [rw] server_side_encryption
|
3468
|
+
# The server-side encryption algorithm to use when you store objects
|
3469
|
+
# in the directory bucket.
|
3470
|
+
#
|
3471
|
+
# For directory buckets, there are only two supported options for
|
3472
|
+
# server-side encryption: server-side encryption with Amazon S3
|
3473
|
+
# managed keys (SSE-S3) (`AES256`) and server-side encryption with KMS
|
3474
|
+
# keys (SSE-KMS) (`aws:kms`). By default, Amazon S3 encrypts data with
|
3475
|
+
# SSE-S3. For more information, see [Protecting data with server-side
|
3476
|
+
# encryption][1] in the *Amazon S3 User Guide*.
|
3477
|
+
#
|
3478
|
+
#
|
3479
|
+
#
|
3480
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
3481
|
+
# @return [String]
|
3482
|
+
#
|
3483
|
+
# @!attribute [rw] ssekms_key_id
|
3484
|
+
# If you specify `x-amz-server-side-encryption` with `aws:kms`, you
|
3485
|
+
# must specify the ` x-amz-server-side-encryption-aws-kms-key-id`
|
3486
|
+
# header with the ID (Key ID or Key ARN) of the KMS symmetric
|
3487
|
+
# encryption customer managed key to use. Otherwise, you get an HTTP
|
3488
|
+
# `400 Bad Request` error. Only use the key ID or key ARN. The key
|
3489
|
+
# alias format of the KMS key isn't supported. Also, if the KMS key
|
3490
|
+
# doesn't exist in the same account that't issuing the command, you
|
3491
|
+
# must use the full Key ARN not the Key ID.
|
3492
|
+
#
|
3493
|
+
# Your SSE-KMS configuration can only support 1 [customer managed
|
3494
|
+
# key][1] per directory bucket for the lifetime of the bucket. [Amazon
|
3495
|
+
# Web Services managed key][2] (`aws/s3`) isn't supported.
|
3496
|
+
#
|
3497
|
+
#
|
3498
|
+
#
|
3499
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
3500
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
3501
|
+
# @return [String]
|
3502
|
+
#
|
3503
|
+
# @!attribute [rw] ssekms_encryption_context
|
3504
|
+
# Specifies the Amazon Web Services KMS Encryption Context as an
|
3505
|
+
# additional encryption context to use for object encryption. The
|
3506
|
+
# value of this header is a Base64-encoded string of a UTF-8 encoded
|
3507
|
+
# JSON, which contains the encryption context as key-value pairs. This
|
3508
|
+
# value is stored as object metadata and automatically gets passed on
|
3509
|
+
# to Amazon Web Services KMS for future `GetObject` operations on this
|
3510
|
+
# object.
|
3511
|
+
#
|
3512
|
+
# **General purpose buckets** - This value must be explicitly added
|
3513
|
+
# during `CopyObject` operations if you want an additional encryption
|
3514
|
+
# context for your object. For more information, see [Encryption
|
3515
|
+
# context][1] in the *Amazon S3 User Guide*.
|
3516
|
+
#
|
3517
|
+
# **Directory buckets** - You can optionally provide an explicit
|
3518
|
+
# encryption context value. The value must match the default
|
3519
|
+
# encryption context - the bucket Amazon Resource Name (ARN). An
|
3520
|
+
# additional encryption context value is not supported.
|
3521
|
+
#
|
3522
|
+
#
|
3523
|
+
#
|
3524
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html#encryption-context
|
3525
|
+
# @return [String]
|
3526
|
+
#
|
3527
|
+
# @!attribute [rw] bucket_key_enabled
|
3528
|
+
# Specifies whether Amazon S3 should use an S3 Bucket Key for object
|
3529
|
+
# encryption with server-side encryption using KMS keys (SSE-KMS).
|
3530
|
+
#
|
3531
|
+
# S3 Bucket Keys are always enabled for `GET` and `PUT` operations in
|
3532
|
+
# a directory bucket and can’t be disabled. S3 Bucket Keys aren't
|
3533
|
+
# supported, when you copy SSE-KMS encrypted objects from general
|
3534
|
+
# purpose buckets to directory buckets, from directory buckets to
|
3535
|
+
# general purpose buckets, or between directory buckets, through
|
3536
|
+
# [CopyObject][1], [UploadPartCopy][2], [the Copy operation in Batch
|
3537
|
+
# Operations][3], or [the import jobs][4]. In this case, Amazon S3
|
3538
|
+
# makes a call to KMS every time a copy request is made for a
|
3539
|
+
# KMS-encrypted object.
|
3540
|
+
#
|
3541
|
+
#
|
3542
|
+
#
|
3543
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
3544
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
3545
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-Batch-Ops
|
3546
|
+
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-import-job
|
3547
|
+
# @return [Boolean]
|
3548
|
+
#
|
3327
3549
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateSessionRequest AWS API Documentation
|
3328
3550
|
#
|
3329
3551
|
class CreateSessionRequest < Struct.new(
|
3330
3552
|
:session_mode,
|
3331
|
-
:bucket
|
3332
|
-
|
3553
|
+
:bucket,
|
3554
|
+
:server_side_encryption,
|
3555
|
+
:ssekms_key_id,
|
3556
|
+
:ssekms_encryption_context,
|
3557
|
+
:bucket_key_enabled)
|
3558
|
+
SENSITIVE = [:ssekms_key_id, :ssekms_encryption_context]
|
3333
3559
|
include Aws::Structure
|
3334
3560
|
end
|
3335
3561
|
|
3336
|
-
# The container element for specifying the default Object
|
3337
|
-
# settings for new objects placed in the specified
|
3562
|
+
# The container element for optionally specifying the default Object
|
3563
|
+
# Lock retention settings for new objects placed in the specified
|
3564
|
+
# bucket.
|
3338
3565
|
#
|
3339
3566
|
# <note markdown="1"> * The `DefaultRetention` settings require both a mode and a period.
|
3340
3567
|
#
|
@@ -3447,6 +3674,20 @@ module Aws::S3
|
|
3447
3674
|
# @!attribute [rw] bucket
|
3448
3675
|
# The name of the bucket containing the server-side encryption
|
3449
3676
|
# configuration to delete.
|
3677
|
+
#
|
3678
|
+
# <b>Directory buckets </b> - When you use this operation with a
|
3679
|
+
# directory bucket, you must use path-style requests in the format
|
3680
|
+
# `https://s3express-control.region_code.amazonaws.com/bucket-name `.
|
3681
|
+
# Virtual-hosted-style requests aren't supported. Directory bucket
|
3682
|
+
# names must be unique in the chosen Availability Zone. Bucket names
|
3683
|
+
# must also follow the format ` bucket_base_name--az_id--x-s3` (for
|
3684
|
+
# example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information
|
3685
|
+
# about bucket naming restrictions, see [Directory bucket naming
|
3686
|
+
# rules][1] in the *Amazon S3 User Guide*
|
3687
|
+
#
|
3688
|
+
#
|
3689
|
+
#
|
3690
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
3450
3691
|
# @return [String]
|
3451
3692
|
#
|
3452
3693
|
# @!attribute [rw] expected_bucket_owner
|
@@ -3454,6 +3695,12 @@ module Aws::S3
|
|
3454
3695
|
# you provide does not match the actual owner of the bucket, the
|
3455
3696
|
# request fails with the HTTP status code `403 Forbidden` (access
|
3456
3697
|
# denied).
|
3698
|
+
#
|
3699
|
+
# <note markdown="1"> For directory buckets, this header is not supported in this API
|
3700
|
+
# operation. If you specify this header, the request fails with the
|
3701
|
+
# HTTP status code `501 Not Implemented`.
|
3702
|
+
#
|
3703
|
+
# </note>
|
3457
3704
|
# @return [String]
|
3458
3705
|
#
|
3459
3706
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryptionRequest AWS API Documentation
|
@@ -4390,6 +4637,14 @@ module Aws::S3
|
|
4390
4637
|
# Specifies encryption-related information for an Amazon S3 bucket that
|
4391
4638
|
# is a destination for replicated objects.
|
4392
4639
|
#
|
4640
|
+
# <note markdown="1"> If you're specifying a customer managed KMS key, we recommend using a
|
4641
|
+
# fully qualified KMS key ARN. If you use a KMS key alias instead, then
|
4642
|
+
# KMS resolves the key within the requester’s account. This behavior can
|
4643
|
+
# result in data that's encrypted with a KMS key that belongs to the
|
4644
|
+
# requester, and not the bucket owner.
|
4645
|
+
#
|
4646
|
+
# </note>
|
4647
|
+
#
|
4393
4648
|
# @!attribute [rw] replica_kms_key_id
|
4394
4649
|
# Specifies the ID (Key ARN or Alias ARN) of the customer managed
|
4395
4650
|
# Amazon Web Services KMS key stored in Amazon Web Services Key
|
@@ -5295,12 +5550,16 @@ module Aws::S3
|
|
5295
5550
|
class EventBridgeConfiguration < Aws::EmptyStructure; end
|
5296
5551
|
|
5297
5552
|
# Optional configuration to replicate existing source bucket objects.
|
5298
|
-
#
|
5553
|
+
#
|
5554
|
+
# <note markdown="1"> This parameter is no longer supported. To replicate existing objects,
|
5555
|
+
# see [Replicating existing objects with S3 Batch Replication][1] in the
|
5299
5556
|
# *Amazon S3 User Guide*.
|
5300
5557
|
#
|
5558
|
+
# </note>
|
5301
5559
|
#
|
5302
5560
|
#
|
5303
|
-
#
|
5561
|
+
#
|
5562
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-batch-replication-batch.html
|
5304
5563
|
#
|
5305
5564
|
# @!attribute [rw] status
|
5306
5565
|
# Specifies whether Amazon S3 replicates existing source bucket
|
@@ -5564,6 +5823,20 @@ module Aws::S3
|
|
5564
5823
|
# @!attribute [rw] bucket
|
5565
5824
|
# The name of the bucket from which the server-side encryption
|
5566
5825
|
# configuration is retrieved.
|
5826
|
+
#
|
5827
|
+
# <b>Directory buckets </b> - When you use this operation with a
|
5828
|
+
# directory bucket, you must use path-style requests in the format
|
5829
|
+
# `https://s3express-control.region_code.amazonaws.com/bucket-name `.
|
5830
|
+
# Virtual-hosted-style requests aren't supported. Directory bucket
|
5831
|
+
# names must be unique in the chosen Availability Zone. Bucket names
|
5832
|
+
# must also follow the format ` bucket_base_name--az_id--x-s3` (for
|
5833
|
+
# example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information
|
5834
|
+
# about bucket naming restrictions, see [Directory bucket naming
|
5835
|
+
# rules][1] in the *Amazon S3 User Guide*
|
5836
|
+
#
|
5837
|
+
#
|
5838
|
+
#
|
5839
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
5567
5840
|
# @return [String]
|
5568
5841
|
#
|
5569
5842
|
# @!attribute [rw] expected_bucket_owner
|
@@ -5571,6 +5844,12 @@ module Aws::S3
|
|
5571
5844
|
# you provide does not match the actual owner of the bucket, the
|
5572
5845
|
# request fails with the HTTP status code `403 Forbidden` (access
|
5573
5846
|
# denied).
|
5847
|
+
#
|
5848
|
+
# <note markdown="1"> For directory buckets, this header is not supported in this API
|
5849
|
+
# operation. If you specify this header, the request fails with the
|
5850
|
+
# HTTP status code `501 Not Implemented`.
|
5851
|
+
#
|
5852
|
+
# </note>
|
5574
5853
|
# @return [String]
|
5575
5854
|
#
|
5576
5855
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryptionRequest AWS API Documentation
|
@@ -6892,12 +7171,7 @@ module Aws::S3
|
|
6892
7171
|
#
|
6893
7172
|
# @!attribute [rw] server_side_encryption
|
6894
7173
|
# The server-side encryption algorithm used when you store this object
|
6895
|
-
# in Amazon S3
|
6896
|
-
#
|
6897
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
6898
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
6899
|
-
#
|
6900
|
-
# </note>
|
7174
|
+
# in Amazon S3.
|
6901
7175
|
# @return [String]
|
6902
7176
|
#
|
6903
7177
|
# @!attribute [rw] metadata
|
@@ -6926,22 +7200,13 @@ module Aws::S3
|
|
6926
7200
|
# @return [String]
|
6927
7201
|
#
|
6928
7202
|
# @!attribute [rw] ssekms_key_id
|
6929
|
-
# If present, indicates the ID of the
|
6930
|
-
#
|
6931
|
-
# object.
|
6932
|
-
#
|
6933
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
6934
|
-
#
|
6935
|
-
# </note>
|
7203
|
+
# If present, indicates the ID of the KMS key that was used for object
|
7204
|
+
# encryption.
|
6936
7205
|
# @return [String]
|
6937
7206
|
#
|
6938
7207
|
# @!attribute [rw] bucket_key_enabled
|
6939
7208
|
# Indicates whether the object uses an S3 Bucket Key for server-side
|
6940
7209
|
# encryption with Key Management Service (KMS) keys (SSE-KMS).
|
6941
|
-
#
|
6942
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
6943
|
-
#
|
6944
|
-
# </note>
|
6945
7210
|
# @return [Boolean]
|
6946
7211
|
#
|
6947
7212
|
# @!attribute [rw] storage_class
|
@@ -7381,6 +7646,15 @@ module Aws::S3
|
|
7381
7646
|
#
|
7382
7647
|
# @!attribute [rw] checksum_mode
|
7383
7648
|
# To retrieve the checksum, this mode must be enabled.
|
7649
|
+
#
|
7650
|
+
# **General purpose buckets** - In addition, if you enable checksum
|
7651
|
+
# mode and the object is uploaded with a [checksum][1] and encrypted
|
7652
|
+
# with an Key Management Service (KMS) key, you must have permission
|
7653
|
+
# to use the `kms:Decrypt` action to retrieve the checksum.
|
7654
|
+
#
|
7655
|
+
#
|
7656
|
+
#
|
7657
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
7384
7658
|
# @return [String]
|
7385
7659
|
#
|
7386
7660
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRequest AWS API Documentation
|
@@ -7802,17 +8076,13 @@ module Aws::S3
|
|
7802
8076
|
#
|
7803
8077
|
# @!attribute [rw] bucket_region
|
7804
8078
|
# The Region that the bucket is located.
|
7805
|
-
#
|
7806
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
7807
|
-
#
|
7808
|
-
# </note>
|
7809
8079
|
# @return [String]
|
7810
8080
|
#
|
7811
8081
|
# @!attribute [rw] access_point_alias
|
7812
8082
|
# Indicates whether the bucket name used in the request is an access
|
7813
8083
|
# point alias.
|
7814
8084
|
#
|
7815
|
-
# <note markdown="1">
|
8085
|
+
# <note markdown="1"> For directory buckets, the value of this field is `false`.
|
7816
8086
|
#
|
7817
8087
|
# </note>
|
7818
8088
|
# @return [Boolean]
|
@@ -8101,11 +8371,6 @@ module Aws::S3
|
|
8101
8371
|
# @!attribute [rw] server_side_encryption
|
8102
8372
|
# The server-side encryption algorithm used when you store this object
|
8103
8373
|
# in Amazon S3 (for example, `AES256`, `aws:kms`, `aws:kms:dsse`).
|
8104
|
-
#
|
8105
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
8106
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
8107
|
-
#
|
8108
|
-
# </note>
|
8109
8374
|
# @return [String]
|
8110
8375
|
#
|
8111
8376
|
# @!attribute [rw] metadata
|
@@ -8134,22 +8399,13 @@ module Aws::S3
|
|
8134
8399
|
# @return [String]
|
8135
8400
|
#
|
8136
8401
|
# @!attribute [rw] ssekms_key_id
|
8137
|
-
# If present, indicates the ID of the
|
8138
|
-
#
|
8139
|
-
# object.
|
8140
|
-
#
|
8141
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
8142
|
-
#
|
8143
|
-
# </note>
|
8402
|
+
# If present, indicates the ID of the KMS key that was used for object
|
8403
|
+
# encryption.
|
8144
8404
|
# @return [String]
|
8145
8405
|
#
|
8146
8406
|
# @!attribute [rw] bucket_key_enabled
|
8147
8407
|
# Indicates whether the object uses an S3 Bucket Key for server-side
|
8148
8408
|
# encryption with Key Management Service (KMS) keys (SSE-KMS).
|
8149
|
-
#
|
8150
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
8151
|
-
#
|
8152
|
-
# </note>
|
8153
8409
|
# @return [Boolean]
|
8154
8410
|
#
|
8155
8411
|
# @!attribute [rw] storage_class
|
@@ -8551,10 +8807,20 @@ module Aws::S3
|
|
8551
8807
|
# @!attribute [rw] checksum_mode
|
8552
8808
|
# To retrieve the checksum, this parameter must be enabled.
|
8553
8809
|
#
|
8554
|
-
#
|
8555
|
-
#
|
8556
|
-
#
|
8557
|
-
# action
|
8810
|
+
# **General purpose buckets** - If you enable checksum mode and the
|
8811
|
+
# object is uploaded with a [checksum][1] and encrypted with an Key
|
8812
|
+
# Management Service (KMS) key, you must have permission to use the
|
8813
|
+
# `kms:Decrypt` action to retrieve the checksum.
|
8814
|
+
#
|
8815
|
+
# **Directory buckets** - If you enable `ChecksumMode` and the object
|
8816
|
+
# is encrypted with Amazon Web Services Key Management Service (Amazon
|
8817
|
+
# Web Services KMS), you must also have the `kms:GenerateDataKey` and
|
8818
|
+
# `kms:Decrypt` permissions in IAM identity-based policies and KMS key
|
8819
|
+
# policies for the KMS key to retrieve the checksum of the object.
|
8820
|
+
#
|
8821
|
+
#
|
8822
|
+
#
|
8823
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
8558
8824
|
# @return [String]
|
8559
8825
|
#
|
8560
8826
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObjectRequest AWS API Documentation
|
@@ -9526,11 +9792,45 @@ module Aws::S3
|
|
9526
9792
|
# The owner of the buckets listed.
|
9527
9793
|
# @return [Types::Owner]
|
9528
9794
|
#
|
9795
|
+
# @!attribute [rw] continuation_token
|
9796
|
+
# `ContinuationToken` is included in the response when there are more
|
9797
|
+
# buckets that can be listed with pagination. The next `ListBuckets`
|
9798
|
+
# request to Amazon S3 can be continued with this `ContinuationToken`.
|
9799
|
+
# `ContinuationToken` is obfuscated and is not a real bucket.
|
9800
|
+
# @return [String]
|
9801
|
+
#
|
9529
9802
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketsOutput AWS API Documentation
|
9530
9803
|
#
|
9531
9804
|
class ListBucketsOutput < Struct.new(
|
9532
9805
|
:buckets,
|
9533
|
-
:owner
|
9806
|
+
:owner,
|
9807
|
+
:continuation_token)
|
9808
|
+
SENSITIVE = []
|
9809
|
+
include Aws::Structure
|
9810
|
+
end
|
9811
|
+
|
9812
|
+
# @!attribute [rw] max_buckets
|
9813
|
+
# Maximum number of buckets to be returned in response. When the
|
9814
|
+
# number is more than the count of buckets that are owned by an Amazon
|
9815
|
+
# Web Services account, return all the buckets in response.
|
9816
|
+
# @return [Integer]
|
9817
|
+
#
|
9818
|
+
# @!attribute [rw] continuation_token
|
9819
|
+
# `ContinuationToken` indicates to Amazon S3 that the list is being
|
9820
|
+
# continued on this bucket with a token. `ContinuationToken` is
|
9821
|
+
# obfuscated and is not a real key. You can use this
|
9822
|
+
# `ContinuationToken` for pagination of the list results.
|
9823
|
+
#
|
9824
|
+
# Length Constraints: Minimum length of 0. Maximum length of 1024.
|
9825
|
+
#
|
9826
|
+
# Required: No.
|
9827
|
+
# @return [String]
|
9828
|
+
#
|
9829
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketsRequest AWS API Documentation
|
9830
|
+
#
|
9831
|
+
class ListBucketsRequest < Struct.new(
|
9832
|
+
:max_buckets,
|
9833
|
+
:continuation_token)
|
9534
9834
|
SENSITIVE = []
|
9535
9835
|
include Aws::Structure
|
9536
9836
|
end
|
@@ -9556,9 +9856,10 @@ module Aws::S3
|
|
9556
9856
|
|
9557
9857
|
# @!attribute [rw] continuation_token
|
9558
9858
|
# `ContinuationToken` indicates to Amazon S3 that the list is being
|
9559
|
-
# continued on this
|
9560
|
-
# obfuscated and is not a real
|
9561
|
-
# `ContinuationToken` for pagination of the list
|
9859
|
+
# continued on buckets in this account with a token.
|
9860
|
+
# `ContinuationToken` is obfuscated and is not a real bucket name. You
|
9861
|
+
# can use this `ContinuationToken` for the pagination of the list
|
9862
|
+
# results.
|
9562
9863
|
# @return [String]
|
9563
9864
|
#
|
9564
9865
|
# @!attribute [rw] max_directory_buckets
|
@@ -9768,12 +10069,26 @@ module Aws::S3
|
|
9768
10069
|
# @return [String]
|
9769
10070
|
#
|
9770
10071
|
# @!attribute [rw] encoding_type
|
9771
|
-
#
|
9772
|
-
#
|
9773
|
-
# Unicode character
|
9774
|
-
# characters, such as characters with an ASCII value
|
9775
|
-
# characters that
|
9776
|
-
# parameter to request that Amazon S3 encode the keys in
|
10072
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10073
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10074
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10075
|
+
# parse certain characters, such as characters with an ASCII value
|
10076
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10077
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10078
|
+
# the response. For more information about characters to avoid in
|
10079
|
+
# object key names, see [Object key naming guidelines][2].
|
10080
|
+
#
|
10081
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10082
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10083
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10084
|
+
# as `test_file%283%29.png`.
|
10085
|
+
#
|
10086
|
+
# </note>
|
10087
|
+
#
|
10088
|
+
#
|
10089
|
+
#
|
10090
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10091
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
9777
10092
|
# @return [String]
|
9778
10093
|
#
|
9779
10094
|
# @!attribute [rw] key_marker
|
@@ -9998,12 +10313,26 @@ module Aws::S3
|
|
9998
10313
|
# @return [String]
|
9999
10314
|
#
|
10000
10315
|
# @!attribute [rw] encoding_type
|
10001
|
-
#
|
10002
|
-
#
|
10003
|
-
# Unicode character
|
10004
|
-
# characters, such as characters with an ASCII value
|
10005
|
-
# characters that
|
10006
|
-
# parameter to request that Amazon S3 encode the keys in
|
10316
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10317
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10318
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10319
|
+
# parse certain characters, such as characters with an ASCII value
|
10320
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10321
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10322
|
+
# the response. For more information about characters to avoid in
|
10323
|
+
# object key names, see [Object key naming guidelines][2].
|
10324
|
+
#
|
10325
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10326
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10327
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10328
|
+
# as `test_file%283%29.png`.
|
10329
|
+
#
|
10330
|
+
# </note>
|
10331
|
+
#
|
10332
|
+
#
|
10333
|
+
#
|
10334
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10335
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10007
10336
|
# @return [String]
|
10008
10337
|
#
|
10009
10338
|
# @!attribute [rw] key_marker
|
@@ -10150,10 +10479,26 @@ module Aws::S3
|
|
10150
10479
|
# @return [Array<Types::CommonPrefix>]
|
10151
10480
|
#
|
10152
10481
|
# @!attribute [rw] encoding_type
|
10153
|
-
# Encoding type used by Amazon S3 to encode object keys in
|
10154
|
-
# response.
|
10155
|
-
#
|
10156
|
-
#
|
10482
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10483
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10484
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10485
|
+
# parse certain characters, such as characters with an ASCII value
|
10486
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10487
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10488
|
+
# the response. For more information about characters to avoid in
|
10489
|
+
# object key names, see [Object key naming guidelines][2].
|
10490
|
+
#
|
10491
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10492
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10493
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10494
|
+
# as `test_file%283%29.png`.
|
10495
|
+
#
|
10496
|
+
# </note>
|
10497
|
+
#
|
10498
|
+
#
|
10499
|
+
#
|
10500
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10501
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10157
10502
|
# @return [String]
|
10158
10503
|
#
|
10159
10504
|
# @!attribute [rw] request_charged
|
@@ -10233,12 +10578,26 @@ module Aws::S3
|
|
10233
10578
|
# @return [String]
|
10234
10579
|
#
|
10235
10580
|
# @!attribute [rw] encoding_type
|
10236
|
-
#
|
10237
|
-
#
|
10238
|
-
# Unicode character
|
10239
|
-
# characters, such as characters with an ASCII value
|
10240
|
-
# characters that
|
10241
|
-
# parameter to request that Amazon S3 encode the keys in
|
10581
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10582
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10583
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10584
|
+
# parse certain characters, such as characters with an ASCII value
|
10585
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10586
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10587
|
+
# the response. For more information about characters to avoid in
|
10588
|
+
# object key names, see [Object key naming guidelines][2].
|
10589
|
+
#
|
10590
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10591
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10592
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10593
|
+
# as `test_file%283%29.png`.
|
10594
|
+
#
|
10595
|
+
# </note>
|
10596
|
+
#
|
10597
|
+
#
|
10598
|
+
#
|
10599
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10600
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10242
10601
|
# @return [String]
|
10243
10602
|
#
|
10244
10603
|
# @!attribute [rw] marker
|
@@ -10506,10 +10865,26 @@ module Aws::S3
|
|
10506
10865
|
# @return [String]
|
10507
10866
|
#
|
10508
10867
|
# @!attribute [rw] encoding_type
|
10509
|
-
# Encoding type used by Amazon S3 to encode object keys in
|
10510
|
-
# response.
|
10511
|
-
#
|
10512
|
-
#
|
10868
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10869
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10870
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10871
|
+
# parse certain characters, such as characters with an ASCII value
|
10872
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10873
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10874
|
+
# the response. For more information about characters to avoid in
|
10875
|
+
# object key names, see [Object key naming guidelines][2].
|
10876
|
+
#
|
10877
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10878
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10879
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10880
|
+
# as `test_file%283%29.png`.
|
10881
|
+
#
|
10882
|
+
# </note>
|
10883
|
+
#
|
10884
|
+
#
|
10885
|
+
#
|
10886
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10887
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10513
10888
|
# @return [String]
|
10514
10889
|
#
|
10515
10890
|
# @!attribute [rw] max_keys
|
@@ -11963,7 +12338,15 @@ module Aws::S3
|
|
11963
12338
|
#
|
11964
12339
|
# @!attribute [rw] partition_date_source
|
11965
12340
|
# Specifies the partition date source for the partitioned prefix.
|
11966
|
-
# PartitionDateSource can be EventTime or DeliveryTime
|
12341
|
+
# `PartitionDateSource` can be `EventTime` or `DeliveryTime`.
|
12342
|
+
#
|
12343
|
+
# For `DeliveryTime`, the time in the log file names corresponds to
|
12344
|
+
# the delivery time for the log files.
|
12345
|
+
#
|
12346
|
+
# For `EventTime`, The logs delivered are for a specific day only. The
|
12347
|
+
# year, month, and day correspond to the day on which the event
|
12348
|
+
# occurred, and the hour, minutes and seconds are set to 00 in the
|
12349
|
+
# key.
|
11967
12350
|
# @return [String]
|
11968
12351
|
#
|
11969
12352
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PartitionedPrefix AWS API Documentation
|
@@ -12076,8 +12459,9 @@ module Aws::S3
|
|
12076
12459
|
# @!attribute [rw] restrict_public_buckets
|
12077
12460
|
# Specifies whether Amazon S3 should restrict public bucket policies
|
12078
12461
|
# for this bucket. Setting this element to `TRUE` restricts access to
|
12079
|
-
# this bucket to only Amazon Web
|
12080
|
-
# users within this account if the bucket has a public
|
12462
|
+
# this bucket to only Amazon Web Servicesservice principals and
|
12463
|
+
# authorized users within this account if the bucket has a public
|
12464
|
+
# policy.
|
12081
12465
|
#
|
12082
12466
|
# Enabling this setting doesn't affect previously stored bucket
|
12083
12467
|
# policies, except that public and cross-account access within any
|
@@ -12332,18 +12716,21 @@ module Aws::S3
|
|
12332
12716
|
|
12333
12717
|
# @!attribute [rw] bucket
|
12334
12718
|
# Specifies default encryption for a bucket using server-side
|
12335
|
-
# encryption with different key options.
|
12336
|
-
#
|
12337
|
-
#
|
12338
|
-
#
|
12339
|
-
#
|
12340
|
-
#
|
12341
|
-
#
|
12342
|
-
#
|
12719
|
+
# encryption with different key options.
|
12720
|
+
#
|
12721
|
+
# <b>Directory buckets </b> - When you use this operation with a
|
12722
|
+
# directory bucket, you must use path-style requests in the format
|
12723
|
+
# `https://s3express-control.region_code.amazonaws.com/bucket-name `.
|
12724
|
+
# Virtual-hosted-style requests aren't supported. Directory bucket
|
12725
|
+
# names must be unique in the chosen Availability Zone. Bucket names
|
12726
|
+
# must also follow the format ` bucket_base_name--az_id--x-s3` (for
|
12727
|
+
# example, ` DOC-EXAMPLE-BUCKET--usw2-az1--x-s3`). For information
|
12728
|
+
# about bucket naming restrictions, see [Directory bucket naming
|
12729
|
+
# rules][1] in the *Amazon S3 User Guide*
|
12343
12730
|
#
|
12344
12731
|
#
|
12345
12732
|
#
|
12346
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/
|
12733
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
12347
12734
|
# @return [String]
|
12348
12735
|
#
|
12349
12736
|
# @!attribute [rw] content_md5
|
@@ -12353,6 +12740,10 @@ module Aws::S3
|
|
12353
12740
|
# For requests made using the Amazon Web Services Command Line
|
12354
12741
|
# Interface (CLI) or Amazon Web Services SDKs, this field is
|
12355
12742
|
# calculated automatically.
|
12743
|
+
#
|
12744
|
+
# <note markdown="1"> This functionality is not supported for directory buckets.
|
12745
|
+
#
|
12746
|
+
# </note>
|
12356
12747
|
# @return [String]
|
12357
12748
|
#
|
12358
12749
|
# @!attribute [rw] checksum_algorithm
|
@@ -12367,6 +12758,12 @@ module Aws::S3
|
|
12367
12758
|
# If you provide an individual checksum, Amazon S3 ignores any
|
12368
12759
|
# provided `ChecksumAlgorithm` parameter.
|
12369
12760
|
#
|
12761
|
+
# <note markdown="1"> For directory buckets, when you use Amazon Web Services SDKs,
|
12762
|
+
# `CRC32` is the default checksum algorithm that's used for
|
12763
|
+
# performance.
|
12764
|
+
#
|
12765
|
+
# </note>
|
12766
|
+
#
|
12370
12767
|
#
|
12371
12768
|
#
|
12372
12769
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
@@ -12381,6 +12778,12 @@ module Aws::S3
|
|
12381
12778
|
# you provide does not match the actual owner of the bucket, the
|
12382
12779
|
# request fails with the HTTP status code `403 Forbidden` (access
|
12383
12780
|
# denied).
|
12781
|
+
#
|
12782
|
+
# <note markdown="1"> For directory buckets, this header is not supported in this API
|
12783
|
+
# operation. If you specify this header, the request fails with the
|
12784
|
+
# HTTP status code `501 Not Implemented`.
|
12785
|
+
#
|
12786
|
+
# </note>
|
12384
12787
|
# @return [String]
|
12385
12788
|
#
|
12386
12789
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryptionRequest AWS API Documentation
|
@@ -13649,12 +14052,7 @@ module Aws::S3
|
|
13649
14052
|
#
|
13650
14053
|
# @!attribute [rw] server_side_encryption
|
13651
14054
|
# The server-side encryption algorithm used when you store this object
|
13652
|
-
# in Amazon S3
|
13653
|
-
#
|
13654
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
13655
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
13656
|
-
#
|
13657
|
-
# </note>
|
14055
|
+
# in Amazon S3.
|
13658
14056
|
# @return [String]
|
13659
14057
|
#
|
13660
14058
|
# @!attribute [rw] version_id
|
@@ -13702,37 +14100,23 @@ module Aws::S3
|
|
13702
14100
|
# @return [String]
|
13703
14101
|
#
|
13704
14102
|
# @!attribute [rw] ssekms_key_id
|
13705
|
-
# If
|
13706
|
-
#
|
13707
|
-
# Service (KMS) symmetric encryption customer managed key that was
|
13708
|
-
# used for the object.
|
13709
|
-
#
|
13710
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
13711
|
-
#
|
13712
|
-
# </note>
|
14103
|
+
# If present, indicates the ID of the KMS key that was used for object
|
14104
|
+
# encryption.
|
13713
14105
|
# @return [String]
|
13714
14106
|
#
|
13715
14107
|
# @!attribute [rw] ssekms_encryption_context
|
13716
14108
|
# If present, indicates the Amazon Web Services KMS Encryption Context
|
13717
14109
|
# to use for object encryption. The value of this header is a
|
13718
|
-
#
|
13719
|
-
# key-value pairs. This value is stored as
|
13720
|
-
# automatically gets passed on to Amazon Web
|
13721
|
-
#
|
13722
|
-
#
|
13723
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
13724
|
-
#
|
13725
|
-
# </note>
|
14110
|
+
# Base64-encoded string of a UTF-8 encoded JSON, which contains the
|
14111
|
+
# encryption context as key-value pairs. This value is stored as
|
14112
|
+
# object metadata and automatically gets passed on to Amazon Web
|
14113
|
+
# Services KMS for future `GetObject` operations on this object.
|
13726
14114
|
# @return [String]
|
13727
14115
|
#
|
13728
14116
|
# @!attribute [rw] bucket_key_enabled
|
13729
14117
|
# Indicates whether the uploaded object uses an S3 Bucket Key for
|
13730
14118
|
# server-side encryption with Key Management Service (KMS) keys
|
13731
14119
|
# (SSE-KMS).
|
13732
|
-
#
|
13733
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
13734
|
-
#
|
13735
|
-
# </note>
|
13736
14120
|
# @return [Boolean]
|
13737
14121
|
#
|
13738
14122
|
# @!attribute [rw] request_charged
|
@@ -14034,6 +14418,26 @@ module Aws::S3
|
|
14034
14418
|
# [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
|
14035
14419
|
# @return [Time]
|
14036
14420
|
#
|
14421
|
+
# @!attribute [rw] if_none_match
|
14422
|
+
# Uploads the object only if the object key name does not already
|
14423
|
+
# exist in the bucket specified. Otherwise, Amazon S3 returns a `412
|
14424
|
+
# Precondition Failed` error.
|
14425
|
+
#
|
14426
|
+
# If a conflicting operation occurs during the upload S3 returns a
|
14427
|
+
# `409 ConditionalRequestConflict` response. On a 409 failure you
|
14428
|
+
# should retry the upload.
|
14429
|
+
#
|
14430
|
+
# Expects the '*' (asterisk) character.
|
14431
|
+
#
|
14432
|
+
# For more information about conditional requests, see [RFC 7232][1],
|
14433
|
+
# or [Conditional requests][2] in the *Amazon S3 User Guide*.
|
14434
|
+
#
|
14435
|
+
#
|
14436
|
+
#
|
14437
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
14438
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
|
14439
|
+
# @return [String]
|
14440
|
+
#
|
14037
14441
|
# @!attribute [rw] grant_full_control
|
14038
14442
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
14039
14443
|
# object.
|
@@ -14088,25 +14492,66 @@ module Aws::S3
|
|
14088
14492
|
# this object in Amazon S3 (for example, `AES256`, `aws:kms`,
|
14089
14493
|
# `aws:kms:dsse`).
|
14090
14494
|
#
|
14091
|
-
# <b>General purpose buckets </b> - You have four mutually exclusive
|
14092
|
-
#
|
14093
|
-
#
|
14094
|
-
#
|
14095
|
-
#
|
14096
|
-
#
|
14097
|
-
#
|
14098
|
-
#
|
14099
|
-
#
|
14100
|
-
#
|
14101
|
-
#
|
14495
|
+
# * <b>General purpose buckets </b> - You have four mutually exclusive
|
14496
|
+
# options to protect data using server-side encryption in Amazon S3,
|
14497
|
+
# depending on how you choose to manage the encryption keys.
|
14498
|
+
# Specifically, the encryption key options are Amazon S3 managed
|
14499
|
+
# keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS),
|
14500
|
+
# and customer-provided keys (SSE-C). Amazon S3 encrypts data with
|
14501
|
+
# server-side encryption by using Amazon S3 managed keys (SSE-S3) by
|
14502
|
+
# default. You can optionally tell Amazon S3 to encrypt data at rest
|
14503
|
+
# by using server-side encryption with other key options. For more
|
14504
|
+
# information, see [Using Server-Side Encryption][1] in the *Amazon
|
14505
|
+
# S3 User Guide*.
|
14506
|
+
#
|
14507
|
+
# * <b>Directory buckets </b> - For directory buckets, there are only
|
14508
|
+
# two supported options for server-side encryption: server-side
|
14509
|
+
# encryption with Amazon S3 managed keys (SSE-S3) (`AES256`) and
|
14510
|
+
# server-side encryption with KMS keys (SSE-KMS) (`aws:kms`). We
|
14511
|
+
# recommend that the bucket's default encryption uses the desired
|
14512
|
+
# encryption configuration and you don't override the bucket
|
14513
|
+
# default encryption in your `CreateSession` requests or `PUT`
|
14514
|
+
# object requests. Then, new objects are automatically encrypted
|
14515
|
+
# with the desired encryption settings. For more information, see
|
14516
|
+
# [Protecting data with server-side encryption][2] in the *Amazon S3
|
14517
|
+
# User Guide*. For more information about the encryption overriding
|
14518
|
+
# behaviors in directory buckets, see [Specifying server-side
|
14519
|
+
# encryption with KMS for new object uploads][3].
|
14520
|
+
#
|
14521
|
+
# In the Zonal endpoint API calls (except [CopyObject][4] and
|
14522
|
+
# [UploadPartCopy][5]) using the REST API, the encryption request
|
14523
|
+
# headers must match the encryption settings that are specified in
|
14524
|
+
# the `CreateSession` request. You can't override the values of the
|
14525
|
+
# encryption settings (`x-amz-server-side-encryption`,
|
14526
|
+
# `x-amz-server-side-encryption-aws-kms-key-id`,
|
14527
|
+
# `x-amz-server-side-encryption-context`, and
|
14528
|
+
# `x-amz-server-side-encryption-bucket-key-enabled`) that are
|
14529
|
+
# specified in the `CreateSession` request. You don't need to
|
14530
|
+
# explicitly specify these encryption settings values in Zonal
|
14531
|
+
# endpoint API calls, and Amazon S3 will use the encryption settings
|
14532
|
+
# values from the `CreateSession` request to protect new objects in
|
14533
|
+
# the directory bucket.
|
14534
|
+
#
|
14535
|
+
# <note markdown="1"> When you use the CLI or the Amazon Web Services SDKs, for
|
14536
|
+
# `CreateSession`, the session token refreshes automatically to
|
14537
|
+
# avoid service interruptions when a session expires. The CLI or the
|
14538
|
+
# Amazon Web Services SDKs use the bucket's default encryption
|
14539
|
+
# configuration for the `CreateSession` request. It's not supported
|
14540
|
+
# to override the encryption settings values in the `CreateSession`
|
14541
|
+
# request. So in the Zonal endpoint API calls (except
|
14542
|
+
# [CopyObject][4] and [UploadPartCopy][5]), the encryption request
|
14543
|
+
# headers must match the default encryption configuration of the
|
14544
|
+
# directory bucket.
|
14102
14545
|
#
|
14103
|
-
#
|
14104
|
-
# server-side encryption with Amazon S3 managed keys (SSE-S3)
|
14105
|
-
# (`AES256`) value is supported.
|
14546
|
+
# </note>
|
14106
14547
|
#
|
14107
14548
|
#
|
14108
14549
|
#
|
14109
14550
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
|
14551
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
14552
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html
|
14553
|
+
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
14554
|
+
# [5]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
14110
14555
|
# @return [String]
|
14111
14556
|
#
|
14112
14557
|
# @!attribute [rw] storage_class
|
@@ -14192,48 +14637,87 @@ module Aws::S3
|
|
14192
14637
|
# @return [String]
|
14193
14638
|
#
|
14194
14639
|
# @!attribute [rw] ssekms_key_id
|
14195
|
-
#
|
14196
|
-
#
|
14197
|
-
#
|
14198
|
-
#
|
14640
|
+
# Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for
|
14641
|
+
# object encryption. If the KMS key doesn't exist in the same account
|
14642
|
+
# that's issuing the command, you must use the full Key ARN not the
|
14643
|
+
# Key ID.
|
14644
|
+
#
|
14645
|
+
# **General purpose buckets** - If you specify
|
14646
|
+
# `x-amz-server-side-encryption` with `aws:kms` or `aws:kms:dsse`,
|
14647
|
+
# this header specifies the ID (Key ID, Key ARN, or Key Alias) of the
|
14648
|
+
# KMS key to use. If you specify
|
14199
14649
|
# `x-amz-server-side-encryption:aws:kms` or
|
14200
|
-
# `x-amz-server-side-encryption:aws:kms:dsse`, but do not provide
|
14201
|
-
# x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
14202
|
-
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
14203
|
-
# the KMS key does not exist in the same account that's issuing the
|
14204
|
-
# command, you must use the full ARN and not just the ID.
|
14650
|
+
# `x-amz-server-side-encryption:aws:kms:dsse`, but do not provide
|
14651
|
+
# `x-amz-server-side-encryption-aws-kms-key-id`, Amazon S3 uses the
|
14652
|
+
# Amazon Web Services managed key (`aws/s3`) to protect the data.
|
14205
14653
|
#
|
14206
|
-
#
|
14654
|
+
# **Directory buckets** - If you specify
|
14655
|
+
# `x-amz-server-side-encryption` with `aws:kms`, you must specify the
|
14656
|
+
# ` x-amz-server-side-encryption-aws-kms-key-id` header with the ID
|
14657
|
+
# (Key ID or Key ARN) of the KMS symmetric encryption customer managed
|
14658
|
+
# key to use. Otherwise, you get an HTTP `400 Bad Request` error. Only
|
14659
|
+
# use the key ID or key ARN. The key alias format of the KMS key
|
14660
|
+
# isn't supported. Your SSE-KMS configuration can only support 1
|
14661
|
+
# [customer managed key][1] per directory bucket for the lifetime of
|
14662
|
+
# the bucket. [Amazon Web Services managed key][2] (`aws/s3`) isn't
|
14663
|
+
# supported.
|
14207
14664
|
#
|
14208
|
-
#
|
14665
|
+
#
|
14666
|
+
#
|
14667
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
14668
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
14209
14669
|
# @return [String]
|
14210
14670
|
#
|
14211
14671
|
# @!attribute [rw] ssekms_encryption_context
|
14212
|
-
# Specifies the Amazon Web Services KMS Encryption Context
|
14213
|
-
#
|
14214
|
-
#
|
14215
|
-
#
|
14216
|
-
#
|
14217
|
-
# `
|
14218
|
-
#
|
14672
|
+
# Specifies the Amazon Web Services KMS Encryption Context as an
|
14673
|
+
# additional encryption context to use for object encryption. The
|
14674
|
+
# value of this header is a Base64-encoded string of a UTF-8 encoded
|
14675
|
+
# JSON, which contains the encryption context as key-value pairs. This
|
14676
|
+
# value is stored as object metadata and automatically gets passed on
|
14677
|
+
# to Amazon Web Services KMS for future `GetObject` operations on this
|
14678
|
+
# object.
|
14219
14679
|
#
|
14220
|
-
#
|
14680
|
+
# **General purpose buckets** - This value must be explicitly added
|
14681
|
+
# during `CopyObject` operations if you want an additional encryption
|
14682
|
+
# context for your object. For more information, see [Encryption
|
14683
|
+
# context][1] in the *Amazon S3 User Guide*.
|
14221
14684
|
#
|
14222
|
-
#
|
14685
|
+
# **Directory buckets** - You can optionally provide an explicit
|
14686
|
+
# encryption context value. The value must match the default
|
14687
|
+
# encryption context - the bucket Amazon Resource Name (ARN). An
|
14688
|
+
# additional encryption context value is not supported.
|
14689
|
+
#
|
14690
|
+
#
|
14691
|
+
#
|
14692
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html#encryption-context
|
14223
14693
|
# @return [String]
|
14224
14694
|
#
|
14225
14695
|
# @!attribute [rw] bucket_key_enabled
|
14226
14696
|
# Specifies whether Amazon S3 should use an S3 Bucket Key for object
|
14227
14697
|
# encryption with server-side encryption using Key Management Service
|
14228
|
-
# (KMS) keys (SSE-KMS).
|
14229
|
-
# to use an S3 Bucket Key for object encryption with SSE-KMS.
|
14698
|
+
# (KMS) keys (SSE-KMS).
|
14230
14699
|
#
|
14231
|
-
#
|
14232
|
-
#
|
14700
|
+
# **General purpose buckets** - Setting this header to `true` causes
|
14701
|
+
# Amazon S3 to use an S3 Bucket Key for object encryption with
|
14702
|
+
# SSE-KMS. Also, specifying this header with a PUT action doesn't
|
14703
|
+
# affect bucket-level settings for S3 Bucket Key.
|
14233
14704
|
#
|
14234
|
-
#
|
14705
|
+
# **Directory buckets** - S3 Bucket Keys are always enabled for `GET`
|
14706
|
+
# and `PUT` operations in a directory bucket and can’t be disabled. S3
|
14707
|
+
# Bucket Keys aren't supported, when you copy SSE-KMS encrypted
|
14708
|
+
# objects from general purpose buckets to directory buckets, from
|
14709
|
+
# directory buckets to general purpose buckets, or between directory
|
14710
|
+
# buckets, through [CopyObject][1], [UploadPartCopy][2], [the Copy
|
14711
|
+
# operation in Batch Operations][3], or [the import jobs][4]. In this
|
14712
|
+
# case, Amazon S3 makes a call to KMS every time a copy request is
|
14713
|
+
# made for a KMS-encrypted object.
|
14235
14714
|
#
|
14236
|
-
#
|
14715
|
+
#
|
14716
|
+
#
|
14717
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
14718
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
14719
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-Batch-Ops
|
14720
|
+
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-import-job
|
14237
14721
|
# @return [Boolean]
|
14238
14722
|
#
|
14239
14723
|
# @!attribute [rw] request_payer
|
@@ -14320,6 +14804,7 @@ module Aws::S3
|
|
14320
14804
|
:checksum_sha1,
|
14321
14805
|
:checksum_sha256,
|
14322
14806
|
:expires,
|
14807
|
+
:if_none_match,
|
14323
14808
|
:grant_full_control,
|
14324
14809
|
:grant_read,
|
14325
14810
|
:grant_read_acp,
|
@@ -14730,7 +15215,15 @@ module Aws::S3
|
|
14730
15215
|
# The container for the records event.
|
14731
15216
|
#
|
14732
15217
|
# @!attribute [rw] payload
|
14733
|
-
# The byte array of partial, one or more result records.
|
15218
|
+
# The byte array of partial, one or more result records. S3 Select
|
15219
|
+
# doesn't guarantee that a record will be self-contained in one
|
15220
|
+
# record frame. To ensure continuous streaming of data, S3 Select
|
15221
|
+
# might split the same record across multiple record frames instead of
|
15222
|
+
# aggregating the results in memory. Some S3 clients (for example, the
|
15223
|
+
# SDK for Java) handle this behavior by creating a `ByteStream` out of
|
15224
|
+
# the response by default. Other clients might not handle this
|
15225
|
+
# behavior by default. In those cases, you must aggregate the results
|
15226
|
+
# on the client side and parse the response.
|
14734
15227
|
# @return [String]
|
14735
15228
|
#
|
14736
15229
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RecordsEvent AWS API Documentation
|
@@ -14938,12 +15431,16 @@ module Aws::S3
|
|
14938
15431
|
#
|
14939
15432
|
# @!attribute [rw] existing_object_replication
|
14940
15433
|
# Optional configuration to replicate existing source bucket objects.
|
14941
|
-
#
|
14942
|
-
#
|
15434
|
+
#
|
15435
|
+
# <note markdown="1"> This parameter is no longer supported. To replicate existing
|
15436
|
+
# objects, see [Replicating existing objects with S3 Batch
|
15437
|
+
# Replication][1] in the *Amazon S3 User Guide*.
|
15438
|
+
#
|
15439
|
+
# </note>
|
14943
15440
|
#
|
14944
15441
|
#
|
14945
15442
|
#
|
14946
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/
|
15443
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-batch-replication-batch.html
|
14947
15444
|
# @return [Types::ExistingObjectReplication]
|
14948
15445
|
#
|
14949
15446
|
# @!attribute [rw] destination
|
@@ -15274,7 +15771,15 @@ module Aws::S3
|
|
15274
15771
|
# @return [Types::GlacierJobParameters]
|
15275
15772
|
#
|
15276
15773
|
# @!attribute [rw] type
|
15774
|
+
# Amazon S3 Select is no longer available to new customers. Existing
|
15775
|
+
# customers of Amazon S3 Select can continue to use the feature as
|
15776
|
+
# usual. [Learn more][1]
|
15777
|
+
#
|
15277
15778
|
# Type of restore request.
|
15779
|
+
#
|
15780
|
+
#
|
15781
|
+
#
|
15782
|
+
# [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
|
15278
15783
|
# @return [String]
|
15279
15784
|
#
|
15280
15785
|
# @!attribute [rw] tier
|
@@ -15286,7 +15791,15 @@ module Aws::S3
|
|
15286
15791
|
# @return [String]
|
15287
15792
|
#
|
15288
15793
|
# @!attribute [rw] select_parameters
|
15794
|
+
# Amazon S3 Select is no longer available to new customers. Existing
|
15795
|
+
# customers of Amazon S3 Select can continue to use the feature as
|
15796
|
+
# usual. [Learn more][1]
|
15797
|
+
#
|
15289
15798
|
# Describes the parameters for Select job types.
|
15799
|
+
#
|
15800
|
+
#
|
15801
|
+
#
|
15802
|
+
# [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
|
15290
15803
|
# @return [Types::SelectParameters]
|
15291
15804
|
#
|
15292
15805
|
# @!attribute [rw] output_location
|
@@ -15617,6 +16130,12 @@ module Aws::S3
|
|
15617
16130
|
include Aws::Structure
|
15618
16131
|
end
|
15619
16132
|
|
16133
|
+
# <note markdown="1"> Learn Amazon S3 Select is no longer available to new customers.
|
16134
|
+
# Existing customers of Amazon S3 Select can continue to use the feature
|
16135
|
+
# as usual. [Learn more][1]
|
16136
|
+
#
|
16137
|
+
# </note>
|
16138
|
+
#
|
15620
16139
|
# Request to filter the contents of an Amazon S3 object based on a
|
15621
16140
|
# simple Structured Query Language (SQL) statement. In the request,
|
15622
16141
|
# along with the SQL expression, you must specify a data serialization
|
@@ -15624,11 +16143,12 @@ module Aws::S3
|
|
15624
16143
|
# object data into records. It returns only records that match the
|
15625
16144
|
# specified SQL expression. You must also specify the data serialization
|
15626
16145
|
# format for the response. For more information, see [S3Select API
|
15627
|
-
# Documentation][
|
16146
|
+
# Documentation][2].
|
15628
16147
|
#
|
15629
16148
|
#
|
15630
16149
|
#
|
15631
|
-
# [1]:
|
16150
|
+
# [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
|
16151
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html
|
15632
16152
|
#
|
15633
16153
|
# @!attribute [rw] bucket
|
15634
16154
|
# The S3 bucket.
|
@@ -15740,8 +16260,21 @@ module Aws::S3
|
|
15740
16260
|
include Aws::Structure
|
15741
16261
|
end
|
15742
16262
|
|
16263
|
+
# Amazon S3 Select is no longer available to new customers. Existing
|
16264
|
+
# customers of Amazon S3 Select can continue to use the feature as
|
16265
|
+
# usual. [Learn more][1]
|
16266
|
+
#
|
15743
16267
|
# Describes the parameters for Select job types.
|
15744
16268
|
#
|
16269
|
+
# Learn [How to optimize querying your data in Amazon S3][1] using
|
16270
|
+
# [Amazon Athena][2], [S3 Object Lambda][3], or client-side filtering.
|
16271
|
+
#
|
16272
|
+
#
|
16273
|
+
#
|
16274
|
+
# [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
|
16275
|
+
# [2]: https://docs.aws.amazon.com/athena/latest/ug/what-is.html
|
16276
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html
|
16277
|
+
#
|
15745
16278
|
# @!attribute [rw] input_serialization
|
15746
16279
|
# Describes the serialization format of the object.
|
15747
16280
|
# @return [Types::InputSerialization]
|
@@ -15751,7 +16284,15 @@ module Aws::S3
|
|
15751
16284
|
# @return [String]
|
15752
16285
|
#
|
15753
16286
|
# @!attribute [rw] expression
|
16287
|
+
# Amazon S3 Select is no longer available to new customers. Existing
|
16288
|
+
# customers of Amazon S3 Select can continue to use the feature as
|
16289
|
+
# usual. [Learn more][1]
|
16290
|
+
#
|
15754
16291
|
# The expression that is used to query the object.
|
16292
|
+
#
|
16293
|
+
#
|
16294
|
+
#
|
16295
|
+
# [1]: http://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/
|
15755
16296
|
# @return [String]
|
15756
16297
|
#
|
15757
16298
|
# @!attribute [rw] output_serialization
|
@@ -15771,27 +16312,51 @@ module Aws::S3
|
|
15771
16312
|
|
15772
16313
|
# Describes the default server-side encryption to apply to new objects
|
15773
16314
|
# in the bucket. If a PUT Object request doesn't specify any
|
15774
|
-
# server-side encryption, this default encryption will be applied.
|
15775
|
-
#
|
15776
|
-
#
|
15777
|
-
#
|
15778
|
-
#
|
15779
|
-
#
|
15780
|
-
#
|
16315
|
+
# server-side encryption, this default encryption will be applied. For
|
16316
|
+
# more information, see [PutBucketEncryption][1].
|
16317
|
+
#
|
16318
|
+
# <note markdown="1"> * **General purpose buckets** - If you don't specify a customer
|
16319
|
+
# managed key at configuration, Amazon S3 automatically creates an
|
16320
|
+
# Amazon Web Services KMS key (`aws/s3`) in your Amazon Web Services
|
16321
|
+
# account the first time that you add an object encrypted with SSE-KMS
|
16322
|
+
# to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
|
16323
|
+
#
|
16324
|
+
# * **Directory buckets** - Your SSE-KMS configuration can only support
|
16325
|
+
# 1 [customer managed key][2] per directory bucket for the lifetime of
|
16326
|
+
# the bucket. [Amazon Web Services managed key][3] (`aws/s3`) isn't
|
16327
|
+
# supported.
|
16328
|
+
#
|
16329
|
+
# * **Directory buckets** - For directory buckets, there are only two
|
16330
|
+
# supported options for server-side encryption: SSE-S3 and SSE-KMS.
|
16331
|
+
#
|
16332
|
+
# </note>
|
15781
16333
|
#
|
15782
16334
|
#
|
15783
16335
|
#
|
15784
16336
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html
|
16337
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
16338
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
15785
16339
|
#
|
15786
16340
|
# @!attribute [rw] sse_algorithm
|
15787
16341
|
# Server-side encryption algorithm to use for the default encryption.
|
16342
|
+
#
|
16343
|
+
# <note markdown="1"> For directory buckets, there are only two supported values for
|
16344
|
+
# server-side encryption: `AES256` and `aws:kms`.
|
16345
|
+
#
|
16346
|
+
# </note>
|
15788
16347
|
# @return [String]
|
15789
16348
|
#
|
15790
16349
|
# @!attribute [rw] kms_master_key_id
|
15791
|
-
# Amazon Web Services Key Management Service (KMS) customer
|
15792
|
-
#
|
15793
|
-
#
|
15794
|
-
#
|
16350
|
+
# Amazon Web Services Key Management Service (KMS) customer managed
|
16351
|
+
# key ID to use for the default encryption.
|
16352
|
+
#
|
16353
|
+
# <note markdown="1"> * **General purpose buckets** - This parameter is allowed if and
|
16354
|
+
# only if `SSEAlgorithm` is set to `aws:kms` or `aws:kms:dsse`.
|
16355
|
+
#
|
16356
|
+
# * **Directory buckets** - This parameter is allowed if and only if
|
16357
|
+
# `SSEAlgorithm` is set to `aws:kms`.
|
16358
|
+
#
|
16359
|
+
# </note>
|
15795
16360
|
#
|
15796
16361
|
# You can specify the key ID, key alias, or the Amazon Resource Name
|
15797
16362
|
# (ARN) of the KMS key.
|
@@ -15803,22 +16368,36 @@ module Aws::S3
|
|
15803
16368
|
#
|
15804
16369
|
# * Key Alias: `alias/alias-name`
|
15805
16370
|
#
|
15806
|
-
# If you use a key ID, you can run into a LogDestination undeliverable
|
15807
|
-
# error when creating a VPC flow log.
|
15808
|
-
#
|
15809
16371
|
# If you are using encryption with cross-account or Amazon Web
|
15810
|
-
# Services service operations you must use a fully qualified KMS key
|
16372
|
+
# Services service operations, you must use a fully qualified KMS key
|
15811
16373
|
# ARN. For more information, see [Using encryption for cross-account
|
15812
16374
|
# operations][1].
|
15813
16375
|
#
|
16376
|
+
# <note markdown="1"> * **General purpose buckets** - If you're specifying a customer
|
16377
|
+
# managed KMS key, we recommend using a fully qualified KMS key ARN.
|
16378
|
+
# If you use a KMS key alias instead, then KMS resolves the key
|
16379
|
+
# within the requester’s account. This behavior can result in data
|
16380
|
+
# that's encrypted with a KMS key that belongs to the requester,
|
16381
|
+
# and not the bucket owner. Also, if you use a key ID, you can run
|
16382
|
+
# into a LogDestination undeliverable error when creating a VPC flow
|
16383
|
+
# log.
|
16384
|
+
#
|
16385
|
+
# * **Directory buckets** - When you specify an [KMS customer managed
|
16386
|
+
# key][2] for encryption in your directory bucket, only use the key
|
16387
|
+
# ID or key ARN. The key alias format of the KMS key isn't
|
16388
|
+
# supported.
|
16389
|
+
#
|
16390
|
+
# </note>
|
16391
|
+
#
|
15814
16392
|
# Amazon S3 only supports symmetric encryption KMS keys. For more
|
15815
|
-
# information, see [Asymmetric keys in Amazon Web Services KMS][
|
16393
|
+
# information, see [Asymmetric keys in Amazon Web Services KMS][3] in
|
15816
16394
|
# the *Amazon Web Services Key Management Service Developer Guide*.
|
15817
16395
|
#
|
15818
16396
|
#
|
15819
16397
|
#
|
15820
16398
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy
|
15821
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
16399
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
16400
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
15822
16401
|
# @return [String]
|
15823
16402
|
#
|
15824
16403
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ServerSideEncryptionByDefault AWS API Documentation
|
@@ -15847,6 +16426,23 @@ module Aws::S3
|
|
15847
16426
|
|
15848
16427
|
# Specifies the default server-side encryption configuration.
|
15849
16428
|
#
|
16429
|
+
# <note markdown="1"> * **General purpose buckets** - If you're specifying a customer
|
16430
|
+
# managed KMS key, we recommend using a fully qualified KMS key ARN.
|
16431
|
+
# If you use a KMS key alias instead, then KMS resolves the key within
|
16432
|
+
# the requester’s account. This behavior can result in data that's
|
16433
|
+
# encrypted with a KMS key that belongs to the requester, and not the
|
16434
|
+
# bucket owner.
|
16435
|
+
#
|
16436
|
+
# * **Directory buckets** - When you specify an [KMS customer managed
|
16437
|
+
# key][1] for encryption in your directory bucket, only use the key ID
|
16438
|
+
# or key ARN. The key alias format of the KMS key isn't supported.
|
16439
|
+
#
|
16440
|
+
# </note>
|
16441
|
+
#
|
16442
|
+
#
|
16443
|
+
#
|
16444
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
16445
|
+
#
|
15850
16446
|
# @!attribute [rw] apply_server_side_encryption_by_default
|
15851
16447
|
# Specifies the default server-side encryption to apply to new objects
|
15852
16448
|
# in the bucket. If a PUT Object request doesn't specify any
|
@@ -15858,14 +16454,31 @@ module Aws::S3
|
|
15858
16454
|
# server-side encryption using KMS (SSE-KMS) for new objects in the
|
15859
16455
|
# bucket. Existing objects are not affected. Setting the
|
15860
16456
|
# `BucketKeyEnabled` element to `true` causes Amazon S3 to use an S3
|
15861
|
-
# Bucket Key.
|
16457
|
+
# Bucket Key.
|
15862
16458
|
#
|
15863
|
-
#
|
15864
|
-
#
|
16459
|
+
# <note markdown="1"> * **General purpose buckets** - By default, S3 Bucket Key is not
|
16460
|
+
# enabled. For more information, see [Amazon S3 Bucket Keys][1] in
|
16461
|
+
# the *Amazon S3 User Guide*.
|
16462
|
+
#
|
16463
|
+
# * **Directory buckets** - S3 Bucket Keys are always enabled for
|
16464
|
+
# `GET` and `PUT` operations in a directory bucket and can’t be
|
16465
|
+
# disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS
|
16466
|
+
# encrypted objects from general purpose buckets to directory
|
16467
|
+
# buckets, from directory buckets to general purpose buckets, or
|
16468
|
+
# between directory buckets, through [CopyObject][2],
|
16469
|
+
# [UploadPartCopy][3], [the Copy operation in Batch Operations][4],
|
16470
|
+
# or [the import jobs][5]. In this case, Amazon S3 makes a call to
|
16471
|
+
# KMS every time a copy request is made for a KMS-encrypted object.
|
16472
|
+
#
|
16473
|
+
# </note>
|
15865
16474
|
#
|
15866
16475
|
#
|
15867
16476
|
#
|
15868
16477
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html
|
16478
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
16479
|
+
# [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
16480
|
+
# [4]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-Batch-Ops
|
16481
|
+
# [5]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-import-job
|
15869
16482
|
# @return [Boolean]
|
15870
16483
|
#
|
15871
16484
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ServerSideEncryptionRule AWS API Documentation
|
@@ -15880,8 +16493,8 @@ module Aws::S3
|
|
15880
16493
|
# The established temporary security credentials of the session.
|
15881
16494
|
#
|
15882
16495
|
# <note markdown="1"> **Directory buckets** - These session credentials are only supported
|
15883
|
-
# for the authentication and authorization of Zonal endpoint
|
15884
|
-
# directory buckets.
|
16496
|
+
# for the authentication and authorization of Zonal endpoint API
|
16497
|
+
# operations on directory buckets.
|
15885
16498
|
#
|
15886
16499
|
# </note>
|
15887
16500
|
#
|
@@ -16315,11 +16928,6 @@ module Aws::S3
|
|
16315
16928
|
# @!attribute [rw] server_side_encryption
|
16316
16929
|
# The server-side encryption algorithm used when you store this object
|
16317
16930
|
# in Amazon S3 (for example, `AES256`, `aws:kms`).
|
16318
|
-
#
|
16319
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
16320
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
16321
|
-
#
|
16322
|
-
# </note>
|
16323
16931
|
# @return [String]
|
16324
16932
|
#
|
16325
16933
|
# @!attribute [rw] sse_customer_algorithm
|
@@ -16344,23 +16952,14 @@ module Aws::S3
|
|
16344
16952
|
# @return [String]
|
16345
16953
|
#
|
16346
16954
|
# @!attribute [rw] ssekms_key_id
|
16347
|
-
# If present, indicates the ID of the
|
16348
|
-
#
|
16349
|
-
# object.
|
16350
|
-
#
|
16351
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
16352
|
-
#
|
16353
|
-
# </note>
|
16955
|
+
# If present, indicates the ID of the KMS key that was used for object
|
16956
|
+
# encryption.
|
16354
16957
|
# @return [String]
|
16355
16958
|
#
|
16356
16959
|
# @!attribute [rw] bucket_key_enabled
|
16357
16960
|
# Indicates whether the multipart upload uses an S3 Bucket Key for
|
16358
16961
|
# server-side encryption with Key Management Service (KMS) keys
|
16359
16962
|
# (SSE-KMS).
|
16360
|
-
#
|
16361
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
16362
|
-
#
|
16363
|
-
# </note>
|
16364
16963
|
# @return [Boolean]
|
16365
16964
|
#
|
16366
16965
|
# @!attribute [rw] request_charged
|
@@ -16711,11 +17310,6 @@ module Aws::S3
|
|
16711
17310
|
# @!attribute [rw] server_side_encryption
|
16712
17311
|
# The server-side encryption algorithm used when you store this object
|
16713
17312
|
# in Amazon S3 (for example, `AES256`, `aws:kms`).
|
16714
|
-
#
|
16715
|
-
# <note markdown="1"> For directory buckets, only server-side encryption with Amazon S3
|
16716
|
-
# managed keys (SSE-S3) (`AES256`) is supported.
|
16717
|
-
#
|
16718
|
-
# </note>
|
16719
17313
|
# @return [String]
|
16720
17314
|
#
|
16721
17315
|
# @!attribute [rw] etag
|
@@ -16804,23 +17398,14 @@ module Aws::S3
|
|
16804
17398
|
# @return [String]
|
16805
17399
|
#
|
16806
17400
|
# @!attribute [rw] ssekms_key_id
|
16807
|
-
# If present, indicates the ID of the
|
16808
|
-
#
|
16809
|
-
# object.
|
16810
|
-
#
|
16811
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
16812
|
-
#
|
16813
|
-
# </note>
|
17401
|
+
# If present, indicates the ID of the KMS key that was used for object
|
17402
|
+
# encryption.
|
16814
17403
|
# @return [String]
|
16815
17404
|
#
|
16816
17405
|
# @!attribute [rw] bucket_key_enabled
|
16817
17406
|
# Indicates whether the multipart upload uses an S3 Bucket Key for
|
16818
17407
|
# server-side encryption with Key Management Service (KMS) keys
|
16819
17408
|
# (SSE-KMS).
|
16820
|
-
#
|
16821
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
16822
|
-
#
|
16823
|
-
# </note>
|
16824
17409
|
# @return [Boolean]
|
16825
17410
|
#
|
16826
17411
|
# @!attribute [rw] request_charged
|
@@ -17523,3 +18108,6 @@ module Aws::S3
|
|
17523
18108
|
|
17524
18109
|
end
|
17525
18110
|
end
|
18111
|
+
|
18112
|
+
require "aws-sdk-s3/customizations/types/list_object_versions_output"
|
18113
|
+
require "aws-sdk-s3/customizations/types/permanent_redirect"
|