aws-sdk-s3control 1.25.0 → 1.30.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 +172 -0
- data/LICENSE.txt +202 -0
- data/VERSION +1 -0
- data/lib/aws-sdk-s3control.rb +2 -2
- data/lib/aws-sdk-s3control/arn/outpost_access_point_arn.rb +6 -2
- data/lib/aws-sdk-s3control/arn/outpost_bucket_arn.rb +6 -2
- data/lib/aws-sdk-s3control/client.rb +162 -151
- data/lib/aws-sdk-s3control/client_api.rb +6 -2
- data/lib/aws-sdk-s3control/errors.rb +1 -1
- data/lib/aws-sdk-s3control/plugins/arn.rb +28 -16
- data/lib/aws-sdk-s3control/plugins/dualstack.rb +11 -10
- data/lib/aws-sdk-s3control/plugins/s3_control_signer.rb +6 -2
- data/lib/aws-sdk-s3control/resource.rb +1 -1
- data/lib/aws-sdk-s3control/types.rb +111 -48
- metadata +8 -5
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -197,6 +197,7 @@ module Aws::S3Control
|
|
197
197
|
S3CannedAccessControlList = Shapes::StringShape.new(name: 'S3CannedAccessControlList')
|
198
198
|
S3ContentLength = Shapes::IntegerShape.new(name: 'S3ContentLength')
|
199
199
|
S3CopyObjectOperation = Shapes::StructureShape.new(name: 'S3CopyObjectOperation')
|
200
|
+
S3DeleteObjectTaggingOperation = Shapes::StructureShape.new(name: 'S3DeleteObjectTaggingOperation')
|
200
201
|
S3ExpirationInDays = Shapes::IntegerShape.new(name: 'S3ExpirationInDays')
|
201
202
|
S3GlacierJobTier = Shapes::StringShape.new(name: 'S3GlacierJobTier')
|
202
203
|
S3Grant = Shapes::StructureShape.new(name: 'S3Grant')
|
@@ -550,6 +551,7 @@ module Aws::S3Control
|
|
550
551
|
JobOperation.add_member(:s3_put_object_copy, Shapes::ShapeRef.new(shape: S3CopyObjectOperation, location_name: "S3PutObjectCopy", metadata: {"box"=>true}))
|
551
552
|
JobOperation.add_member(:s3_put_object_acl, Shapes::ShapeRef.new(shape: S3SetObjectAclOperation, location_name: "S3PutObjectAcl", metadata: {"box"=>true}))
|
552
553
|
JobOperation.add_member(:s3_put_object_tagging, Shapes::ShapeRef.new(shape: S3SetObjectTaggingOperation, location_name: "S3PutObjectTagging", metadata: {"box"=>true}))
|
554
|
+
JobOperation.add_member(:s3_delete_object_tagging, Shapes::ShapeRef.new(shape: S3DeleteObjectTaggingOperation, location_name: "S3DeleteObjectTagging", metadata: {"box"=>true}))
|
553
555
|
JobOperation.add_member(:s3_initiate_restore_object, Shapes::ShapeRef.new(shape: S3InitiateRestoreObjectOperation, location_name: "S3InitiateRestoreObject", metadata: {"box"=>true}))
|
554
556
|
JobOperation.add_member(:s3_put_object_legal_hold, Shapes::ShapeRef.new(shape: S3SetObjectLegalHoldOperation, location_name: "S3PutObjectLegalHold", metadata: {"box"=>true}))
|
555
557
|
JobOperation.add_member(:s3_put_object_retention, Shapes::ShapeRef.new(shape: S3SetObjectRetentionOperation, location_name: "S3PutObjectRetention", metadata: {"box"=>true}))
|
@@ -775,6 +777,8 @@ module Aws::S3Control
|
|
775
777
|
S3CopyObjectOperation.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "ObjectLockRetainUntilDate"))
|
776
778
|
S3CopyObjectOperation.struct_class = Types::S3CopyObjectOperation
|
777
779
|
|
780
|
+
S3DeleteObjectTaggingOperation.struct_class = Types::S3DeleteObjectTaggingOperation
|
781
|
+
|
778
782
|
S3Grant.add_member(:grantee, Shapes::ShapeRef.new(shape: S3Grantee, location_name: "Grantee"))
|
779
783
|
S3Grant.add_member(:permission, Shapes::ShapeRef.new(shape: S3Permission, location_name: "Permission"))
|
780
784
|
S3Grant.struct_class = Types::S3Grant
|
@@ -786,7 +790,7 @@ module Aws::S3Control
|
|
786
790
|
S3Grantee.add_member(:display_name, Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String, location_name: "DisplayName"))
|
787
791
|
S3Grantee.struct_class = Types::S3Grantee
|
788
792
|
|
789
|
-
S3InitiateRestoreObjectOperation.add_member(:expiration_in_days, Shapes::ShapeRef.new(shape: S3ExpirationInDays, location_name: "ExpirationInDays"))
|
793
|
+
S3InitiateRestoreObjectOperation.add_member(:expiration_in_days, Shapes::ShapeRef.new(shape: S3ExpirationInDays, location_name: "ExpirationInDays", metadata: {"box"=>true}))
|
790
794
|
S3InitiateRestoreObjectOperation.add_member(:glacier_job_tier, Shapes::ShapeRef.new(shape: S3GlacierJobTier, location_name: "GlacierJobTier"))
|
791
795
|
S3InitiateRestoreObjectOperation.struct_class = Types::S3InitiateRestoreObjectOperation
|
792
796
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -31,6 +31,7 @@ client's region instead.
|
|
31
31
|
handlers.add(UrlHandler)
|
32
32
|
end
|
33
33
|
|
34
|
+
# After extracting out any ARN input, resolve a new URL with it.
|
34
35
|
class UrlHandler < Seahorse::Client::Handler
|
35
36
|
def call(context)
|
36
37
|
if context.metadata[:s3_arn]
|
@@ -38,13 +39,18 @@ client's region instead.
|
|
38
39
|
context.http_request.endpoint,
|
39
40
|
context.metadata[:s3_arn][:arn],
|
40
41
|
context.metadata[:s3_arn][:resolved_region],
|
41
|
-
context.metadata[:s3_arn][:dualstack]
|
42
|
+
context.metadata[:s3_arn][:dualstack],
|
43
|
+
# if regional_endpoint is false, a custom endpoint was provided
|
44
|
+
# in this case, we want to prefix the endpoint using the ARN
|
45
|
+
!context.config.regional_endpoint
|
42
46
|
)
|
43
47
|
end
|
44
48
|
@handler.call(context)
|
45
49
|
end
|
46
50
|
end
|
47
51
|
|
52
|
+
# This plugin will extract out any ARN input and set context for other
|
53
|
+
# plugins to use without having to translate the ARN again.
|
48
54
|
class ARNHandler < Seahorse::Client::Handler
|
49
55
|
def call(context)
|
50
56
|
arn_member = _arn_member(context.operation.input.shape)
|
@@ -54,6 +60,7 @@ client's region instead.
|
|
54
60
|
context.config.region,
|
55
61
|
context.config.s3_use_arn_region
|
56
62
|
)
|
63
|
+
validate_outpost_dualstack!(context)
|
57
64
|
if arn
|
58
65
|
validate_config!(context, arn)
|
59
66
|
|
@@ -68,7 +75,6 @@ client's region instead.
|
|
68
75
|
# depending on the ARN's resource type, put the resource value
|
69
76
|
# back onto params
|
70
77
|
context.params[arn_member] = arn.input_member
|
71
|
-
|
72
78
|
context.metadata[:s3_arn] = {
|
73
79
|
arn: arn,
|
74
80
|
resolved_region: resolved_region,
|
@@ -81,6 +87,17 @@ client's region instead.
|
|
81
87
|
|
82
88
|
private
|
83
89
|
|
90
|
+
# this validation has nothing to do with ARNs (can't be in
|
91
|
+
# validate_config!) outposts does not support dualstack, so operations
|
92
|
+
# using an outpost id should be validated too.
|
93
|
+
def validate_outpost_dualstack!(context)
|
94
|
+
if context.params[:outpost_id] && context[:use_dualstack_endpoint]
|
95
|
+
raise ArgumentError,
|
96
|
+
'Cannot provide an Outpost ID when '\
|
97
|
+
'`:use_dualstack_endpoint` is set to true.'
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
84
101
|
# This looks for BucketName or AccessPointName, but prefers BucketName
|
85
102
|
# for CreateAccessPoint because it contains both but should not have
|
86
103
|
# an Access Point ARN as AccessPointName.
|
@@ -102,16 +119,10 @@ client's region instead.
|
|
102
119
|
end
|
103
120
|
|
104
121
|
def validate_config!(context, arn)
|
105
|
-
unless context.config.regional_endpoint
|
106
|
-
raise ArgumentError,
|
107
|
-
'Cannot provide both an Access Point ARN and setting '\
|
108
|
-
':endpoint.'
|
109
|
-
end
|
110
|
-
|
111
122
|
if !arn.support_dualstack? && context[:use_dualstack_endpoint]
|
112
123
|
raise ArgumentError,
|
113
|
-
'Cannot provide
|
114
|
-
'
|
124
|
+
'Cannot provide an Outpost Access Point ARN when '\
|
125
|
+
'`:use_dualstack_endpoint` is set to true.'
|
115
126
|
end
|
116
127
|
end
|
117
128
|
|
@@ -154,8 +165,9 @@ client's region instead.
|
|
154
165
|
end
|
155
166
|
|
156
167
|
# @api private
|
157
|
-
def resolve_url!(url, arn, region, dualstack = false)
|
158
|
-
url.host
|
168
|
+
def resolve_url!(url, arn, region, dualstack = false, has_custom_endpoint = false)
|
169
|
+
custom_endpoint = url.host if has_custom_endpoint
|
170
|
+
url.host = arn.host_url(region, dualstack, custom_endpoint)
|
159
171
|
url
|
160
172
|
end
|
161
173
|
|
@@ -169,9 +181,9 @@ client's region instead.
|
|
169
181
|
# Raise if provided value is not true or false
|
170
182
|
if value.nil?
|
171
183
|
raise ArgumentError,
|
172
|
-
'Must provide either `true` or `false` for '\
|
173
|
-
's3_use_arn_region profile option or for '\
|
174
|
-
"ENV['AWS_S3_USE_ARN_REGION']"
|
184
|
+
'Must provide either `true` or `false` for the '\
|
185
|
+
'`s3_use_arn_region` profile option or for '\
|
186
|
+
"ENV['AWS_S3_USE_ARN_REGION']."
|
175
187
|
end
|
176
188
|
value
|
177
189
|
end
|
@@ -191,7 +203,7 @@ client's region instead.
|
|
191
203
|
if !fips && !use_arn_region && region.include?('fips')
|
192
204
|
raise ArgumentError,
|
193
205
|
'FIPS client regions are not supported for this type of '\
|
194
|
-
'ARN without s3_use_arn_region
|
206
|
+
'ARN without `:s3_use_arn_region`.'
|
195
207
|
end
|
196
208
|
|
197
209
|
# if it's a fips region, attempt to normalize it
|
@@ -16,16 +16,22 @@ for all operations.
|
|
16
16
|
|
17
17
|
def add_handlers(handlers, config)
|
18
18
|
handlers.add(OptionHandler, step: :initialize)
|
19
|
-
handlers.add(DualstackHandler, step: :build, priority:
|
19
|
+
handlers.add(DualstackHandler, step: :build, priority: 11)
|
20
20
|
end
|
21
21
|
|
22
22
|
# @api private
|
23
23
|
class OptionHandler < Seahorse::Client::Handler
|
24
24
|
def call(context)
|
25
|
+
# Support client configuration and per-operation configuration
|
25
26
|
if context.params.is_a?(Hash)
|
26
27
|
dualstack = context.params.delete(:use_dualstack_endpoint)
|
27
28
|
end
|
28
29
|
dualstack = context.config.use_dualstack_endpoint if dualstack.nil?
|
30
|
+
# Raise if :endpoint and dualstack are both provided
|
31
|
+
if dualstack && !context.config.regional_endpoint
|
32
|
+
raise ArgumentError,
|
33
|
+
'Cannot use both :use_dualstack_endpoint and :endpoint'
|
34
|
+
end
|
29
35
|
context[:use_dualstack_endpoint] = dualstack
|
30
36
|
@handler.call(context)
|
31
37
|
end
|
@@ -34,17 +40,16 @@ for all operations.
|
|
34
40
|
# @api private
|
35
41
|
class DualstackHandler < Seahorse::Client::Handler
|
36
42
|
def call(context)
|
37
|
-
|
43
|
+
if context.config.regional_endpoint && context[:use_dualstack_endpoint]
|
44
|
+
apply_dualstack_endpoint(context)
|
45
|
+
end
|
38
46
|
@handler.call(context)
|
39
47
|
end
|
40
48
|
|
41
49
|
private
|
42
50
|
def apply_dualstack_endpoint(context)
|
43
|
-
bucket_name = context.params[:bucket]
|
44
51
|
region = context.config.region
|
45
|
-
dns_suffix = Aws::Partitions::EndpointProvider.dns_suffix_for(
|
46
|
-
region
|
47
|
-
)
|
52
|
+
dns_suffix = Aws::Partitions::EndpointProvider.dns_suffix_for(region)
|
48
53
|
host = "s3-control.dualstack.#{region}.#{dns_suffix}"
|
49
54
|
endpoint = URI.parse(context.http_request.endpoint.to_s)
|
50
55
|
endpoint.scheme = context.http_request.endpoint.scheme
|
@@ -52,10 +57,6 @@ for all operations.
|
|
52
57
|
endpoint.host = host
|
53
58
|
context.http_request.endpoint = endpoint.to_s
|
54
59
|
end
|
55
|
-
|
56
|
-
def use_dualstack_endpoint?(context)
|
57
|
-
context[:use_dualstack_endpoint]
|
58
|
-
end
|
59
60
|
end
|
60
61
|
|
61
62
|
end
|
@@ -51,8 +51,12 @@ module Aws
|
|
51
51
|
credentials: context.config.credentials
|
52
52
|
)
|
53
53
|
elsif outpost_operation?(context)
|
54
|
-
|
55
|
-
|
54
|
+
# outpost operations should go to the outposts endpoint only if
|
55
|
+
# it's not a custom endpoint. the ARN class changes this for ARNs
|
56
|
+
if context.config.regional_endpoint
|
57
|
+
context.http_request.endpoint.host =
|
58
|
+
"s3-outposts.#{context.config.region}.amazonaws.com"
|
59
|
+
end
|
56
60
|
S3ControlSigner.build_v4_signer(
|
57
61
|
service: 's3-outposts',
|
58
62
|
region: context.config.region,
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# WARNING ABOUT GENERATED CODE
|
4
4
|
#
|
5
5
|
# This file is generated. See the contributing guide for more information:
|
6
|
-
# https://github.com/aws/aws-sdk-ruby/blob/
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
@@ -558,6 +558,8 @@ module Aws::S3Control
|
|
558
558
|
# },
|
559
559
|
# ],
|
560
560
|
# },
|
561
|
+
# s3_delete_object_tagging: {
|
562
|
+
# },
|
561
563
|
# s3_initiate_restore_object: {
|
562
564
|
# expiration_in_days: 1,
|
563
565
|
# glacier_job_tier: "BULK", # accepts BULK, STANDARD
|
@@ -616,14 +618,14 @@ module Aws::S3Control
|
|
616
618
|
# @return [Boolean]
|
617
619
|
#
|
618
620
|
# @!attribute [rw] operation
|
619
|
-
# The
|
620
|
-
#
|
621
|
-
#
|
622
|
-
#
|
621
|
+
# The action that you want this job to perform on every object listed
|
622
|
+
# in the manifest. For more information about the available actions,
|
623
|
+
# see [Operations][1] in the *Amazon Simple Storage Service User
|
624
|
+
# Guide*.
|
623
625
|
#
|
624
626
|
#
|
625
627
|
#
|
626
|
-
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-
|
628
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-actions.html
|
627
629
|
# @return [Types::JobOperation]
|
628
630
|
#
|
629
631
|
# @!attribute [rw] report
|
@@ -657,7 +659,7 @@ module Aws::S3Control
|
|
657
659
|
# @!attribute [rw] role_arn
|
658
660
|
# The Amazon Resource Name (ARN) for the AWS Identity and Access
|
659
661
|
# Management (IAM) role that Batch Operations will use to run this
|
660
|
-
# job's
|
662
|
+
# job's action on every object in the manifest.
|
661
663
|
# @return [String]
|
662
664
|
#
|
663
665
|
# @!attribute [rw] tags
|
@@ -1032,6 +1034,7 @@ module Aws::S3Control
|
|
1032
1034
|
# }
|
1033
1035
|
#
|
1034
1036
|
# @!attribute [rw] account_id
|
1037
|
+
# The AWS account ID associated with the S3 Batch Operations job.
|
1035
1038
|
# @return [String]
|
1036
1039
|
#
|
1037
1040
|
# @!attribute [rw] job_id
|
@@ -1833,7 +1836,7 @@ module Aws::S3Control
|
|
1833
1836
|
# @return [String]
|
1834
1837
|
#
|
1835
1838
|
# @!attribute [rw] operation
|
1836
|
-
# The operation that the specified job is configured to run on
|
1839
|
+
# The operation that the specified job is configured to run on every
|
1837
1840
|
# object listed in the manifest.
|
1838
1841
|
# @return [String]
|
1839
1842
|
#
|
@@ -1926,6 +1929,14 @@ module Aws::S3Control
|
|
1926
1929
|
#
|
1927
1930
|
# @!attribute [rw] object_arn
|
1928
1931
|
# The Amazon Resource Name (ARN) for a manifest object.
|
1932
|
+
#
|
1933
|
+
# Replacement must be made for object keys containing special
|
1934
|
+
# characters (such as carriage returns) when using XML requests. For
|
1935
|
+
# more information, see [ XML related object key constraints][1].
|
1936
|
+
#
|
1937
|
+
#
|
1938
|
+
#
|
1939
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints
|
1929
1940
|
# @return [String]
|
1930
1941
|
#
|
1931
1942
|
# @!attribute [rw] object_version_id
|
@@ -1978,10 +1989,9 @@ module Aws::S3Control
|
|
1978
1989
|
include Aws::Structure
|
1979
1990
|
end
|
1980
1991
|
|
1981
|
-
# The operation that you want this job to perform on
|
1992
|
+
# The operation that you want this job to perform on every object listed
|
1982
1993
|
# in the manifest. For more information about the available operations,
|
1983
|
-
# see [Operations][1] in the *Amazon Simple Storage Service
|
1984
|
-
# Guide*.
|
1994
|
+
# see [Operations][1] in the *Amazon Simple Storage Service User Guide*.
|
1985
1995
|
#
|
1986
1996
|
#
|
1987
1997
|
#
|
@@ -2069,6 +2079,8 @@ module Aws::S3Control
|
|
2069
2079
|
# },
|
2070
2080
|
# ],
|
2071
2081
|
# },
|
2082
|
+
# s3_delete_object_tagging: {
|
2083
|
+
# },
|
2072
2084
|
# s3_initiate_restore_object: {
|
2073
2085
|
# expiration_in_days: 1,
|
2074
2086
|
# glacier_job_tier: "BULK", # accepts BULK, STANDARD
|
@@ -2088,36 +2100,41 @@ module Aws::S3Control
|
|
2088
2100
|
# }
|
2089
2101
|
#
|
2090
2102
|
# @!attribute [rw] lambda_invoke
|
2091
|
-
# Directs the specified job to invoke an AWS Lambda function on
|
2103
|
+
# Directs the specified job to invoke an AWS Lambda function on every
|
2092
2104
|
# object in the manifest.
|
2093
2105
|
# @return [Types::LambdaInvokeOperation]
|
2094
2106
|
#
|
2095
2107
|
# @!attribute [rw] s3_put_object_copy
|
2096
|
-
# Directs the specified job to run a PUT Copy object call on
|
2108
|
+
# Directs the specified job to run a PUT Copy object call on every
|
2097
2109
|
# object in the manifest.
|
2098
2110
|
# @return [Types::S3CopyObjectOperation]
|
2099
2111
|
#
|
2100
2112
|
# @!attribute [rw] s3_put_object_acl
|
2101
|
-
# Directs the specified job to run a PUT Object acl call on
|
2113
|
+
# Directs the specified job to run a PUT Object acl call on every
|
2102
2114
|
# object in the manifest.
|
2103
2115
|
# @return [Types::S3SetObjectAclOperation]
|
2104
2116
|
#
|
2105
2117
|
# @!attribute [rw] s3_put_object_tagging
|
2106
|
-
# Directs the specified job to run a PUT Object tagging call on
|
2118
|
+
# Directs the specified job to run a PUT Object tagging call on every
|
2107
2119
|
# object in the manifest.
|
2108
2120
|
# @return [Types::S3SetObjectTaggingOperation]
|
2109
2121
|
#
|
2122
|
+
# @!attribute [rw] s3_delete_object_tagging
|
2123
|
+
# Directs the specified job to execute a DELETE Object tagging call on
|
2124
|
+
# every object in the manifest.
|
2125
|
+
# @return [Types::S3DeleteObjectTaggingOperation]
|
2126
|
+
#
|
2110
2127
|
# @!attribute [rw] s3_initiate_restore_object
|
2111
|
-
# Directs the specified job to
|
2112
|
-
#
|
2128
|
+
# Directs the specified job to initiate restore requests for every
|
2129
|
+
# archived object in the manifest.
|
2113
2130
|
# @return [Types::S3InitiateRestoreObjectOperation]
|
2114
2131
|
#
|
2115
2132
|
# @!attribute [rw] s3_put_object_legal_hold
|
2116
2133
|
# Contains the configuration for an S3 Object Lock legal hold
|
2117
|
-
# operation that an S3 Batch Operations job passes
|
2118
|
-
#
|
2119
|
-
#
|
2120
|
-
#
|
2134
|
+
# operation that an S3 Batch Operations job passes every object to the
|
2135
|
+
# underlying `PutObjectLegalHold` API. For more information, see
|
2136
|
+
# [Using S3 Object Lock legal hold with S3 Batch Operations][1] in the
|
2137
|
+
# *Amazon Simple Storage Service User Guide*.
|
2121
2138
|
#
|
2122
2139
|
#
|
2123
2140
|
#
|
@@ -2126,11 +2143,10 @@ module Aws::S3Control
|
|
2126
2143
|
#
|
2127
2144
|
# @!attribute [rw] s3_put_object_retention
|
2128
2145
|
# Contains the configuration parameters for the Object Lock retention
|
2129
|
-
# action for an S3 Batch Operations job. Batch Operations passes
|
2130
|
-
#
|
2146
|
+
# action for an S3 Batch Operations job. Batch Operations passes every
|
2147
|
+
# object to the underlying `PutObjectRetention` API. For more
|
2131
2148
|
# information, see [Using S3 Object Lock retention with S3 Batch
|
2132
|
-
# Operations][1] in the *Amazon Simple Storage Service
|
2133
|
-
# Guide*.
|
2149
|
+
# Operations][1] in the *Amazon Simple Storage Service User Guide*.
|
2134
2150
|
#
|
2135
2151
|
#
|
2136
2152
|
#
|
@@ -2144,6 +2160,7 @@ module Aws::S3Control
|
|
2144
2160
|
:s3_put_object_copy,
|
2145
2161
|
:s3_put_object_acl,
|
2146
2162
|
:s3_put_object_tagging,
|
2163
|
+
:s3_delete_object_tagging,
|
2147
2164
|
:s3_initiate_restore_object,
|
2148
2165
|
:s3_put_object_legal_hold,
|
2149
2166
|
:s3_put_object_retention)
|
@@ -2246,7 +2263,7 @@ module Aws::S3Control
|
|
2246
2263
|
#
|
2247
2264
|
# @!attribute [rw] function_arn
|
2248
2265
|
# The Amazon Resource Name (ARN) for the AWS Lambda function that the
|
2249
|
-
# specified job will invoke
|
2266
|
+
# specified job will invoke on every object in the manifest.
|
2250
2267
|
# @return [String]
|
2251
2268
|
#
|
2252
2269
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/LambdaInvokeOperation AWS API Documentation
|
@@ -2544,6 +2561,14 @@ module Aws::S3Control
|
|
2544
2561
|
#
|
2545
2562
|
# @!attribute [rw] prefix
|
2546
2563
|
# Prefix identifying one or more objects to which the rule applies.
|
2564
|
+
#
|
2565
|
+
# Replacement must be made for object keys containing special
|
2566
|
+
# characters (such as carriage returns) when using XML requests. For
|
2567
|
+
# more information, see [ XML related object key constraints][1].
|
2568
|
+
#
|
2569
|
+
#
|
2570
|
+
#
|
2571
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints
|
2547
2572
|
# @return [String]
|
2548
2573
|
#
|
2549
2574
|
# @!attribute [rw] tag
|
@@ -2653,6 +2678,7 @@ module Aws::S3Control
|
|
2653
2678
|
# }
|
2654
2679
|
#
|
2655
2680
|
# @!attribute [rw] account_id
|
2681
|
+
# The AWS account ID associated with the S3 Batch Operations job.
|
2656
2682
|
# @return [String]
|
2657
2683
|
#
|
2658
2684
|
# @!attribute [rw] job_statuses
|
@@ -2934,7 +2960,7 @@ module Aws::S3Control
|
|
2934
2960
|
# Indicates whether this access point policy is public. For more
|
2935
2961
|
# information about how Amazon S3 evaluates policies to determine
|
2936
2962
|
# whether they are public, see [The Meaning of "Public"][1] in the
|
2937
|
-
# *Amazon Simple Storage Service
|
2963
|
+
# *Amazon Simple Storage Service User Guide*.
|
2938
2964
|
#
|
2939
2965
|
#
|
2940
2966
|
#
|
@@ -3133,7 +3159,7 @@ module Aws::S3Control
|
|
3133
3159
|
# The policy that you want to apply to the specified access point. For
|
3134
3160
|
# more information about access point policies, see [Managing data
|
3135
3161
|
# access with Amazon S3 Access Points][1] in the *Amazon Simple
|
3136
|
-
# Storage Service
|
3162
|
+
# Storage Service User Guide*.
|
3137
3163
|
#
|
3138
3164
|
#
|
3139
3165
|
#
|
@@ -3714,8 +3740,8 @@ module Aws::S3Control
|
|
3714
3740
|
end
|
3715
3741
|
|
3716
3742
|
# Contains the configuration parameters for a PUT Copy object operation.
|
3717
|
-
# S3 Batch Operations passes
|
3718
|
-
#
|
3743
|
+
# S3 Batch Operations passes every object to the underlying PUT Copy
|
3744
|
+
# object API. For more information about the parameters for this
|
3719
3745
|
# operation, see [PUT Object - Copy][1].
|
3720
3746
|
#
|
3721
3747
|
#
|
@@ -3860,6 +3886,16 @@ module Aws::S3Control
|
|
3860
3886
|
include Aws::Structure
|
3861
3887
|
end
|
3862
3888
|
|
3889
|
+
# Contains no configuration parameters because the DELETE Object tagging
|
3890
|
+
# API only accepts the bucket name and key name as parameters, which are
|
3891
|
+
# defined in the job's manifest.
|
3892
|
+
#
|
3893
|
+
# @api private
|
3894
|
+
#
|
3895
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3DeleteObjectTaggingOperation AWS API Documentation
|
3896
|
+
#
|
3897
|
+
class S3DeleteObjectTaggingOperation < Aws::EmptyStructure; end
|
3898
|
+
|
3863
3899
|
# @note When making an API call, you may pass S3Grant
|
3864
3900
|
# data as a hash:
|
3865
3901
|
#
|
@@ -3915,8 +3951,8 @@ module Aws::S3Control
|
|
3915
3951
|
include Aws::Structure
|
3916
3952
|
end
|
3917
3953
|
|
3918
|
-
# Contains the configuration parameters for an Initiate
|
3919
|
-
# job. S3 Batch Operations passes
|
3954
|
+
# Contains the configuration parameters for an S3 Initiate Restore
|
3955
|
+
# Object job. S3 Batch Operations passes every object to the underlying
|
3920
3956
|
# POST Object restore API. For more information about the parameters for
|
3921
3957
|
# this operation, see [RestoreObject][1].
|
3922
3958
|
#
|
@@ -3933,9 +3969,29 @@ module Aws::S3Control
|
|
3933
3969
|
# }
|
3934
3970
|
#
|
3935
3971
|
# @!attribute [rw] expiration_in_days
|
3972
|
+
# This argument specifies how long the S3 Glacier or S3 Glacier Deep
|
3973
|
+
# Archive object remains available in Amazon S3. S3 Initiate Restore
|
3974
|
+
# Object jobs that target S3 Glacier and S3 Glacier Deep Archive
|
3975
|
+
# objects require `ExpirationInDays` set to 1 or greater.
|
3976
|
+
#
|
3977
|
+
# Conversely, do *not* set `ExpirationInDays` when creating S3
|
3978
|
+
# Initiate Restore Object jobs that target S3 Intelligent-Tiering
|
3979
|
+
# Archive Access and Deep Archive Access tier objects. Objects in S3
|
3980
|
+
# Intelligent-Tiering archive access tiers are not subject to restore
|
3981
|
+
# expiry, so specifying `ExpirationInDays` results in restore request
|
3982
|
+
# failure.
|
3983
|
+
#
|
3984
|
+
# S3 Batch Operations jobs can operate either on S3 Glacier and S3
|
3985
|
+
# Glacier Deep Archive storage class objects or on S3
|
3986
|
+
# Intelligent-Tiering Archive Access and Deep Archive Access storage
|
3987
|
+
# tier objects, but not both types in the same job. If you need to
|
3988
|
+
# restore objects of both types you *must* create separate Batch
|
3989
|
+
# Operations jobs.
|
3936
3990
|
# @return [Integer]
|
3937
3991
|
#
|
3938
3992
|
# @!attribute [rw] glacier_job_tier
|
3993
|
+
# S3 Batch Operations supports `STANDARD` and `BULK` retrieval tiers,
|
3994
|
+
# but not the `EXPEDITED` retrieval tier.
|
3939
3995
|
# @return [String]
|
3940
3996
|
#
|
3941
3997
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3InitiateRestoreObjectOperation AWS API Documentation
|
@@ -4068,7 +4124,7 @@ module Aws::S3Control
|
|
4068
4124
|
# and `RetainUntilDate` data types in your operation, you will remove
|
4069
4125
|
# the retention from your objects. For more information, see [Using S3
|
4070
4126
|
# Object Lock retention with S3 Batch Operations][1] in the *Amazon
|
4071
|
-
# Simple Storage Service
|
4127
|
+
# Simple Storage Service User Guide*.
|
4072
4128
|
#
|
4073
4129
|
#
|
4074
4130
|
#
|
@@ -4102,9 +4158,9 @@ module Aws::S3Control
|
|
4102
4158
|
end
|
4103
4159
|
|
4104
4160
|
# Contains the configuration parameters for a Set Object ACL operation.
|
4105
|
-
# S3 Batch Operations passes
|
4106
|
-
#
|
4107
|
-
#
|
4161
|
+
# S3 Batch Operations passes every object to the underlying PUT Object
|
4162
|
+
# acl API. For more information about the parameters for this operation,
|
4163
|
+
# see [PUT Object acl][1].
|
4108
4164
|
#
|
4109
4165
|
#
|
4110
4166
|
#
|
@@ -4147,10 +4203,10 @@ module Aws::S3Control
|
|
4147
4203
|
end
|
4148
4204
|
|
4149
4205
|
# Contains the configuration for an S3 Object Lock legal hold operation
|
4150
|
-
# that an S3 Batch Operations job passes
|
4151
|
-
#
|
4152
|
-
#
|
4153
|
-
#
|
4206
|
+
# that an S3 Batch Operations job passes every object to the underlying
|
4207
|
+
# `PutObjectLegalHold` API. For more information, see [Using S3 Object
|
4208
|
+
# Lock legal hold with S3 Batch Operations][1] in the *Amazon Simple
|
4209
|
+
# Storage Service User Guide*.
|
4154
4210
|
#
|
4155
4211
|
#
|
4156
4212
|
#
|
@@ -4179,10 +4235,10 @@ module Aws::S3Control
|
|
4179
4235
|
end
|
4180
4236
|
|
4181
4237
|
# Contains the configuration parameters for the Object Lock retention
|
4182
|
-
# action for an S3 Batch Operations job. Batch Operations passes
|
4183
|
-
#
|
4238
|
+
# action for an S3 Batch Operations job. Batch Operations passes every
|
4239
|
+
# object to the underlying `PutObjectRetention` API. For more
|
4184
4240
|
# information, see [Using S3 Object Lock retention with S3 Batch
|
4185
|
-
# Operations][1] in the *Amazon Simple Storage Service
|
4241
|
+
# Operations][1] in the *Amazon Simple Storage Service User Guide*.
|
4186
4242
|
#
|
4187
4243
|
#
|
4188
4244
|
#
|
@@ -4209,7 +4265,7 @@ module Aws::S3Control
|
|
4209
4265
|
# Contains the Object Lock retention mode to be applied to all objects
|
4210
4266
|
# in the Batch Operations job. For more information, see [Using S3
|
4211
4267
|
# Object Lock retention with S3 Batch Operations][1] in the *Amazon
|
4212
|
-
# Simple Storage Service
|
4268
|
+
# Simple Storage Service User Guide*.
|
4213
4269
|
#
|
4214
4270
|
#
|
4215
4271
|
#
|
@@ -4226,9 +4282,9 @@ module Aws::S3Control
|
|
4226
4282
|
end
|
4227
4283
|
|
4228
4284
|
# Contains the configuration parameters for a Set Object Tagging
|
4229
|
-
# operation. S3 Batch Operations passes
|
4230
|
-
#
|
4231
|
-
#
|
4285
|
+
# operation. S3 Batch Operations passes every object to the underlying
|
4286
|
+
# PUT Object tagging API. For more information about the parameters for
|
4287
|
+
# this operation, see [PUT Object tagging][1].
|
4232
4288
|
#
|
4233
4289
|
#
|
4234
4290
|
#
|
@@ -4511,6 +4567,11 @@ module Aws::S3Control
|
|
4511
4567
|
# @!attribute [rw] s3_bucket_destination
|
4512
4568
|
# A container for the bucket where the S3 Storage Lens metrics export
|
4513
4569
|
# will be located.
|
4570
|
+
#
|
4571
|
+
# <note markdown="1"> This bucket must be located in the same Region as the storage lens
|
4572
|
+
# configuration.
|
4573
|
+
#
|
4574
|
+
# </note>
|
4514
4575
|
# @return [Types::S3BucketDestination]
|
4515
4576
|
#
|
4516
4577
|
# @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/StorageLensDataExport AWS API Documentation
|
@@ -4624,7 +4685,7 @@ module Aws::S3Control
|
|
4624
4685
|
# Specifies when an object transitions to a specified storage class. For
|
4625
4686
|
# more information about Amazon S3 Lifecycle configuration rules, see [
|
4626
4687
|
# Transitioning objects using Amazon S3 Lifecycle][1] in the *Amazon
|
4627
|
-
# Simple Storage Service
|
4688
|
+
# Simple Storage Service User Guide*.
|
4628
4689
|
#
|
4629
4690
|
#
|
4630
4691
|
#
|
@@ -4675,6 +4736,7 @@ module Aws::S3Control
|
|
4675
4736
|
# }
|
4676
4737
|
#
|
4677
4738
|
# @!attribute [rw] account_id
|
4739
|
+
# The AWS account ID associated with the S3 Batch Operations job.
|
4678
4740
|
# @return [String]
|
4679
4741
|
#
|
4680
4742
|
# @!attribute [rw] job_id
|
@@ -4723,6 +4785,7 @@ module Aws::S3Control
|
|
4723
4785
|
# }
|
4724
4786
|
#
|
4725
4787
|
# @!attribute [rw] account_id
|
4788
|
+
# The AWS account ID associated with the S3 Batch Operations job.
|
4726
4789
|
# @return [String]
|
4727
4790
|
#
|
4728
4791
|
# @!attribute [rw] job_id
|