aws-sdk-s3 1.23.1 → 1.24.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.
@@ -128,6 +128,7 @@ module Aws::S3
128
128
  DeleteObjectTaggingRequest = Shapes::StructureShape.new(name: 'DeleteObjectTaggingRequest')
129
129
  DeleteObjectsOutput = Shapes::StructureShape.new(name: 'DeleteObjectsOutput')
130
130
  DeleteObjectsRequest = Shapes::StructureShape.new(name: 'DeleteObjectsRequest')
131
+ DeletePublicAccessBlockRequest = Shapes::StructureShape.new(name: 'DeletePublicAccessBlockRequest')
131
132
  DeletedObject = Shapes::StructureShape.new(name: 'DeletedObject')
132
133
  DeletedObjects = Shapes::ListShape.new(name: 'DeletedObjects', flattened: true)
133
134
  Delimiter = Shapes::StringShape.new(name: 'Delimiter')
@@ -187,6 +188,8 @@ module Aws::S3
187
188
  GetBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketNotificationConfigurationRequest')
188
189
  GetBucketPolicyOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyOutput')
189
190
  GetBucketPolicyRequest = Shapes::StructureShape.new(name: 'GetBucketPolicyRequest')
191
+ GetBucketPolicyStatusOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyStatusOutput')
192
+ GetBucketPolicyStatusRequest = Shapes::StructureShape.new(name: 'GetBucketPolicyStatusRequest')
190
193
  GetBucketReplicationOutput = Shapes::StructureShape.new(name: 'GetBucketReplicationOutput')
191
194
  GetBucketReplicationRequest = Shapes::StructureShape.new(name: 'GetBucketReplicationRequest')
192
195
  GetBucketRequestPaymentOutput = Shapes::StructureShape.new(name: 'GetBucketRequestPaymentOutput')
@@ -205,6 +208,8 @@ module Aws::S3
205
208
  GetObjectTaggingRequest = Shapes::StructureShape.new(name: 'GetObjectTaggingRequest')
206
209
  GetObjectTorrentOutput = Shapes::StructureShape.new(name: 'GetObjectTorrentOutput')
207
210
  GetObjectTorrentRequest = Shapes::StructureShape.new(name: 'GetObjectTorrentRequest')
211
+ GetPublicAccessBlockOutput = Shapes::StructureShape.new(name: 'GetPublicAccessBlockOutput')
212
+ GetPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'GetPublicAccessBlockRequest')
208
213
  GlacierJobParameters = Shapes::StructureShape.new(name: 'GlacierJobParameters')
209
214
  Grant = Shapes::StructureShape.new(name: 'Grant')
210
215
  GrantFullControl = Shapes::StringShape.new(name: 'GrantFullControl')
@@ -244,6 +249,7 @@ module Aws::S3
244
249
  InventorySchedule = Shapes::StructureShape.new(name: 'InventorySchedule')
245
250
  IsEnabled = Shapes::BooleanShape.new(name: 'IsEnabled')
246
251
  IsLatest = Shapes::BooleanShape.new(name: 'IsLatest')
252
+ IsPublic = Shapes::BooleanShape.new(name: 'IsPublic')
247
253
  IsTruncated = Shapes::BooleanShape.new(name: 'IsTruncated')
248
254
  JSONInput = Shapes::StructureShape.new(name: 'JSONInput')
249
255
  JSONOutput = Shapes::StructureShape.new(name: 'JSONOutput')
@@ -347,11 +353,13 @@ module Aws::S3
347
353
  Payer = Shapes::StringShape.new(name: 'Payer')
348
354
  Permission = Shapes::StringShape.new(name: 'Permission')
349
355
  Policy = Shapes::StringShape.new(name: 'Policy')
356
+ PolicyStatus = Shapes::StructureShape.new(name: 'PolicyStatus')
350
357
  Prefix = Shapes::StringShape.new(name: 'Prefix')
351
358
  Priority = Shapes::IntegerShape.new(name: 'Priority')
352
359
  Progress = Shapes::StructureShape.new(name: 'Progress')
353
360
  ProgressEvent = Shapes::StructureShape.new(name: 'ProgressEvent')
354
361
  Protocol = Shapes::StringShape.new(name: 'Protocol')
362
+ PublicAccessBlockConfiguration = Shapes::StructureShape.new(name: 'PublicAccessBlockConfiguration')
355
363
  PutBucketAccelerateConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketAccelerateConfigurationRequest')
356
364
  PutBucketAclRequest = Shapes::StructureShape.new(name: 'PutBucketAclRequest')
357
365
  PutBucketAnalyticsConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketAnalyticsConfigurationRequest')
@@ -376,6 +384,7 @@ module Aws::S3
376
384
  PutObjectRequest = Shapes::StructureShape.new(name: 'PutObjectRequest')
377
385
  PutObjectTaggingOutput = Shapes::StructureShape.new(name: 'PutObjectTaggingOutput')
378
386
  PutObjectTaggingRequest = Shapes::StructureShape.new(name: 'PutObjectTaggingRequest')
387
+ PutPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'PutPublicAccessBlockRequest')
379
388
  QueueArn = Shapes::StringShape.new(name: 'QueueArn')
380
389
  QueueConfiguration = Shapes::StructureShape.new(name: 'QueueConfiguration')
381
390
  QueueConfigurationDeprecated = Shapes::StructureShape.new(name: 'QueueConfigurationDeprecated')
@@ -437,6 +446,7 @@ module Aws::S3
437
446
  ServerSideEncryptionConfiguration = Shapes::StructureShape.new(name: 'ServerSideEncryptionConfiguration')
438
447
  ServerSideEncryptionRule = Shapes::StructureShape.new(name: 'ServerSideEncryptionRule')
439
448
  ServerSideEncryptionRules = Shapes::ListShape.new(name: 'ServerSideEncryptionRules', flattened: true)
449
+ Setting = Shapes::BooleanShape.new(name: 'Setting')
440
450
  Size = Shapes::IntegerShape.new(name: 'Size')
441
451
  SourceSelectionCriteria = Shapes::StructureShape.new(name: 'SourceSelectionCriteria')
442
452
  SseKmsEncryptedObjects = Shapes::StructureShape.new(name: 'SseKmsEncryptedObjects')
@@ -818,6 +828,9 @@ module Aws::S3
818
828
  DeleteObjectsRequest[:payload] = :delete
819
829
  DeleteObjectsRequest[:payload_member] = DeleteObjectsRequest.member(:delete)
820
830
 
831
+ DeletePublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
832
+ DeletePublicAccessBlockRequest.struct_class = Types::DeletePublicAccessBlockRequest
833
+
821
834
  DeletedObject.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, location_name: "Key"))
822
835
  DeletedObject.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location_name: "VersionId"))
823
836
  DeletedObject.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location_name: "DeleteMarker"))
@@ -953,6 +966,14 @@ module Aws::S3
953
966
  GetBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
954
967
  GetBucketPolicyRequest.struct_class = Types::GetBucketPolicyRequest
955
968
 
969
+ GetBucketPolicyStatusOutput.add_member(:policy_status, Shapes::ShapeRef.new(shape: PolicyStatus, location_name: "PolicyStatus"))
970
+ GetBucketPolicyStatusOutput.struct_class = Types::GetBucketPolicyStatusOutput
971
+ GetBucketPolicyStatusOutput[:payload] = :policy_status
972
+ GetBucketPolicyStatusOutput[:payload_member] = GetBucketPolicyStatusOutput.member(:policy_status)
973
+
974
+ GetBucketPolicyStatusRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
975
+ GetBucketPolicyStatusRequest.struct_class = Types::GetBucketPolicyStatusRequest
976
+
956
977
  GetBucketReplicationOutput.add_member(:replication_configuration, Shapes::ShapeRef.new(shape: ReplicationConfiguration, location_name: "ReplicationConfiguration"))
957
978
  GetBucketReplicationOutput.struct_class = Types::GetBucketReplicationOutput
958
979
  GetBucketReplicationOutput[:payload] = :replication_configuration
@@ -1074,6 +1095,14 @@ module Aws::S3
1074
1095
  GetObjectTorrentRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1075
1096
  GetObjectTorrentRequest.struct_class = Types::GetObjectTorrentRequest
1076
1097
 
1098
+ GetPublicAccessBlockOutput.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
1099
+ GetPublicAccessBlockOutput.struct_class = Types::GetPublicAccessBlockOutput
1100
+ GetPublicAccessBlockOutput[:payload] = :public_access_block_configuration
1101
+ GetPublicAccessBlockOutput[:payload_member] = GetPublicAccessBlockOutput.member(:public_access_block_configuration)
1102
+
1103
+ GetPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1104
+ GetPublicAccessBlockRequest.struct_class = Types::GetPublicAccessBlockRequest
1105
+
1077
1106
  GlacierJobParameters.add_member(:tier, Shapes::ShapeRef.new(shape: Tier, required: true, location_name: "Tier"))
