aws-sdk-s3 1.156.0 → 1.158.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/access_grants_credentials_provider.rb +12 -3
- data/lib/aws-sdk-s3/bucket.rb +60 -16
- data/lib/aws-sdk-s3/client.rb +301 -170
- data/lib/aws-sdk-s3/client_api.rb +14 -1
- data/lib/aws-sdk-s3/plugins/access_grants.rb +68 -4
- data/lib/aws-sdk-s3/resource.rb +10 -8
- data/lib/aws-sdk-s3/types.rb +188 -41
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/client.rbs +5 -1
- data/sig/resource.rbs +2 -1
- data/sig/types.rbs +7 -0
- metadata +2 -2
@@ -334,6 +334,7 @@ module Aws::S3
|
|
334
334
|
ListBucketMetricsConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketMetricsConfigurationsOutput')
|
335
335
|
ListBucketMetricsConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketMetricsConfigurationsRequest')
|
336
336
|
ListBucketsOutput = Shapes::StructureShape.new(name: 'ListBucketsOutput')
|
337
|
+
ListBucketsRequest = Shapes::StructureShape.new(name: 'ListBucketsRequest')
|
337
338
|
ListDirectoryBucketsOutput = Shapes::StructureShape.new(name: 'ListDirectoryBucketsOutput')
|
338
339
|
ListDirectoryBucketsRequest = Shapes::StructureShape.new(name: 'ListDirectoryBucketsRequest')
|
339
340
|
ListMultipartUploadsOutput = Shapes::StructureShape.new(name: 'ListMultipartUploadsOutput')
|
@@ -357,6 +358,7 @@ module Aws::S3
|
|
357
358
|
MFADeleteStatus = Shapes::StringShape.new(name: 'MFADeleteStatus')
|
358
359
|
Marker = Shapes::StringShape.new(name: 'Marker')
|
359
360
|
MaxAgeSeconds = Shapes::IntegerShape.new(name: 'MaxAgeSeconds')
|
361
|
+
MaxBuckets = Shapes::IntegerShape.new(name: 'MaxBuckets')
|
360
362
|
MaxDirectoryBuckets = Shapes::IntegerShape.new(name: 'MaxDirectoryBuckets')
|
361
363
|
MaxKeys = Shapes::IntegerShape.new(name: 'MaxKeys')
|
362
364
|
MaxParts = Shapes::IntegerShape.new(name: 'MaxParts')
|
@@ -1707,8 +1709,13 @@ module Aws::S3
|
|
1707
1709
|
|
1708
1710
|
ListBucketsOutput.add_member(:buckets, Shapes::ShapeRef.new(shape: Buckets, location_name: "Buckets"))
|
1709
1711
|
ListBucketsOutput.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
|
1712
|
+
ListBucketsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "ContinuationToken"))
|
1710
1713
|
ListBucketsOutput.struct_class = Types::ListBucketsOutput
|
1711
1714
|
|
1715
|
+
ListBucketsRequest.add_member(:max_buckets, Shapes::ShapeRef.new(shape: MaxBuckets, location: "querystring", location_name: "max-buckets"))
|
1716
|
+
ListBucketsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
|
1717
|
+
ListBucketsRequest.struct_class = Types::ListBucketsRequest
|
1718
|
+
|
1712
1719
|
ListDirectoryBucketsOutput.add_member(:buckets, Shapes::ShapeRef.new(shape: Buckets, location_name: "Buckets"))
|
1713
1720
|
ListDirectoryBucketsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: DirectoryBucketToken, location_name: "ContinuationToken"))
|
1714
1721
|
ListDirectoryBucketsOutput.struct_class = Types::ListDirectoryBucketsOutput
|
@@ -3291,8 +3298,14 @@ module Aws::S3
|
|
3291
3298
|
o.name = "ListBuckets"
|
3292
3299
|
o.http_method = "GET"
|
3293
3300
|
o.http_request_uri = "/"
|
3294
|
-
o.input = Shapes::ShapeRef.new(shape:
|
3301
|
+
o.input = Shapes::ShapeRef.new(shape: ListBucketsRequest)
|
3295
3302
|
o.output = Shapes::ShapeRef.new(shape: ListBucketsOutput)
|
3303
|
+
o[:pager] = Aws::Pager.new(
|
3304
|
+
limit_key: "max_buckets",
|
3305
|
+
tokens: {
|
3306
|
+
"continuation_token" => "continuation_token"
|
3307
|
+
}
|
3308
|
+
)
|
3296
3309
|
end)
|
3297
3310
|
|
3298
3311
|
api.add_operation(:list_directory_buckets, Seahorse::Model::Operation.new.tap do |o|
|
@@ -44,25 +44,47 @@ setting, caching, and fallback behavior.
|
|
44
44
|
list_objects_v2: 'READ',
|
45
45
|
list_object_versions: 'READ',
|
46
46
|
list_parts: 'READ',
|
47
|
+
head_bucket: 'READ',
|
48
|
+
get_object_attributes: 'READ',
|
47
49
|
put_object: 'WRITE',
|
48
50
|
put_object_acl: 'WRITE',
|
49
51
|
delete_object: 'WRITE',
|
50
52
|
abort_multipart_upload: 'WRITE',
|
51
53
|
create_multipart_upload: 'WRITE',
|
52
54
|
upload_part: 'WRITE',
|
53
|
-
complete_multipart_upload: 'WRITE'
|
55
|
+
complete_multipart_upload: 'WRITE',
|
56
|
+
delete_objects: 'WRITE',
|
57
|
+
copy_object: 'READWRITE'
|
54
58
|
}.freeze
|
55
59
|
|
56
60
|
def call(context)
|
61
|
+
provider = context.config.access_grants_credentials_provider
|
62
|
+
|
57
63
|
if access_grants_operation?(context) &&
|
58
|
-
!s3_express_endpoint?(context)
|
64
|
+
!s3_express_endpoint?(context) &&
|
65
|
+
!credentials_head_bucket_call?(provider)
|
59
66
|
params = context[:endpoint_params]
|
60
67
|
permission = PERMISSION_MAP[context.operation_name]
|
61
68
|
|
62
|
-
|
69
|
+
key =
|
70
|
+
case context.operation_name
|
71
|
+
when :delete_objects
|
72
|
+
delete_params = context.params[:delete]
|
73
|
+
common_prefixes(delete_params[:objects].map { |o| o[:key] })
|
74
|
+
when :copy_object
|
75
|
+
source_bucket, source_key = params[:copy_source].split('/', 2)
|
76
|
+
if params[:bucket] != source_bucket
|
77
|
+
raise ArgumentError,
|
78
|
+
'source and destination bucket must be the same'
|
79
|
+
end
|
80
|
+
common_prefixes([params[:key], source_key])
|
81
|
+
else
|
82
|
+
params[:key]
|
83
|
+
end
|
84
|
+
|
63
85
|
credentials = provider.access_grants_credentials_for(
|
64
86
|
bucket: params[:bucket],
|
65
|
-
key:
|
87
|
+
key: key,
|
66
88
|
prefix: params[:prefix],
|
67
89
|
permission: permission
|
68
90
|
)
|
@@ -80,6 +102,12 @@ setting, caching, and fallback behavior.
|
|
80
102
|
Aws::Plugins::UserAgent.metric('S3_ACCESS_GRANTS', &block)
|
81
103
|
end
|
82
104
|
|
105
|
+
# HeadBucket is a supported call. When fetching credentials,
|
106
|
+
# this plugin is executed again, and becomes recursive.
|
107
|
+
def credentials_head_bucket_call?(provider)
|
108
|
+
provider.instance_variable_get(:@head_bucket_call)
|
109
|
+
end
|
110
|
+
|
83
111
|
def access_grants_operation?(context)
|
84
112
|
params = context[:endpoint_params]
|
85
113
|
params[:bucket] && PERMISSION_MAP[context.operation_name]
|
@@ -88,6 +116,42 @@ setting, caching, and fallback behavior.
|
|
88
116
|
def s3_express_endpoint?(context)
|
89
117
|
context[:endpoint_properties]['backend'] == 'S3Express'
|
90
118
|
end
|
119
|
+
|
120
|
+
# Return the common prefix of the keys, regardless of the delimiter.
|
121
|
+
# For example, given keys ['foo/bar', 'foo/baz'], the common prefix
|
122
|
+
# is 'foo/ba'.
|
123
|
+
def common_prefixes(keys)
|
124
|
+
return '' if keys.empty?
|
125
|
+
|
126
|
+
first_key = keys[0]
|
127
|
+
common_ancestor = first_key
|
128
|
+
last_prefix = ''
|
129
|
+
keys.each do |k|
|
130
|
+
until common_ancestor.empty?
|
131
|
+
break if k.start_with?(common_ancestor)
|
132
|
+
|
133
|
+
last_index = common_ancestor.rindex('/')
|
134
|
+
return '' if last_index.nil?
|
135
|
+
|
136
|
+
last_prefix = common_ancestor[(last_index + 1)..-1]
|
137
|
+
common_ancestor = common_ancestor[0...last_index]
|
138
|
+
end
|
139
|
+
end
|
140
|
+
new_common_ancestor = "#{common_ancestor}/#{last_prefix}"
|
141
|
+
keys.each do |k|
|
142
|
+
until last_prefix.empty?
|
143
|
+
break if k.start_with?(new_common_ancestor)
|
144
|
+
|
145
|
+
last_prefix = last_prefix[0...-1]
|
146
|
+
new_common_ancestor = "#{common_ancestor}/#{last_prefix}"
|
147
|
+
end
|
148
|
+
end
|
149
|
+
if new_common_ancestor == "#{first_key}/"
|
150
|
+
first_key
|
151
|
+
else
|
152
|
+
new_common_ancestor
|
153
|
+
end
|
154
|
+
end
|
91
155
|
end
|
92
156
|
|
93
157
|
def add_handlers(handlers, config)
|
data/lib/aws-sdk-s3/resource.rb
CHANGED
@@ -193,18 +193,20 @@ module Aws::S3
|
|
193
193
|
# @return [Bucket::Collection]
|
194
194
|
def buckets(options = {})
|
195
195
|
batches = Enumerator.new do |y|
|
196
|
-
batch = []
|
197
196
|
resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
|
198
197
|
@client.list_buckets(options)
|
199
198
|
end
|
200
|
-
resp.
|
201
|
-
batch
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
199
|
+
resp.each_page do |page|
|
200
|
+
batch = []
|
201
|
+
page.data.buckets.each do |b|
|
202
|
+
batch << Bucket.new(
|
203
|
+
name: b.name,
|
204
|
+
data: b,
|
205
|
+
client: @client
|
206
|
+
)
|
207
|
+
end
|
208
|
+
y.yield(batch)
|
206
209
|
end
|
207
|
-
y.yield(batch)
|
208
210
|
end
|
209
211
|
Bucket::Collection.new(batches)
|
210
212
|
end
|
data/lib/aws-sdk-s3/types.rb
CHANGED
@@ -3333,8 +3333,9 @@ module Aws::S3
|
|
3333
3333
|
include Aws::Structure
|
3334
3334
|
end
|
3335
3335
|
|
3336
|
-
# The container element for specifying the default Object
|
3337
|
-
# settings for new objects placed in the specified
|
3336
|
+
# The container element for optionally specifying the default Object
|
3337
|
+
# Lock retention settings for new objects placed in the specified
|
3338
|
+
# bucket.
|
3338
3339
|
#
|
3339
3340
|
# <note markdown="1"> * The `DefaultRetention` settings require both a mode and a period.
|
3340
3341
|
#
|
@@ -4390,6 +4391,14 @@ module Aws::S3
|
|
4390
4391
|
# Specifies encryption-related information for an Amazon S3 bucket that
|
4391
4392
|
# is a destination for replicated objects.
|
4392
4393
|
#
|
4394
|
+
# <note markdown="1"> If you're specifying a customer managed KMS key, we recommend using a
|
4395
|
+
# fully qualified KMS key ARN. If you use a KMS key alias instead, then
|
4396
|
+
# KMS resolves the key within the requester’s account. This behavior can
|
4397
|
+
# result in data that's encrypted with a KMS key that belongs to the
|
4398
|
+
# requester, and not the bucket owner.
|
4399
|
+
#
|
4400
|
+
# </note>
|
4401
|
+
#
|
4393
4402
|
# @!attribute [rw] replica_kms_key_id
|
4394
4403
|
# Specifies the ID (Key ARN or Alias ARN) of the customer managed
|
4395
4404
|
# Amazon Web Services KMS key stored in Amazon Web Services Key
|
@@ -7802,17 +7811,13 @@ module Aws::S3
|
|
7802
7811
|
#
|
7803
7812
|
# @!attribute [rw] bucket_region
|
7804
7813
|
# The Region that the bucket is located.
|
7805
|
-
#
|
7806
|
-
# <note markdown="1"> This functionality is not supported for directory buckets.
|
7807
|
-
#
|
7808
|
-
# </note>
|
7809
7814
|
# @return [String]
|
7810
7815
|
#
|
7811
7816
|
# @!attribute [rw] access_point_alias
|
7812
7817
|
# Indicates whether the bucket name used in the request is an access
|
7813
7818
|
# point alias.
|
7814
7819
|
#
|
7815
|
-
# <note markdown="1">
|
7820
|
+
# <note markdown="1"> For directory buckets, the value of this field is `false`.
|
7816
7821
|
#
|
7817
7822
|
# </note>
|
7818
7823
|
# @return [Boolean]
|
@@ -9526,11 +9531,45 @@ module Aws::S3
|
|
9526
9531
|
# The owner of the buckets listed.
|
9527
9532
|
# @return [Types::Owner]
|
9528
9533
|
#
|
9534
|
+
# @!attribute [rw] continuation_token
|
9535
|
+
# `ContinuationToken` is included in the response when there are more
|
9536
|
+
# buckets that can be listed with pagination. The next `ListBuckets`
|
9537
|
+
# request to Amazon S3 can be continued with this `ContinuationToken`.
|
9538
|
+
# `ContinuationToken` is obfuscated and is not a real bucket.
|
9539
|
+
# @return [String]
|
9540
|
+
#
|
9529
9541
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketsOutput AWS API Documentation
|
9530
9542
|
#
|
9531
9543
|
class ListBucketsOutput < Struct.new(
|
9532
9544
|
:buckets,
|
9533
|
-
:owner
|
9545
|
+
:owner,
|
9546
|
+
:continuation_token)
|
9547
|
+
SENSITIVE = []
|
9548
|
+
include Aws::Structure
|
9549
|
+
end
|
9550
|
+
|
9551
|
+
# @!attribute [rw] max_buckets
|
9552
|
+
# Maximum number of buckets to be returned in response. When the
|
9553
|
+
# number is more than the count of buckets that are owned by an Amazon
|
9554
|
+
# Web Services account, return all the buckets in response.
|
9555
|
+
# @return [Integer]
|
9556
|
+
#
|
9557
|
+
# @!attribute [rw] continuation_token
|
9558
|
+
# `ContinuationToken` indicates to Amazon S3 that the list is being
|
9559
|
+
# continued on this bucket with a token. `ContinuationToken` is
|
9560
|
+
# obfuscated and is not a real key. You can use this
|
9561
|
+
# `ContinuationToken` for pagination of the list results.
|
9562
|
+
#
|
9563
|
+
# Length Constraints: Minimum length of 0. Maximum length of 1024.
|
9564
|
+
#
|
9565
|
+
# Required: No.
|
9566
|
+
# @return [String]
|
9567
|
+
#
|
9568
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketsRequest AWS API Documentation
|
9569
|
+
#
|
9570
|
+
class ListBucketsRequest < Struct.new(
|
9571
|
+
:max_buckets,
|
9572
|
+
:continuation_token)
|
9534
9573
|
SENSITIVE = []
|
9535
9574
|
include Aws::Structure
|
9536
9575
|
end
|
@@ -9556,9 +9595,10 @@ module Aws::S3
|
|
9556
9595
|
|
9557
9596
|
# @!attribute [rw] continuation_token
|
9558
9597
|
# `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
|
9598
|
+
# continued on buckets in this account with a token.
|
9599
|
+
# `ContinuationToken` is obfuscated and is not a real bucket name. You
|
9600
|
+
# can use this `ContinuationToken` for the pagination of the list
|
9601
|
+
# results.
|
9562
9602
|
# @return [String]
|
9563
9603
|
#
|
9564
9604
|
# @!attribute [rw] max_directory_buckets
|
@@ -9768,12 +9808,26 @@ module Aws::S3
|
|
9768
9808
|
# @return [String]
|
9769
9809
|
#
|
9770
9810
|
# @!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
|
9811
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
9812
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
9813
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
9814
|
+
# parse certain characters, such as characters with an ASCII value
|
9815
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
9816
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
9817
|
+
# the response. For more information about characters to avoid in
|
9818
|
+
# object key names, see [Object key naming guidelines][2].
|
9819
|
+
#
|
9820
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
9821
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
9822
|
+
# code values. For example, the object `test_file(3).png` will appear
|
9823
|
+
# as `test_file%283%29.png`.
|
9824
|
+
#
|
9825
|
+
# </note>
|
9826
|
+
#
|
9827
|
+
#
|
9828
|
+
#
|
9829
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
9830
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
9777
9831
|
# @return [String]
|
9778
9832
|
#
|
9779
9833
|
# @!attribute [rw] key_marker
|
@@ -9998,12 +10052,26 @@ module Aws::S3
|
|
9998
10052
|
# @return [String]
|
9999
10053
|
#
|
10000
10054
|
# @!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
|
10055
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10056
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10057
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10058
|
+
# parse certain characters, such as characters with an ASCII value
|
10059
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10060
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10061
|
+
# the response. For more information about characters to avoid in
|
10062
|
+
# object key names, see [Object key naming guidelines][2].
|
10063
|
+
#
|
10064
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10065
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10066
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10067
|
+
# as `test_file%283%29.png`.
|
10068
|
+
#
|
10069
|
+
# </note>
|
10070
|
+
#
|
10071
|
+
#
|
10072
|
+
#
|
10073
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10074
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10007
10075
|
# @return [String]
|
10008
10076
|
#
|
10009
10077
|
# @!attribute [rw] key_marker
|
@@ -10150,10 +10218,26 @@ module Aws::S3
|
|
10150
10218
|
# @return [Array<Types::CommonPrefix>]
|
10151
10219
|
#
|
10152
10220
|
# @!attribute [rw] encoding_type
|
10153
|
-
# Encoding type used by Amazon S3 to encode object keys in
|
10154
|
-
# response.
|
10155
|
-
#
|
10156
|
-
#
|
10221
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10222
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10223
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10224
|
+
# parse certain characters, such as characters with an ASCII value
|
10225
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10226
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10227
|
+
# the response. For more information about characters to avoid in
|
10228
|
+
# object key names, see [Object key naming guidelines][2].
|
10229
|
+
#
|
10230
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10231
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10232
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10233
|
+
# as `test_file%283%29.png`.
|
10234
|
+
#
|
10235
|
+
# </note>
|
10236
|
+
#
|
10237
|
+
#
|
10238
|
+
#
|
10239
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10240
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10157
10241
|
# @return [String]
|
10158
10242
|
#
|
10159
10243
|
# @!attribute [rw] request_charged
|
@@ -10233,12 +10317,26 @@ module Aws::S3
|
|
10233
10317
|
# @return [String]
|
10234
10318
|
#
|
10235
10319
|
# @!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
|
10320
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10321
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10322
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10323
|
+
# parse certain characters, such as characters with an ASCII value
|
10324
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10325
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10326
|
+
# the response. For more information about characters to avoid in
|
10327
|
+
# object key names, see [Object key naming guidelines][2].
|
10328
|
+
#
|
10329
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10330
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10331
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10332
|
+
# as `test_file%283%29.png`.
|
10333
|
+
#
|
10334
|
+
# </note>
|
10335
|
+
#
|
10336
|
+
#
|
10337
|
+
#
|
10338
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10339
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10242
10340
|
# @return [String]
|
10243
10341
|
#
|
10244
10342
|
# @!attribute [rw] marker
|
@@ -10506,10 +10604,26 @@ module Aws::S3
|
|
10506
10604
|
# @return [String]
|
10507
10605
|
#
|
10508
10606
|
# @!attribute [rw] encoding_type
|
10509
|
-
# Encoding type used by Amazon S3 to encode object keys in
|
10510
|
-
# response.
|
10511
|
-
#
|
10512
|
-
#
|
10607
|
+
# Encoding type used by Amazon S3 to encode the [object keys][1] in
|
10608
|
+
# the response. Responses are encoded only in UTF-8. An object key can
|
10609
|
+
# contain any Unicode character. However, the XML 1.0 parser can't
|
10610
|
+
# parse certain characters, such as characters with an ASCII value
|
10611
|
+
# from 0 to 10. For characters that aren't supported in XML 1.0, you
|
10612
|
+
# can add this parameter to request that Amazon S3 encode the keys in
|
10613
|
+
# the response. For more information about characters to avoid in
|
10614
|
+
# object key names, see [Object key naming guidelines][2].
|
10615
|
+
#
|
10616
|
+
# <note markdown="1"> When using the URL encoding type, non-ASCII characters that are used
|
10617
|
+
# in an object's key name will be percent-encoded according to UTF-8
|
10618
|
+
# code values. For example, the object `test_file(3).png` will appear
|
10619
|
+
# as `test_file%283%29.png`.
|
10620
|
+
#
|
10621
|
+
# </note>
|
10622
|
+
#
|
10623
|
+
#
|
10624
|
+
#
|
10625
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
|
10626
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines
|
10513
10627
|
# @return [String]
|
10514
10628
|
#
|
10515
10629
|
# @!attribute [rw] max_keys
|
@@ -11963,7 +12077,15 @@ module Aws::S3
|
|
11963
12077
|
#
|
11964
12078
|
# @!attribute [rw] partition_date_source
|
11965
12079
|
# Specifies the partition date source for the partitioned prefix.
|
11966
|
-
# PartitionDateSource can be EventTime or DeliveryTime
|
12080
|
+
# `PartitionDateSource` can be `EventTime` or `DeliveryTime`.
|
12081
|
+
#
|
12082
|
+
# For `DeliveryTime`, the time in the log file names corresponds to
|
12083
|
+
# the delivery time for the log files.
|
12084
|
+
#
|
12085
|
+
# For `EventTime`, The logs delivered are for a specific day only. The
|
12086
|
+
# year, month, and day correspond to the day on which the event
|
12087
|
+
# occurred, and the hour, minutes and seconds are set to 00 in the
|
12088
|
+
# key.
|
11967
12089
|
# @return [String]
|
11968
12090
|
#
|
11969
12091
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PartitionedPrefix AWS API Documentation
|
@@ -12076,8 +12198,9 @@ module Aws::S3
|
|
12076
12198
|
# @!attribute [rw] restrict_public_buckets
|
12077
12199
|
# Specifies whether Amazon S3 should restrict public bucket policies
|
12078
12200
|
# 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
|
12201
|
+
# this bucket to only Amazon Web Servicesservice principals and
|
12202
|
+
# authorized users within this account if the bucket has a public
|
12203
|
+
# policy.
|
12081
12204
|
#
|
12082
12205
|
# Enabling this setting doesn't affect previously stored bucket
|
12083
12206
|
# policies, except that public and cross-account access within any
|
@@ -14730,7 +14853,15 @@ module Aws::S3
|
|
14730
14853
|
# The container for the records event.
|
14731
14854
|
#
|
14732
14855
|
# @!attribute [rw] payload
|
14733
|
-
# The byte array of partial, one or more result records.
|
14856
|
+
# The byte array of partial, one or more result records. S3 Select
|
14857
|
+
# doesn't guarantee that a record will be self-contained in one
|
14858
|
+
# record frame. To ensure continuous streaming of data, S3 Select
|
14859
|
+
# might split the same record across multiple record frames instead of
|
14860
|
+
# aggregating the results in memory. Some S3 clients (for example, the
|
14861
|
+
# SDK for Java) handle this behavior by creating a `ByteStream` out of
|
14862
|
+
# the response by default. Other clients might not handle this
|
14863
|
+
# behavior by default. In those cases, you must aggregate the results
|
14864
|
+
# on the client side and parse the response.
|
14734
14865
|
# @return [String]
|
14735
14866
|
#
|
14736
14867
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RecordsEvent AWS API Documentation
|
@@ -15779,6 +15910,14 @@ module Aws::S3
|
|
15779
15910
|
# SSE-KMS. For more information, see [PUT Bucket encryption][1] in the
|
15780
15911
|
# *Amazon S3 API Reference*.
|
15781
15912
|
#
|
15913
|
+
# <note markdown="1"> If you're specifying a customer managed KMS key, we recommend using a
|
15914
|
+
# fully qualified KMS key ARN. If you use a KMS key alias instead, then
|
15915
|
+
# KMS resolves the key within the requester’s account. This behavior can
|
15916
|
+
# result in data that's encrypted with a KMS key that belongs to the
|
15917
|
+
# requester, and not the bucket owner.
|
15918
|
+
#
|
15919
|
+
# </note>
|
15920
|
+
#
|
15782
15921
|
#
|
15783
15922
|
#
|
15784
15923
|
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html
|
@@ -15847,6 +15986,14 @@ module Aws::S3
|
|
15847
15986
|
|
15848
15987
|
# Specifies the default server-side encryption configuration.
|
15849
15988
|
#
|
15989
|
+
# <note markdown="1"> If you're specifying a customer managed KMS key, we recommend using a
|
15990
|
+
# fully qualified KMS key ARN. If you use a KMS key alias instead, then
|
15991
|
+
# KMS resolves the key within the requester’s account. This behavior can
|
15992
|
+
# result in data that's encrypted with a KMS key that belongs to the
|
15993
|
+
# requester, and not the bucket owner.
|
15994
|
+
#
|
15995
|
+
# </note>
|
15996
|
+
#
|
15850
15997
|
# @!attribute [rw] apply_server_side_encryption_by_default
|
15851
15998
|
# Specifies the default server-side encryption to apply to new objects
|
15852
15999
|
# in the bucket. If a PUT Object request doesn't specify any
|
data/lib/aws-sdk-s3.rb
CHANGED
data/sig/client.rbs
CHANGED
@@ -1044,9 +1044,13 @@ module Aws
|
|
1044
1044
|
include ::Seahorse::Client::_ResponseSuccess[Types::ListBucketsOutput]
|
1045
1045
|
def buckets: () -> ::Array[Types::Bucket]
|
1046
1046
|
def owner: () -> Types::Owner
|
1047
|
+
def continuation_token: () -> ::String
|
1047
1048
|
end
|
1048
1049
|
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Client.html#list_buckets-instance_method
|
1049
|
-
def list_buckets: (
|
1050
|
+
def list_buckets: (
|
1051
|
+
?max_buckets: ::Integer,
|
1052
|
+
?continuation_token: ::String
|
1053
|
+
) -> _ListBucketsResponseSuccess
|
1050
1054
|
| (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListBucketsResponseSuccess
|
1051
1055
|
|
1052
1056
|
interface _ListDirectoryBucketsResponseSuccess
|
data/sig/resource.rbs
CHANGED
@@ -120,7 +120,8 @@ module Aws
|
|
120
120
|
def bucket: (String name) -> Bucket
|
121
121
|
|
122
122
|
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Resource.html#buckets-instance_method
|
123
|
-
def buckets: (
|
123
|
+
def buckets: (
|
124
|
+
) -> Bucket::Collection
|
124
125
|
| (?Hash[Symbol, untyped]) -> Bucket::Collection
|
125
126
|
end
|
126
127
|
end
|
data/sig/types.rbs
CHANGED
@@ -1358,6 +1358,13 @@ module Aws::S3
|
|
1358
1358
|
class ListBucketsOutput
|
1359
1359
|
attr_accessor buckets: ::Array[Types::Bucket]
|
1360
1360
|
attr_accessor owner: Types::Owner
|
1361
|
+
attr_accessor continuation_token: ::String
|
1362
|
+
SENSITIVE: []
|
1363
|
+
end
|
1364
|
+
|
1365
|
+
class ListBucketsRequest
|
1366
|
+
attr_accessor max_buckets: ::Integer
|
1367
|
+
attr_accessor continuation_token: ::String
|
1361
1368
|
SENSITIVE: []
|
1362
1369
|
end
|
1363
1370
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-s3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.158.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-08-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-kms
|