Class: Aws::S3::Types::ReplicationRule
- Inherits:
-
Struct
- Object
- Struct
- Aws::S3::Types::ReplicationRule
- Includes:
- Aws::Structure
- Defined in:
- lib/aws-sdk-s3/types.rb
Overview
When making an API call, you may pass ReplicationRule data as a hash:
{
id: "ID",
priority: 1,
prefix: "Prefix",
filter: {
prefix: "Prefix",
tag: {
key: "ObjectKey", # required
value: "Value", # required
},
and: {
prefix: "Prefix",
tags: [
{
key: "ObjectKey", # required
value: "Value", # required
},
],
},
},
status: "Enabled", # required, accepts Enabled, Disabled
source_selection_criteria: {
sse_kms_encrypted_objects: {
status: "Enabled", # required, accepts Enabled, Disabled
},
},
existing_object_replication: {
status: "Enabled", # required, accepts Enabled, Disabled
},
destination: { # required
bucket: "BucketName", # required
account: "AccountId",
storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
access_control_translation: {
owner: "Destination", # required, accepts Destination
},
encryption_configuration: {
replica_kms_key_id: "ReplicaKmsKeyID",
},
replication_time: {
status: "Enabled", # required, accepts Enabled, Disabled
time: { # required
minutes: 1,
},
},
metrics: {
status: "Enabled", # required, accepts Enabled, Disabled
event_threshold: { # required
minutes: 1,
},
},
},
delete_marker_replication: {
status: "Enabled", # accepts Enabled, Disabled
},
}
Specifies which Amazon S3 objects to replicate and where to store the replicas.
Instance Attribute Summary collapse
-
#delete_marker_replication ⇒ Types::DeleteMarkerReplication
Specifies whether Amazon S3 replicates the delete markers.
-
#destination ⇒ Types::Destination
A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).
- #existing_object_replication ⇒ Types::ExistingObjectReplication
-
#filter ⇒ Types::ReplicationRuleFilter
A filter that identifies the subset of objects to which the replication rule applies.
-
#id ⇒ String
A unique identifier for the rule.
-
#prefix ⇒ String
An object key name prefix that identifies the object or objects to which the rule applies.
-
#priority ⇒ Integer
The priority associated with the rule.
-
#source_selection_criteria ⇒ Types::SourceSelectionCriteria
A container that describes additional filters for identifying the source objects that you want to replicate.
-
#status ⇒ String
Specifies whether the rule is enabled.
Instance Attribute Details
#delete_marker_replication ⇒ Types::DeleteMarkerReplication
Specifies whether Amazon S3 replicates the delete markers. If you specify a ‘Filter`, you must specify this element. However, in the latest version of replication configuration (when `Filter` is specified), Amazon S3 doesn’t replicate delete markers. Therefore, the ‘DeleteMarkerReplication` element can contain only <Status>Disabled</Status>. For an example configuration, see [Basic Rule Configuration].
<note markdown=“1”> If you don’t specify the ‘Filter` element, Amazon S3 assumes that the replication configuration is the earlier version, V1. In the earlier version, Amazon S3 handled replication of delete markers differently. For more information, see [Backward Compatibility].
</note>
[1]: docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config [2]: docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#destination ⇒ Types::Destination
A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#existing_object_replication ⇒ Types::ExistingObjectReplication
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#filter ⇒ Types::ReplicationRuleFilter
A filter that identifies the subset of objects to which the replication rule applies. A ‘Filter` must specify exactly one `Prefix`, `Tag`, or an `And` child element.
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#id ⇒ String
A unique identifier for the rule. The maximum value is 255 characters.
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#prefix ⇒ String
An object key name prefix that identifies the object or objects to which the rule applies. The maximum prefix length is 1,024 characters. To include all objects in a bucket, specify an empty string.
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#priority ⇒ Integer
The priority associated with the rule. If you specify multiple rules in a replication configuration, Amazon S3 prioritizes the rules to prevent conflicts when filtering. If two or more rules identify the same object based on a specified filter, the rule with higher priority takes precedence. For example:
-
Same object quality prefix-based filter criteria if prefixes you specified in multiple rules overlap
-
Same object qualify tag-based filter criteria specified in multiple rules
For more information, see [Replication]( docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the *Amazon Simple Storage Service Developer Guide*.
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#source_selection_criteria ⇒ Types::SourceSelectionCriteria
A container that describes additional filters for identifying the source objects that you want to replicate. You can choose to enable or disable the replication of these objects. Currently, Amazon S3 supports only the filter that you can specify for objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service (SSE-KMS).
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |
#status ⇒ String
Specifies whether the rule is enabled.
10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 |
# File 'lib/aws-sdk-s3/types.rb', line 10786 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) include Aws::Structure end |