1078
1107
  GlacierJobParameters.struct_class = Types::GlacierJobParameters
1079
1108
 
@@ -1485,6 +1514,9 @@ module Aws::S3
1485
1514
 
1486
1515
  Parts.member = Shapes::ShapeRef.new(shape: Part)
1487
1516
 
1517
+ PolicyStatus.add_member(:is_public, Shapes::ShapeRef.new(shape: IsPublic, location_name: "IsPublic"))
1518
+ PolicyStatus.struct_class = Types::PolicyStatus
1519
+
1488
1520
  Progress.add_member(:bytes_scanned, Shapes::ShapeRef.new(shape: BytesScanned, location_name: "BytesScanned"))
1489
1521
  Progress.add_member(:bytes_processed, Shapes::ShapeRef.new(shape: BytesProcessed, location_name: "BytesProcessed"))
1490
1522
  Progress.add_member(:bytes_returned, Shapes::ShapeRef.new(shape: BytesReturned, location_name: "BytesReturned"))
@@ -1493,6 +1525,12 @@ module Aws::S3
1493
1525
  ProgressEvent.add_member(:details, Shapes::ShapeRef.new(shape: Progress, eventpayload: true, eventpayload_type: 'structure', location_name: "Details", metadata: {"eventpayload"=>true}))
1494
1526
  ProgressEvent.struct_class = Types::ProgressEvent
1495
1527
 
1528
+ PublicAccessBlockConfiguration.add_member(:block_public_acls, Shapes::ShapeRef.new(shape: Setting, location_name: "BlockPublicAcls"))
1529
+ PublicAccessBlockConfiguration.add_member(:ignore_public_acls, Shapes::ShapeRef.new(shape: Setting, location_name: "IgnorePublicAcls"))
1530
+ PublicAccessBlockConfiguration.add_member(:block_public_policy, Shapes::ShapeRef.new(shape: Setting, location_name: "BlockPublicPolicy"))
1531
+ PublicAccessBlockConfiguration.add_member(:restrict_public_buckets, Shapes::ShapeRef.new(shape: Setting, location_name: "RestrictPublicBuckets"))
1532
+ PublicAccessBlockConfiguration.struct_class = Types::PublicAccessBlockConfiguration
1533
+
1496
1534
  PutBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1497
1535
  PutBucketAccelerateConfigurationRequest.add_member(:accelerate_configuration, Shapes::ShapeRef.new(shape: AccelerateConfiguration, required: true, location_name: "AccelerateConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1498
1536
  PutBucketAccelerateConfigurationRequest.struct_class = Types::PutBucketAccelerateConfigurationRequest
@@ -1695,6 +1733,13 @@ module Aws::S3
1695
1733
  PutObjectTaggingRequest[:payload] = :tagging
1696
1734
  PutObjectTaggingRequest[:payload_member] = PutObjectTaggingRequest.member(:tagging)
1697
1735
 
1736
+ PutPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1737
+ PutPublicAccessBlockRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1738
+ PutPublicAccessBlockRequest.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, required: true, location_name: "PublicAccessBlockConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1739
+ PutPublicAccessBlockRequest.struct_class = Types::PutPublicAccessBlockRequest
1740
+ PutPublicAccessBlockRequest[:payload] = :public_access_block_configuration
1741
+ PutPublicAccessBlockRequest[:payload_member] = PutPublicAccessBlockRequest.member(:public_access_block_configuration)
1742
+
1698
1743
  QueueConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "Id"))
1699
1744
  QueueConfiguration.add_member(:queue_arn, Shapes::ShapeRef.new(shape: QueueArn, required: true, location_name: "Queue"))
1700
1745
  QueueConfiguration.add_member(:events, Shapes::ShapeRef.new(shape: EventList, required: true, location_name: "Event"))
@@ -2150,6 +2195,14 @@ module Aws::S3
2150
2195
  o.output = Shapes::ShapeRef.new(shape: DeleteObjectsOutput)
2151
2196
  end)
2152
2197
 
2198
+ api.add_operation(:delete_public_access_block, Seahorse::Model::Operation.new.tap do |o|
2199
+ o.name = "DeletePublicAccessBlock"
2200
+ o.http_method = "DELETE"
2201
+ o.http_request_uri = "/{Bucket}?publicAccessBlock"
2202
+ o.input = Shapes::ShapeRef.new(shape: DeletePublicAccessBlockRequest)
2203
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2204
+ end)
2205
+
2153
2206
  api.add_operation(:get_bucket_accelerate_configuration, Seahorse::Model::Operation.new.tap do |o|
2154
2207
  o.name = "GetBucketAccelerateConfiguration"
2155
2208
  o.http_method = "GET"
@@ -2264,6 +2317,14 @@ module Aws::S3
2264
2317
  o.output = Shapes::ShapeRef.new(shape: GetBucketPolicyOutput)
2265
2318
  end)
2266
2319
 
2320
+ api.add_operation(:get_bucket_policy_status, Seahorse::Model::Operation.new.tap do |o|
2321
+ o.name = "GetBucketPolicyStatus"
2322
+ o.http_method = "GET"
2323
+ o.http_request_uri = "/{Bucket}?policyStatus"
2324
+ o.input = Shapes::ShapeRef.new(shape: GetBucketPolicyStatusRequest)
2325
+ o.output = Shapes::ShapeRef.new(shape: GetBucketPolicyStatusOutput)
2326
+ end)
2327
+
2267
2328
  api.add_operation(:get_bucket_replication, Seahorse::Model::Operation.new.tap do |o|
2268
2329
  o.name = "GetBucketReplication"
2269
2330
  o.http_method = "GET"
@@ -2338,6 +2399,14 @@ module Aws::S3
2338
2399
  o.output = Shapes::ShapeRef.new(shape: GetObjectTorrentOutput)
2339
2400
  end)
2340
2401
 
2402
+ api.add_operation(:get_public_access_block, Seahorse::Model::Operation.new.tap do |o|
2403
+ o.name = "GetPublicAccessBlock"
2404
+ o.http_method = "GET"
2405
+ o.http_request_uri = "/{Bucket}?publicAccessBlock"
2406
+ o.input = Shapes::ShapeRef.new(shape: GetPublicAccessBlockRequest)
2407
+ o.output = Shapes::ShapeRef.new(shape: GetPublicAccessBlockOutput)
2408
+ end)
2409
+
2341
2410
  api.add_operation(:head_bucket, Seahorse::Model::Operation.new.tap do |o|
2342
2411
  o.name = "HeadBucket"
2343
2412
  o.http_method = "HEAD"
@@ -2637,6 +2706,14 @@ module Aws::S3
2637
2706
  o.output = Shapes::ShapeRef.new(shape: PutObjectTaggingOutput)
2638
2707
  end)
2639
2708
 
2709
+ api.add_operation(:put_public_access_block, Seahorse::Model::Operation.new.tap do |o|
2710
+ o.name = "PutPublicAccessBlock"
2711
+ o.http_method = "PUT"
2712
+ o.http_request_uri = "/{Bucket}?publicAccessBlock"
2713
+ o.input = Shapes::ShapeRef.new(shape: PutPublicAccessBlockRequest)
2714
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2715
+ end)
2716
+
2640
2717
  api.add_operation(:restore_object, Seahorse::Model::Operation.new.tap do |o|
2641
2718
  o.name = "RestoreObject"
2642
2719
  o.http_method = "POST"
@@ -66,7 +66,7 @@ module Aws::S3
66
66
  data[:etag]
67
67
  end
68
68
 
69
- # Size of the uploaded part data.
69
+ # Size in bytes of the uploaded part data.
70
70
  # @return [Integer]
71
71
  def size
72
72
  data[:size]
@@ -866,7 +866,7 @@ module Aws::S3
866
866
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
867
867
  # @option options [String] :tagging
868
868
  # The tag-set for the object. The tag-set must be encoded as URL Query
869
- # parameters
869
+ # parameters. (For example, "Key1=Value1")
870
870
  # @return [Types::PutObjectOutput]
871
871
  def put(options = {})
872
872
  options = options.merge(
@@ -709,7 +709,7 @@ module Aws::S3
709
709
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
710
710
  # @option options [String] :tagging
711
711
  # The tag-set for the object. The tag-set must be encoded as URL Query
712
- # parameters
712
+ # parameters. (For example, "Key1=Value1")
713
713
  # @return [Types::PutObjectOutput]
714
714
  def put(options = {})
715
715
  options = options.merge(
@@ -135,7 +135,7 @@ module Aws::S3
135
135
  include Aws::Structure
136
136
  end
137
137
 
138
- # Container for information regarding the access control for replicas.
138
+ # A container for information about access control for replicas.
139
139
  #
140
140
  # @note When making an API call, you may pass AccessControlTranslation
141
141
  # data as a hash:
@@ -557,21 +557,21 @@ module Aws::S3
557
557
  # @return [String]
558
558
  #
559
559
  # @!attribute [rw] comments
560
- # Single character used to indicate a row should be ignored when
560
+ # The single character used to indicate a row should be ignored when
561
561
  # present at the start of a row.
562
562
  # @return [String]
563
563
  #
564
564
  # @!attribute [rw] quote_escape_character
565
- # Single character used for escaping the quote character inside an
565
+ # The single character used for escaping the quote character inside an
566
566
  # already escaped value.
567
567
  # @return [String]
568
568
  #
569
569
  # @!attribute [rw] record_delimiter
570
- # Value used to separate individual records.
570
+ # The value used to separate individual records.
571
571
  # @return [String]
572
572
  #
573
573
  # @!attribute [rw] field_delimiter
574
- # Value used to separate individual fields in a record.
574
+ # The value used to separate individual fields in a record.
575
575
  # @return [String]
576
576
  #
577
577
  # @!attribute [rw] quote_character
@@ -616,20 +616,20 @@ module Aws::S3
616
616
  # @return [String]
617
617
  #
618
618
  # @!attribute [rw] quote_escape_character
619
- # Single character used for escaping the quote character inside an
619
+ # Th single character used for escaping the quote character inside an
620
620
  # already escaped value.
621
621
  # @return [String]
622
622
  #
623
623
  # @!attribute [rw] record_delimiter
624
- # Value used to separate individual records.
624
+ # The value used to separate individual records.
625
625
  # @return [String]
626
626
  #
627
627
  # @!attribute [rw] field_delimiter
628
- # Value used to separate individual fields in a record.
628
+ # The value used to separate individual fields in a record.
629
629
  # @return [String]
630
630
  #
631
631
  # @!attribute [rw] quote_character
632
- # Value used for escaping where the field delimiter is part of the
632
+ # The value used for escaping where the field delimiter is part of the
633
633
  # value.
634
634
  # @return [String]
635
635
  #
@@ -656,13 +656,13 @@ module Aws::S3
656
656
  # }
657
657
  #
658
658
  # @!attribute [rw] id
659
- # Optional unique identifier for configurations in a notification
659
+ # An optional unique identifier for configurations in a notification
660
660
  # configuration. If you don't provide one, Amazon S3 will assign an
661
661
  # ID.
662
662
  # @return [String]
663
663
  #
664
664
  # @!attribute [rw] event
665
- # Bucket event for which to send notifications.
665
+ # The bucket event for which to send notifications.
666
666
  # @return [String]
667
667
  #
668
668
  # @!attribute [rw] events
@@ -1731,17 +1731,12 @@ module Aws::S3
1731
1731
  # }
1732
1732
  #
1733
1733
  # @!attribute [rw] bucket
1734
- # Deletes the replication subresource associated with the specified
1735
- # bucket.
1734
+ # The bucket name.
1736
1735
  #
1737
- # <note markdown="1"> There is usually some time lag before replication configuration
1738
- # deletion is fully propagated to all the Amazon S3 systems.
1736
+ # <note markdown="1"> It can take a while to propagate the deletion of a replication
1737
+ # configuration to all Amazon S3 systems.
1739
1738
  #
1740
1739
  # </note>
1741
- #
1742
- # For more information, see [Cross-Region Replication (CRR)](
1743
- # https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in the
1744
- # Amazon S3 Developer Guide.
1745
1740
  # @return [String]
1746
1741
  #
1747
1742
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplicationRequest AWS API Documentation
@@ -1845,8 +1840,8 @@ module Aws::S3
1845
1840
  # @!attribute [rw] status
1846
1841
  # The status of the delete marker replication.
1847
1842
  #
1848
- # <note markdown="1"> In the current implementation, Amazon S3 does not replicate the
1849
- # delete markers. Therefore, the status must be `Disabled`.
1843
+ # <note markdown="1"> In the current implementation, Amazon S3 doesn't replicate the
1844
+ # delete markers. The status must be `Disabled`.
1850
1845
  #
1851
1846
  # </note>
1852
1847
  # @return [String]
@@ -2035,6 +2030,25 @@ module Aws::S3
2035
2030
  include Aws::Structure
2036
2031
  end
2037
2032
 
2033
+ # @note When making an API call, you may pass DeletePublicAccessBlockRequest
2034
+ # data as a hash:
2035
+ #
2036
+ # {
2037
+ # bucket: "BucketName", # required
2038
+ # }
2039
+ #
2040
+ # @!attribute [rw] bucket
2041
+ # The Amazon S3 bucket whose Public Access Block configuration you
2042
+ # want to delete.
2043
+ # @return [String]
2044
+ #
2045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlockRequest AWS API Documentation
2046
+ #
2047
+ class DeletePublicAccessBlockRequest < Struct.new(
2048
+ :bucket)
2049
+ include Aws::Structure
2050
+ end
2051
+
2038
2052
  # @!attribute [rw] key
2039
2053
  # @return [String]
2040
2054
  #
@@ -2057,7 +2071,7 @@ module Aws::S3
2057
2071
  include Aws::Structure
2058
2072
  end
2059
2073
 
2060
- # Container for replication destination information.
2074
+ # A container for information about the replication destination.
2061
2075
  #
2062
2076
  # @note When making an API call, you may pass Destination
2063
2077
  # data as a hash:
@@ -2075,41 +2089,43 @@ module Aws::S3
2075
2089
  # }
2076
2090
  #
2077
2091
  # @!attribute [rw] bucket
2078
- # Amazon resource name (ARN) of the bucket where you want Amazon S3 to
2079
- # store replicas of the object identified by the rule.
2092
+ # The Amazon Resource Name (ARN) of the bucket where you want Amazon
2093
+ # S3 to store replicas of the object identified by the rule.
2080
2094
  #
2081
- # If you have multiple rules in your replication configuration, all
2095
+ # If there are multiple rules in your replication configuration, all
2082
2096
  # rules must specify the same bucket as the destination. A replication
2083
- # configuration can replicate objects only to one destination bucket.
2097
+ # configuration can replicate objects to only one destination bucket.
2084
2098
  # @return [String]
2085
2099
  #
2086
2100
  # @!attribute [rw] account
2087
- # Account ID of the destination bucket. Currently Amazon S3 verifies
2088
- # this value only if Access Control Translation is enabled.
2101
+ # The account ID of the destination bucket. Currently, Amazon S3
2102
+ # verifies this value only if Access Control Translation is enabled.
2089
2103
  #
2090
- # In a cross-account scenario, if you tell Amazon S3 to change replica
2091
- # ownership to the AWS account that owns the destination bucket by
2092
- # adding the `AccessControlTranslation` element, this is the account
2093
- # ID of the destination bucket owner.
2104
+ # In a cross-account scenario, if you change replica ownership to the
2105
+ # AWS account that owns the destination bucket by adding the
2106
+ # `AccessControlTranslation` element, this is the account ID of the
2107
+ # owner of the destination bucket.
2094
2108
  # @return [String]
2095
2109
  #
2096
2110
  # @!attribute [rw] storage_class
2097
- # The class of storage used to store the object.
2111
+ # The class of storage used to store the object. By default Amazon S3
2112
+ # uses storage class of the source object when creating a replica.
2098
2113
  # @return [String]
2099
2114
  #
2100
2115
  # @!attribute [rw] access_control_translation
2101
- # Container for information regarding the access control for replicas.
2116
+ # A container for information about access control for replicas.
2102
2117
  #
2103
- # Use only in a cross-account scenario, where source and destination
2104
- # bucket owners are not the same, when you want to change replica
2118
+ # Use this element only in a cross-account scenario where source and
2119
+ # destination bucket owners are not the same to change replica
2105
2120
  # ownership to the AWS account that owns the destination bucket. If
2106
2121
  # you don't add this element to the replication configuration, the
2107
2122
  # replicas are owned by same AWS account that owns the source object.
2108
2123
  # @return [Types::AccessControlTranslation]
2109
2124
  #
2110
2125
  # @!attribute [rw] encryption_configuration
2111
- # Container that provides encryption-related information. You must
2112
- # specify this element if the `SourceSelectionCriteria` is specified.
2126
+ # A container that provides information about encryption. If
2127
+ # `SourceSelectionCriteria` is specified, you must specify this
2128
+ # element.
2113
2129
  # @return [Types::EncryptionConfiguration]
2114
2130
  #
2115
2131
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Destination AWS API Documentation
@@ -2159,8 +2175,8 @@ module Aws::S3
2159
2175
  include Aws::Structure
2160
2176
  end
2161
2177
 
2162
- # Container for information regarding encryption based configuration for
2163
- # replicas.
2178
+ # A container for information about the encryption-based configuration
2179
+ # for replicas.
2164
2180
  #
2165
2181
  # @note When making an API call, you may pass EncryptionConfiguration
2166
2182
  # data as a hash:
@@ -2170,7 +2186,7 @@ module Aws::S3
2170
2186
  # }
2171
2187
  #
2172
2188
  # @!attribute [rw] replica_kms_key_id
2173
- # The ID of the AWS KMS key for the region where the destination
2189
+ # The ID of the AWS KMS key for the AWS Region where the destination
2174
2190
  # bucket resides. Amazon S3 uses this key to encrypt the replica
2175
2191
  # object.
2176
2192
  # @return [String]
@@ -2229,8 +2245,8 @@ module Aws::S3
2229
2245
  include Aws::Structure
2230
2246
  end
2231
2247
 
2232
- # Container for key value pair that defines the criteria for the filter
2233
- # rule.
2248
+ # A container for a key value pair that defines the criteria for the
2249
+ # filter rule.
2234
2250
  #
2235
2251
  # @note When making an API call, you may pass FilterRule
2236
2252
  # data as a hash:
@@ -2241,12 +2257,12 @@ module Aws::S3
2241
2257
  # }
2242
2258
  #
2243
2259
  # @!attribute [rw] name
2244
- # Object key name prefix or suffix identifying one or more objects to
2245
- # which the filtering rule applies. Maximum prefix length can be up to
2260
+ # The object key name prefix or suffix identifying one or more objects
2261
+ # to which the filtering rule applies. The maximum prefix length is
2246
2262
  # 1,024 characters. Overlapping prefixes and suffixes are not
2247
- # supported. For more information, go to [Configuring Event
2248
- # Notifications][1] in the Amazon Simple Storage Service Developer
2249
- # Guide.
2263
+ # supported. For more information, see [Configuring Event
2264
+ # Notifications][1] in the *Amazon Simple Storage Service Developer
2265
+ # Guide*.
2250
2266
  #
2251
2267
  #
2252
2268
  #
@@ -2649,9 +2665,39 @@ module Aws::S3
2649
2665
  include Aws::Structure
2650
2666
  end
2651
2667
 
2668
+ # @!attribute [rw] policy_status
2669
+ # The public-policy status for this bucket.
2670
+ # @return [Types::PolicyStatus]
2671
+ #
2672
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatusOutput AWS API Documentation
2673
+ #
2674
+ class GetBucketPolicyStatusOutput < Struct.new(
2675
+ :policy_status)
2676
+ include Aws::Structure
2677
+ end
2678
+
2679
+ # @note When making an API call, you may pass GetBucketPolicyStatusRequest
2680
+ # data as a hash:
2681
+ #
2682
+ # {
2683
+ # bucket: "BucketName", # required
2684
+ # }
2685
+ #
2686
+ # @!attribute [rw] bucket
2687
+ # The name of the Amazon S3 bucket whose public-policy status you want
2688
+ # to retrieve.
2689
+ # @return [String]
2690
+ #
2691
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatusRequest AWS API Documentation
2692
+ #
2693
+ class GetBucketPolicyStatusRequest < Struct.new(
2694
+ :bucket)
2695
+ include Aws::Structure
2696
+ end
2697
+
2652
2698
  # @!attribute [rw] replication_configuration
2653
- # Container for replication rules. You can add as many as 1,000 rules.
2654
- # Total replication configuration size can be up to 2 MB.
2699
+ # A container for replication rules. You can add up to 1,000 rules.
2700
+ # The maximum size of a replication configuration is 2 MB.
2655
2701
  # @return [Types::ReplicationConfiguration]
2656
2702
  #
2657
2703
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplicationOutput AWS API Documentation
@@ -3271,6 +3317,37 @@ module Aws::S3
3271
3317
  include Aws::Structure
3272
3318
  end
3273
3319
 
3320
+ # @!attribute [rw] public_access_block_configuration
3321
+ # The Public Access Block configuration currently in effect for this
3322
+ # Amazon S3 bucket.
3323
+ # @return [Types::PublicAccessBlockConfiguration]
3324
+ #
3325
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlockOutput AWS API Documentation
3326
+ #
3327
+ class GetPublicAccessBlockOutput < Struct.new(
3328
+ :public_access_block_configuration)
3329
+ include Aws::Structure
3330
+ end
3331
+
3332
+ # @note When making an API call, you may pass GetPublicAccessBlockRequest
3333
+ # data as a hash:
3334
+ #
3335
+ # {
3336
+ # bucket: "BucketName", # required
3337
+ # }
3338
+ #
3339
+ # @!attribute [rw] bucket
3340
+ # The name of the Amazon S3 bucket whose Public Access Block
3341
+ # configuration you want to retrieve.
3342
+ # @return [String]
3343
+ #
3344
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlockRequest AWS API Documentation
3345
+ #
3346
+ class GetPublicAccessBlockRequest < Struct.new(
3347
+ :bucket)
3348
+ include Aws::Structure
3349
+ end
3350
+
3274
3351
  # @note When making an API call, you may pass GlacierJobParameters
3275
3352
  # data as a hash:
3276
3353
  #
@@ -3851,12 +3928,11 @@ module Aws::S3
3851
3928
  # }
3852
3929
  #
3853
3930
  # @!attribute [rw] sses3
3854
- # Specifies the use of SSE-S3 to encrypt delievered Inventory reports.
3931
+ # Specifies the use of SSE-S3 to encrypt delivered Inventory reports.
3855
3932
  # @return [Types::SSES3]
3856
3933
  #
3857
3934
  # @!attribute [rw] ssekms
3858
- # Specifies the use of SSE-KMS to encrypt delievered Inventory
3859
- # reports.
3935
+ # Specifies the use of SSE-KMS to encrypt delivered Inventory reports.
3860
3936
  # @return [Types::SSEKMS]
3861
3937
  #
3862
3938
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventoryEncryption AWS API Documentation
@@ -3990,7 +4066,8 @@ module Aws::S3
3990
4066
  include Aws::Structure
3991
4067
  end
3992
4068
 
3993
- # Container for specifying the AWS Lambda notification configuration.
4069
+ # A container for specifying the configuration for AWS Lambda
4070
+ # notifications.
3994
4071
  #
3995
4072
  # @note When making an API call, you may pass LambdaFunctionConfiguration
3996
4073
  # data as a hash:
@@ -4012,23 +4089,23 @@ module Aws::S3
4012
4089
  # }
4013
4090
  #
4014
4091
  # @!attribute [rw] id
4015
- # Optional unique identifier for configurations in a notification
4092
+ # An optional unique identifier for configurations in a notification
4016
4093
  # configuration. If you don't provide one, Amazon S3 will assign an
4017
4094
  # ID.
4018
4095
  # @return [String]
4019
4096
  #
4020
4097
  # @!attribute [rw] lambda_function_arn
4021
- # Lambda cloud function ARN that Amazon S3 can invoke when it detects
4022
- # events of the specified type.
4098
+ # The Amazon Resource Name (ARN) of the Lambda cloud function that
4099
+ # Amazon S3 can invoke when it detects events of the specified type.
4023
4100
  # @return [String]
4024
4101
  #
4025
4102
  # @!attribute [rw] events
4026
4103
  # @return [Array<String>]
4027
4104
  #
4028
4105
  # @!attribute [rw] filter
4029
- # Container for object key name filtering rules. For information about
4030
- # key name filtering, go to [Configuring Event Notifications][1] in
4031
- # the Amazon Simple Storage Service Developer Guide.
4106
+ # A container for object key name filtering rules. For information
4107
+ # about key name filtering, see [Configuring Event Notifications][1]
4108
+ # in the *Amazon Simple Storage Service Developer Guide*.
4032
4109
  #
4033
4110
  #
4034
4111
  #
@@ -5436,12 +5513,12 @@ module Aws::S3
5436
5513
  end
5437
5514
 
5438
5515
  # Container for the transition rule that describes when noncurrent
5439
- # objects transition to the STANDARD\_IA, ONEZONE\_IA or GLACIER storage
5440
- # class. If your bucket is versioning-enabled (or versioning is
5516
+ # objects transition to the STANDARD\_IA, ONEZONE\_IA, or GLACIER
5517
+ # storage class. If your bucket is versioning-enabled (or versioning is
5441
5518
  # suspended), you can set this action to request that Amazon S3
5442
- # transition noncurrent object versions to the STANDARD\_IA, ONEZONE\_IA
5443
- # or GLACIER storage class at a specific period in the object's
5444
- # lifetime.
5519
+ # transition noncurrent object versions to the STANDARD\_IA,
5520
+ # ONEZONE\_IA, or GLACIER storage class at a specific period in the
5521
+ # object's lifetime.
5445
5522
  #
5446
5523
  # @note When making an API call, you may pass NoncurrentVersionTransition
5447
5524
  # data as a hash:
@@ -5475,8 +5552,9 @@ module Aws::S3
5475
5552
  include Aws::Structure
5476
5553
  end
5477
5554
 
5478
- # Container for specifying the notification configuration of the bucket.
5479
- # If this element is empty, notifications are turned off on the bucket.
5555
+ # A container for specifying the notification configuration of the
5556
+ # bucket. If this element is empty, notifications are turned off for the
5557
+ # bucket.
5480
5558
  #
5481
5559
  # @note When making an API call, you may pass NotificationConfiguration
5482
5560
  # data as a hash:
@@ -5596,9 +5674,9 @@ module Aws::S3
5596
5674
  include Aws::Structure
5597
5675
  end
5598
5676
 
5599
- # Container for object key name filtering rules. For information about
5600
- # key name filtering, go to [Configuring Event Notifications][1] in the
5601
- # Amazon Simple Storage Service Developer Guide.
5677
+ # A container for object key name filtering rules. For information about
5678
+ # key name filtering, see [Configuring Event Notifications][1] in the
5679
+ # *Amazon Simple Storage Service Developer Guide*.
5602
5680
  #
5603
5681
  #
5604
5682
  #
@@ -5619,7 +5697,7 @@ module Aws::S3
5619
5697
  # }
5620
5698
  #
5621
5699
  # @!attribute [rw] key
5622
- # Container for object key name prefix and suffix filtering rules.
5700
+ # A container for object key name prefix and suffix filtering rules.
5623
5701
  # @return [Types::S3KeyFilter]
5624
5702
  #
5625
5703
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfigurationFilter AWS API Documentation
@@ -5862,7 +5940,7 @@ module Aws::S3
5862
5940
  # @return [String]
5863
5941
  #
5864
5942
  # @!attribute [rw] size
5865
- # Size of the uploaded part data.
5943
+ # Size in bytes of the uploaded part data.
5866
5944
  # @return [Integer]
5867
5945
  #
5868
5946
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Part AWS API Documentation
@@ -5875,16 +5953,30 @@ module Aws::S3
5875
5953
  include Aws::Structure
5876
5954
  end
5877
5955
 
5956
+ # The container element for this bucket's public-policy status.
5957
+ #
5958
+ # @!attribute [rw] is_public
5959
+ # The public-policy status for this bucket. `TRUE` indicates that this
5960
+ # bucket is public. `FALSE` indicates that the bucket is not public.
5961
+ # @return [Boolean]
5962
+ #
5963
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PolicyStatus AWS API Documentation
5964
+ #
5965
+ class PolicyStatus < Struct.new(
5966
+ :is_public)
5967
+ include Aws::Structure
5968
+ end
5969
+
5878
5970
  # @!attribute [rw] bytes_scanned
5879
- # Current number of object bytes scanned.
5971
+ # The current number of object bytes scanned.
5880
5972
  # @return [Integer]
5881
5973
  #
5882
5974
  # @!attribute [rw] bytes_processed
5883
- # Current number of uncompressed object bytes processed.
5975
+ # The current number of uncompressed object bytes processed.
5884
5976
  # @return [Integer]
5885
5977
  #
5886
5978
  # @!attribute [rw] bytes_returned
5887
- # Current number of bytes of records payload data returned.
5979
+ # The current number of bytes of records payload data returned.
5888
5980
  # @return [Integer]
5889
5981
  #
5890
5982
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Progress AWS API Documentation
@@ -5908,6 +6000,117 @@ module Aws::S3
5908
6000
  include Aws::Structure
5909
6001
  end
5910
6002
 
6003
+ # The container element for all Public Access Block configuration
6004
+ # options. You can enable the configuration options in any combination.
6005
+ #
6006
+ # Amazon S3 considers a bucket policy public unless at least one of the
6007
+ # following conditions is true:
6008
+ #
6009
+ # 1. The policy limits access to a set of CIDRs using `aws:SourceIp`.
6010
+ # For more information on CIDR, see
6011
+ # [http://www.rfc-editor.org/rfc/rfc4632.txt][1]
6012
+ #
6013
+ # 2. The policy grants permissions, not including any "bad actions,"
6014
+ # to one of the following:
6015
+ #
6016
+ # * A fixed AWS principal, user, role, or service principal
6017
+ #
6018
+ # * A fixed `aws:SourceArn`
6019
+ #
6020
+ # * A fixed `aws:SourceVpc`
6021
+ #
6022
+ # * A fixed `aws:SourceVpce`
6023
+ #
6024
+ # * A fixed `aws:SourceOwner`
6025
+ #
6026
+ # * A fixed `aws:SourceAccount`
6027
+ #
6028
+ # * A fixed value of
6029
+ # `s3:x-amz-server-side-encryption-aws-kms-key-id`
6030
+ #
6031
+ # * A fixed value of `aws:userid` outside the pattern
6032
+ # "`AROLEID:*`"
6033
+ #
6034
+ # "Bad actions" are those that could expose the data inside a bucket
6035
+ # to reads or writes by the public. These actions are `s3:Get*`,
6036
+ # `s3:List*`, `s3:AbortMultipartUpload`, `s3:Delete*`, `s3:Put*`, and
6037
+ # `s3:RestoreObject`.
6038
+ #
6039
+ # The star notation for bad actions indicates that all matching
6040
+ # operations are considered bad actions. For example, because `s3:Get*`
6041
+ # is a bad action, `s3:GetObject`, `s3:GetObjectVersion`, and
6042
+ # `s3:GetObjectAcl` are all bad actions.
6043
+ #
6044
+ #
6045
+ #
6046
+ # [1]: http://www.rfc-editor.org/rfc/rfc4632.txt
6047
+ #
6048
+ # @note When making an API call, you may pass PublicAccessBlockConfiguration
6049
+ # data as a hash:
6050
+ #
6051
+ # {
6052
+ # block_public_acls: false,
6053
+ # ignore_public_acls: false,
6054
+ # block_public_policy: false,
6055
+ # restrict_public_buckets: false,
6056
+ # }
6057
+ #
6058
+ # @!attribute [rw] block_public_acls
6059
+ # Specifies whether Amazon S3 should block public ACLs for this
6060
+ # bucket. Setting this element to `TRUE` causes the following
6061
+ # behavior:
6062
+ #
6063
+ # * PUT Bucket acl and PUT Object acl calls will fail if the specified
6064
+ # ACL allows public access.
6065
+ #
6066
+ # * PUT Object calls will fail if the request includes an object ACL.
6067
+ #
6068
+ # Note that enabling this setting doesn't affect existing policies or
6069
+ # ACLs.
6070
+ # @return [Boolean]
6071
+ #
6072
+ # @!attribute [rw] ignore_public_acls
6073
+ # Specifies whether Amazon S3 should ignore public ACLs for this
6074
+ # bucket. Setting this element to `TRUE` causes Amazon S3 to ignore
6075
+ # all public ACLs on this bucket and any objects that it contains.
6076
+ #
6077
+ # Note that enabling this setting doesn't affect the persistence of
6078
+ # any existing ACLs and doesn't prevent new public ACLs from being
6079
+ # set.
6080
+ # @return [Boolean]
6081
+ #
6082
+ # @!attribute [rw] block_public_policy
6083
+ # Specifies whether Amazon S3 should block public bucket policies for
6084
+ # this bucket. Setting this element to `TRUE` causes Amazon S3 to
6085
+ # reject calls to PUT Bucket policy if the specified bucket policy
6086
+ # allows public access.
6087
+ #
6088
+ # Note that enabling this setting doesn't affect existing bucket
6089
+ # policies.
6090
+ # @return [Boolean]
6091
+ #
6092
+ # @!attribute [rw] restrict_public_buckets
6093
+ # Specifies whether Amazon S3 should restrict public bucket policies
6094
+ # for this bucket. If this element is set to `TRUE`, then only the
6095
+ # bucket owner and AWS Services can access this bucket if it has a
6096
+ # public policy.
6097
+ #
6098
+ # Note that enabling this setting doesn't affect previously stored
6099
+ # bucket policies, except that public and cross-account access within
6100
+ # any public bucket policy, including non-public delegation to
6101
+ # specific accounts, is blocked.
6102
+ # @return [Boolean]
6103
+ #
6104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PublicAccessBlockConfiguration AWS API Documentation
6105
+ #
6106
+ class PublicAccessBlockConfiguration < Struct.new(
6107
+ :block_public_acls,
6108
+ :ignore_public_acls,
6109
+ :block_public_policy,
6110
+ :restrict_public_buckets)
6111
+ include Aws::Structure
6112
+ end
6113
+
5911
6114
  # @note When making an API call, you may pass PutBucketAccelerateConfigurationRequest
5912
6115
  # data as a hash:
5913
6116
  #
@@ -6496,8 +6699,8 @@ module Aws::S3
6496
6699
  # @return [String]
6497
6700
  #
6498
6701
  # @!attribute [rw] notification_configuration
6499
- # Container for specifying the notification configuration of the
6500
- # bucket. If this element is empty, notifications are turned off on
6702
+ # A container for specifying the notification configuration of the
6703
+ # bucket. If this element is empty, notifications are turned off for
6501
6704
  # the bucket.
6502
6705
  # @return [Types::NotificationConfiguration]
6503
6706
  #
@@ -6652,8 +6855,8 @@ module Aws::S3
6652
6855
  # @return [String]
6653
6856
  #
6654
6857
  # @!attribute [rw] replication_configuration
6655
- # Container for replication rules. You can add as many as 1,000 rules.
6656
- # Total replication configuration size can be up to 2 MB.
6858
+ # A container for replication rules. You can add up to 1,000 rules.
6859
+ # The maximum size of a replication configuration is 2 MB.
6657
6860
  # @return [Types::ReplicationConfiguration]
6658
6861
  #
6659
6862
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplicationRequest AWS API Documentation
@@ -7149,7 +7352,7 @@ module Aws::S3
7149
7352
  #
7150
7353
  # @!attribute [rw] tagging
7151
7354
  # The tag-set for the object. The tag-set must be encoded as URL Query
7152
- # parameters
7355
+ # parameters. (For example, "Key1=Value1")
7153
7356
  # @return [String]
7154
7357
  #
7155
7358
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRequest AWS API Documentation
@@ -7238,8 +7441,46 @@ module Aws::S3
7238
7441
  include Aws::Structure
7239
7442
  end
7240
7443
 
7241
- # Container for specifying an configuration when you want Amazon S3 to
7242
- # publish events to an Amazon Simple Queue Service (Amazon SQS) queue.
7444
+ # @note When making an API call, you may pass PutPublicAccessBlockRequest
7445
+ # data as a hash:
7446
+ #
7447
+ # {
7448
+ # bucket: "BucketName", # required
7449
+ # content_md5: "ContentMD5",
7450
+ # public_access_block_configuration: { # required
7451
+ # block_public_acls: false,
7452
+ # ignore_public_acls: false,
7453
+ # block_public_policy: false,
7454
+ # restrict_public_buckets: false,
7455
+ # },
7456
+ # }
7457
+ #
7458
+ # @!attribute [rw] bucket
7459
+ # The name of the Amazon S3 bucket whose Public Access Block
7460
+ # configuration you want to set.
7461
+ # @return [String]
7462
+ #
7463
+ # @!attribute [rw] content_md5
7464
+ # The MD5 hash of the `PutPublicBlock` request body.
7465
+ # @return [String]
7466
+ #
7467
+ # @!attribute [rw] public_access_block_configuration
7468
+ # The Public Access Block configuration that you want to apply to this
7469
+ # Amazon S3 bucket.
7470
+ # @return [Types::PublicAccessBlockConfiguration]
7471
+ #
7472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlockRequest AWS API Documentation
7473
+ #
7474
+ class PutPublicAccessBlockRequest < Struct.new(
7475
+ :bucket,
7476
+ :content_md5,
7477
+ :public_access_block_configuration)
7478
+ include Aws::Structure
7479
+ end
7480
+
7481
+ # A container for specifying the configuration for publication of
7482
+ # messages to an Amazon Simple Queue Service (Amazon SQS) queue.when
7483
+ # Amazon S3 detects specified events.
7243
7484
  #
7244
7485
  # @note When making an API call, you may pass QueueConfiguration
7245
7486
  # data as a hash:
@@ -7261,23 +7502,24 @@ module Aws::S3
7261
7502
  # }
7262
7503
  #
7263
7504
  # @!attribute [rw] id
7264
- # Optional unique identifier for configurations in a notification
7505
+ # An optional unique identifier for configurations in a notification
7265
7506
  # configuration. If you don't provide one, Amazon S3 will assign an
7266
7507
  # ID.
7267
7508
  # @return [String]
7268
7509
  #
7269
7510
  # @!attribute [rw] queue_arn
7270
- # Amazon SQS queue ARN to which Amazon S3 will publish a message when
7271
- # it detects events of specified type.
7511
+ # The Amazon Resource Name (ARN) of the Amazon SQS queue to which
7512
+ # Amazon S3 will publish a message when it detects events of the
7513
+ # specified type.
7272
7514
  # @return [String]
7273
7515
  #
7274
7516
  # @!attribute [rw] events
7275
7517
  # @return [Array<String>]
7276
7518
  #
7277
7519
  # @!attribute [rw] filter
7278
- # Container for object key name filtering rules. For information about
7279
- # key name filtering, go to [Configuring Event Notifications][1] in
7280
- # the Amazon Simple Storage Service Developer Guide.
7520
+ # A container for object key name filtering rules. For information
7521
+ # about key name filtering, see [Configuring Event Notifications][1]
7522
+ # in the *Amazon Simple Storage Service Developer Guide*.
7281
7523
  #
7282
7524
  #
7283
7525
  #
@@ -7305,13 +7547,13 @@ module Aws::S3
7305
7547
  # }
7306
7548
  #
7307
7549
  # @!attribute [rw] id
7308
- # Optional unique identifier for configurations in a notification
7550
+ # An optional unique identifier for configurations in a notification
7309
7551
  # configuration. If you don't provide one, Amazon S3 will assign an
7310
7552
  # ID.
7311
7553
  # @return [String]
7312
7554
  #
7313
7555
  # @!attribute [rw] event
7314
- # Bucket event for which to send notifications.
7556
+ # The bucket event for which to send notifications.
7315
7557
  # @return [String]
7316
7558
  #
7317
7559
  # @!attribute [rw] events
@@ -7420,8 +7662,8 @@ module Aws::S3
7420
7662
  include Aws::Structure
7421
7663
  end
7422
7664
 
7423
- # Container for replication rules. You can add as many as 1,000 rules.
7424
- # Total replication configuration size can be up to 2 MB.
7665
+ # A container for replication rules. You can add up to 1,000 rules. The
7666
+ # maximum size of a replication configuration is 2 MB.
7425
7667
  #
7426
7668
  # @note When making an API call, you may pass ReplicationConfiguration
7427
7669
  # data as a hash:
@@ -7474,14 +7716,15 @@ module Aws::S3
7474
7716
  # }
7475
7717
  #
7476
7718
  # @!attribute [rw] role
7477
- # Amazon Resource Name (ARN) of an IAM role for Amazon S3 to assume
7478
- # when replicating the objects.
7719
+ # The Amazon Resource Name (ARN) of the AWS Identity and Access
7720
+ # Management (IAM) role that Amazon S3 can assume when replicating the
7721
+ # objects.
7479
7722
  # @return [String]
7480
7723
  #
7481
7724
  # @!attribute [rw] rules
7482
- # Container for one or more replication rules. Replication
7483
- # configuration must have at least one rule and can contain up to
7484
- # 1,000 rules.
7725
+ # A container for one or more replication rules. A replication
7726
+ # configuration must have at least one rule and can contain a maximum
7727
+ # of 1,000 rules.
7485
7728
  # @return [Array<Types::ReplicationRule>]
7486
7729
  #
7487
7730
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationConfiguration AWS API Documentation
@@ -7492,7 +7735,7 @@ module Aws::S3
7492
7735
  include Aws::Structure
7493
7736
  end
7494
7737
 
7495
- # Container for information about a particular replication rule.
7738
+ # A container for information about a specific replication rule.
7496
7739
  #
7497
7740
  # @note When making an API call, you may pass ReplicationRule
7498
7741
  # data as a hash:
@@ -7540,56 +7783,57 @@ module Aws::S3
7540
7783
  # }
7541
7784
  #
7542
7785
  # @!attribute [rw] id
7543
- # Unique identifier for the rule. The value cannot be longer than 255
7786
+ # A unique identifier for the rule. The maximum value is 255
7544
7787
  # characters.
7545
7788
  # @return [String]
7546
7789
  #
7547
7790
  # @!attribute [rw] priority
7548
7791
  # The priority associated with the rule. If you specify multiple rules
7549
- # in a replication configuration, then Amazon S3 applies rule priority
7550
- # in the event there are conflicts (two or more rules identify the
7551
- # same object based on filter specified). The rule with higher
7552
- # priority takes precedence. For example,
7792
+ # in a replication configuration, Amazon S3 prioritizes the rules to
7793
+ # prevent conflicts when filtering. If two or more rules identify the
7794
+ # same object based on a specified filter, the rule with higher
7795
+ # priority takes precedence. For example:
7553
7796
  #
7554
7797
  # * Same object quality prefix based filter criteria If prefixes you
7555
- # specified in multiple rules overlap.
7798
+ # specified in multiple rules overlap
7556
7799
  #
7557
7800
  # * Same object qualify tag based filter criteria specified in
7558
7801
  # multiple rules
7559
7802
  #
7560
7803
  # For more information, see [Cross-Region Replication (CRR)](
7561
7804
  # https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in the
7562
- # Amazon S3 Developer Guide.
7805
+ # *Amazon S3 Developer Guide*.
7563
7806
  # @return [Integer]
7564
7807
  #
7565
7808
  # @!attribute [rw] prefix
7566
- # Object keyname prefix identifying one or more objects to which the
7567
- # rule applies. Maximum prefix length can be up to 1,024 characters.
7809
+ # An object keyname prefix that identifies the object or objects to
7810
+ # which the rule applies. The maximum prefix length is 1,024
7811
+ # characters.
7568
7812
  # @return [String]
7569
7813
  #
7570
7814
  # @!attribute [rw] filter
7571
- # Filter that identifies subset of objects to which the replication
7572
- # rule applies. A `Filter` must specify exactly one `Prefix`, `Tag`,
7573
- # or an `And` child element.
7815
+ # A filter that identifies the subset of objects to which the
7816
+ # replication rule applies. A `Filter` must specify exactly one
7817
+ # `Prefix`, `Tag`, or an `And` child element.
7574
7818
  # @return [Types::ReplicationRuleFilter]
7575
7819
  #
7576
7820
  # @!attribute [rw] status
7577
- # The rule is ignored if status is not Enabled.
7821
+ # If status isn't enabled, the rule is ignored.
7578
7822
  # @return [String]
7579
7823
  #
7580
7824
  # @!attribute [rw] source_selection_criteria
7581
- # Container that describes additional filters in identifying source
7582
- # objects that you want to replicate. Currently, Amazon S3 supports
7583
- # only the filter that you can specify for objects created with
7584
- # server-side encryption using an AWS KMS-managed key. You can choose
7585
- # to enable or disable replication of these objects.
7586
- #
7587
- # if you want Amazon S3 to replicate objects created with server-side
7588
- # encryption using AWS KMS-managed keys.
7825
+ # A container that describes additional filters for identifying the
7826
+ # source objects that you want to replicate. You can choose to enable
7827
+ # or disable the replication of these objects. Currently, Amazon S3
7828
+ # supports only the filter that you can specify for objects created
7829
+ # with server-side encryption using an AWS KMS-Managed Key (SSE-KMS).
7830
+ #
7831
+ # If you want Amazon S3 to replicate objects created with server-side
7832
+ # encryption using AWS KMS-Managed Keys.
7589
7833
  # @return [Types::SourceSelectionCriteria]
7590
7834
  #
7591
7835
  # @!attribute [rw] destination
7592
- # Container for replication destination information.
7836
+ # A container for information about the replication destination.
7593
7837
  # @return [Types::Destination]
7594
7838
  #
7595
7839
  # @!attribute [rw] delete_marker_replication
@@ -7637,9 +7881,9 @@ module Aws::S3
7637
7881
  include Aws::Structure
7638
7882
  end
7639
7883
 
7640
- # Filter that identifies subset of objects to which the replication rule
7641
- # applies. A `Filter` must specify exactly one `Prefix`, `Tag`, or an
7642
- # `And` child element.
7884
+ # A filter that identifies the subset of objects to which the
7885
+ # replication rule applies. A `Filter` must specify exactly one
7886
+ # `Prefix`, `Tag`, or an `And` child element.
7643
7887
  #
7644
7888
  # @note When making an API call, you may pass ReplicationRuleFilter
7645
7889
  # data as a hash:
@@ -7662,25 +7906,25 @@ module Aws::S3
7662
7906
  # }
7663
7907
  #
7664
7908
  # @!attribute [rw] prefix
7665
- # Object keyname prefix that identifies subset of objects to which the
7666
- # rule applies.
7909
+ # An object keyname prefix that identifies the subset of objects to
7910
+ # which the rule applies.
7667
7911
  # @return [String]
7668
7912
  #
7669
7913
  # @!attribute [rw] tag
7670
- # Container for specifying a tag key and value.
7914
+ # A container for specifying a tag key and value.
7671
7915
  #
7672
- # The rule applies only to objects having the tag in its tagset.
7916
+ # The rule applies only to objects that have the tag in their tag set.
7673
7917
  # @return [Types::Tag]
7674
7918
  #
7675
7919
  # @!attribute [rw] and
7676
- # Container for specifying rule filters. These filters determine the
7677
- # subset of objects to which the rule applies. The element is required
7678
- # only if you specify more than one filter. For example:
7920
+ # A container for specifying rule filters. The filters determine the
7921
+ # subset of objects to which the rule applies. This element is
7922
+ # required only if you specify more than one filter. For example:
7679
7923
  #
7680
- # * You specify both a `Prefix` and a `Tag` filters. Then you wrap
7681
- # these in an `And` tag.
7924
+ # * If you specify both a `Prefix` and a `Tag` filter, wrap these
7925
+ # filters in an `And` tag.
7682
7926
  #
7683
- # * You specify filter based on multiple tags. Then you wrap the `Tag`
7927
+ # * If you specify a filter based on multiple tags, wrap the `Tag`
7684
7928
  # elements in an `And` tag.
7685
7929
  # @return [Types::ReplicationRuleAndOperator]
7686
7930
  #
@@ -8029,8 +8273,7 @@ module Aws::S3
8029
8273
  # @!attribute [rw] redirect
8030
8274
  # Container for redirect information. You can redirect requests to
8031
8275
  # another host, to another page, or with another protocol. In the
8032
- # event of an error, you can can specify a different error code to
8033
- # return.
8276
+ # event of an error, you can specify a different error code to return.
8034
8277
  # @return [Types::Redirect]
8035
8278
  #
8036
8279
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RoutingRule AWS API Documentation
@@ -8092,11 +8335,11 @@ module Aws::S3
8092
8335
  #
8093
8336
  # @!attribute [rw] noncurrent_version_transition
8094
8337
  # Container for the transition rule that describes when noncurrent
8095
- # objects transition to the STANDARD\_IA, ONEZONE\_IA or GLACIER
8338
+ # objects transition to the STANDARD\_IA, ONEZONE\_IA, or GLACIER
8096
8339
  # storage class. If your bucket is versioning-enabled (or versioning
8097
8340
  # is suspended), you can set this action to request that Amazon S3
8098
8341
  # transition noncurrent object versions to the STANDARD\_IA,
8099
- # ONEZONE\_IA or GLACIER storage class at a specific period in the
8342
+ # ONEZONE\_IA, or GLACIER storage class at a specific period in the
8100
8343
  # object's lifetime.
8101
8344
  # @return [Types::NoncurrentVersionTransition]
8102
8345
  #
@@ -8129,7 +8372,7 @@ module Aws::S3
8129
8372
  include Aws::Structure
8130
8373
  end
8131
8374
 
8132
- # Container for object key name prefix and suffix filtering rules.
8375
+ # A container for object key name prefix and suffix filtering rules.
8133
8376
  #
8134
8377
  # @note When making an API call, you may pass S3KeyFilter
8135
8378
  # data as a hash:
@@ -8144,8 +8387,8 @@ module Aws::S3
8144
8387
  # }
8145
8388
  #
8146
8389
  # @!attribute [rw] filter_rules
8147
- # A list of containers for key value pair that defines the criteria
8148
- # for the filter rule.
8390
+ # A list of containers for the key value pair that defines the
8391
+ # criteria for the filter rule.
8149
8392
  # @return [Array<Types::FilterRule>]
8150
8393
  #
8151
8394
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/S3KeyFilter AWS API Documentation
@@ -8247,7 +8490,7 @@ module Aws::S3
8247
8490
  include Aws::Structure
8248
8491
  end
8249
8492
 
8250
- # Specifies the use of SSE-KMS to encrypt delievered Inventory reports.
8493
+ # Specifies the use of SSE-KMS to encrypt delivered Inventory reports.
8251
8494
  #
8252
8495
  # @note When making an API call, you may pass SSEKMS
8253
8496
  # data as a hash:
@@ -8268,7 +8511,7 @@ module Aws::S3
8268
8511
  include Aws::Structure
8269
8512
  end
8270
8513
 
8271
- # Specifies the use of SSE-S3 to encrypt delievered Inventory reports.
8514
+ # Specifies the use of SSE-S3 to encrypt delivered Inventory reports.
8272
8515
  #
8273
8516
  # @api private
8274
8517
  #
@@ -8288,12 +8531,12 @@ module Aws::S3
8288
8531
 
8289
8532
  # Request to filter the contents of an Amazon S3 object based on a
8290
8533
  # simple Structured Query Language (SQL) statement. In the request,
8291
- # along with the SQL expression, you must also specify a data
8292
- # serialization format (JSON or CSV) of the object. Amazon S3 uses this
8293
- # to parse object data into records, and returns only records that match
8294
- # the specified SQL expression. You must also specify the data
8295
- # serialization format for the response. For more information, go to
8296
- # [S3Select API Documentation][1].
8534
+ # along with the SQL expression, you must specify a data serialization
8535
+ # format (JSON or CSV) of the object. Amazon S3 uses this to parse
8536
+ # object data into records. It returns only records that match the
8537
+ # specified SQL expression. You must also specify the data serialization
8538
+ # format for the response. For more information, see [S3Select API
8539
+ # Documentation][1].
8297
8540
  #
8298
8541
  #
8299
8542
  #
@@ -8345,16 +8588,16 @@ module Aws::S3
8345
8588
  # }
8346
8589
  #
8347
8590
  # @!attribute [rw] bucket
8348
- # The S3 Bucket.
8591
+ # The S3 bucket.
8349
8592
  # @return [String]
8350
8593
  #
8351
8594
  # @!attribute [rw] key
8352
- # The Object Key.
8595
+ # The object key.
8353
8596
  # @return [String]
8354
8597
  #
8355
8598
  # @!attribute [rw] sse_customer_algorithm
8356
8599
  # The SSE Algorithm used to encrypt the object. For more information,
8357
- # go to [ Server-Side Encryption (Using Customer-Provided Encryption
8600
+ # see [ Server-Side Encryption (Using Customer-Provided Encryption
8358
8601
  # Keys][1].
8359
8602
  #
8360
8603
  #
@@ -8363,7 +8606,7 @@ module Aws::S3
8363
8606
  # @return [String]
8364
8607
  #
8365
8608
  # @!attribute [rw] sse_customer_key
8366
- # The SSE Customer Key. For more information, go to [ Server-Side
8609
+ # The SSE Customer Key. For more information, see [ Server-Side
8367
8610
  # Encryption (Using Customer-Provided Encryption Keys][1].
8368
8611
  #
8369
8612
  #
@@ -8372,7 +8615,7 @@ module Aws::S3
8372
8615
  # @return [String]
8373
8616
  #
8374
8617
  # @!attribute [rw] sse_customer_key_md5
8375
- # The SSE Customer Key MD5. For more information, go to [ Server-Side
8618
+ # The SSE Customer Key MD5. For more information, see [ Server-Side
8376
8619
  # Encryption (Using Customer-Provided Encryption Keys][1].
8377
8620
  #
8378
8621
  #
@@ -8385,7 +8628,7 @@ module Aws::S3
8385
8628
  # @return [String]
8386
8629
  #
8387
8630
  # @!attribute [rw] expression_type
8388
- # The type of the provided expression (e.g., SQL).
8631
+ # The type of the provided expression (for example., SQL).
8389
8632
  # @return [String]
8390
8633
  #
8391
8634
  # @!attribute [rw] request_progress
@@ -8568,7 +8811,7 @@ module Aws::S3
8568
8811
  include Aws::Structure
8569
8812
  end
8570
8813
 
8571
- # Container for filters that define which source objects should be
8814
+ # A container for filters that define which source objects should be
8572
8815
  # replicated.
8573
8816
  #
8574
8817
  # @note When making an API call, you may pass SourceSelectionCriteria
@@ -8581,9 +8824,9 @@ module Aws::S3
8581
8824
  # }
8582
8825
  #
8583
8826
  # @!attribute [rw] sse_kms_encrypted_objects
8584
- # Container for filter information of selection of KMS Encrypted S3
8585
- # objects. The element is required if you include
8586
- # `SourceSelectionCriteria` in the replication configuration.
8827
+ # A container for filter information for the selection of S3 objects
8828
+ # encrypted with AWS KMS. If you include `SourceSelectionCriteria` in
8829
+ # the replication configuration, this element is required.
8587
8830
  # @return [Types::SseKmsEncryptedObjects]
8588
8831
  #
8589
8832
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SourceSelectionCriteria AWS API Documentation
@@ -8593,8 +8836,8 @@ module Aws::S3
8593
8836
  include Aws::Structure
8594
8837
  end
8595
8838
 
8596
- # Container for filter information of selection of KMS Encrypted S3
8597
- # objects.
8839
+ # A container for filter information for the selection of S3 objects
8840
+ # encrypted with AWS KMS.
8598
8841
  #
8599
8842
  # @note When making an API call, you may pass SseKmsEncryptedObjects
8600
8843
  # data as a hash:
@@ -8604,8 +8847,8 @@ module Aws::S3
8604
8847
  # }
8605
8848
  #
8606
8849
  # @!attribute [rw] status
8607
- # The replication for KMS encrypted S3 objects is disabled if status
8608
- # is not Enabled.
8850
+ # If the status is not `Enabled`, replication for S3 objects encrypted
8851
+ # with AWS KMS is disabled.
8609
8852
  # @return [String]
8610
8853
  #
8611
8854
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SseKmsEncryptedObjects AWS API Documentation
@@ -8616,15 +8859,15 @@ module Aws::S3
8616
8859
  end
8617
8860
 
8618
8861
  # @!attribute [rw] bytes_scanned
8619
- # Total number of object bytes scanned.
8862
+ # The total number of object bytes scanned.
8620
8863
  # @return [Integer]
8621
8864
  #
8622
8865
  # @!attribute [rw] bytes_processed
8623
- # Total number of uncompressed object bytes processed.
8866
+ # The total number of uncompressed object bytes processed.
8624
8867
  # @return [Integer]
8625
8868
  #
8626
8869
  # @!attribute [rw] bytes_returned
8627
- # Total number of bytes of records payload data returned.
8870
+ # The total number of bytes of records payload data returned.
8628
8871
  # @return [Integer]
8629
8872
  #
8630
8873
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Stats AWS API Documentation
@@ -8784,9 +9027,9 @@ module Aws::S3
8784
9027
  include Aws::Structure
8785
9028
  end
8786
9029
 
8787
- # Container for specifying the configuration when you want Amazon S3 to
8788
- # publish events to an Amazon Simple Notification Service (Amazon SNS)
8789
- # topic.
9030
+ # A container for specifying the configuration for publication of
9031
+ # messages to an Amazon Simple Notification Service (Amazon SNS)
9032
+ # topic.when Amazon S3 detects specified events.
8790
9033
  #
8791
9034
  # @note When making an API call, you may pass TopicConfiguration
8792
9035
  # data as a hash:
@@ -8808,23 +9051,24 @@ module Aws::S3
8808
9051
  # }
8809
9052
  #
8810
9053
  # @!attribute [rw] id
8811
- # Optional unique identifier for configurations in a notification
9054
+ # An optional unique identifier for configurations in a notification
8812
9055
  # configuration. If you don't provide one, Amazon S3 will assign an
8813
9056
  # ID.
8814
9057
  # @return [String]
8815
9058
  #
8816
9059
  # @!attribute [rw] topic_arn
8817
- # Amazon SNS topic ARN to which Amazon S3 will publish a message when
8818
- # it detects events of specified type.
9060
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic to which
9061
+ # Amazon S3 will publish a message when it detects events of the
9062
+ # specified type.
8819
9063
  # @return [String]
8820
9064
  #
8821
9065
  # @!attribute [rw] events
8822
9066
  # @return [Array<String>]
8823
9067
  #
8824
9068
  # @!attribute [rw] filter
8825
- # Container for object key name filtering rules. For information about
8826
- # key name filtering, go to [Configuring Event Notifications][1] in
8827
- # the Amazon Simple Storage Service Developer Guide.
9069
+ # A container for object key name filtering rules. For information
9070
+ # about key name filtering, see [Configuring Event Notifications][1]
9071
+ # in the *Amazon Simple Storage Service Developer Guide*.
8828
9072
  #
8829
9073
  #
8830
9074
  #
@@ -8852,7 +9096,7 @@ module Aws::S3
8852
9096
  # }
8853
9097
  #
8854
9098
  # @!attribute [rw] id
8855
- # Optional unique identifier for configurations in a notification
9099
+ # An optional unique identifier for configurations in a notification
8856
9100
  # configuration. If you don't provide one, Amazon S3 will assign an
8857
9101
  # ID.
8858
9102
  # @return [String]