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
},
replica_modifications: {
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, OUTPOSTS, GLACIER_IR
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: {
minutes: 1,
},
},
},
delete_marker_replication: {
status: "Enabled", # accepts Enabled, Disabled
},
}
Specifies which Amazon S3 objects to replicate and where to store the replicas.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#delete_marker_replication ⇒ Types::DeleteMarkerReplication
Specifies whether Amazon S3 replicates 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 indicates which rule has precedence whenever two or more replication rules conflict.
-
#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 delete markers. If you specify a ‘Filter` in your replication configuration, you must also include a `DeleteMarkerReplication` element. If your `Filter` includes a `Tag` element, the `DeleteMarkerReplication` `Status` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration].
For more information about delete marker replication, see [Basic Rule Configuration].
<note markdown=“1”> If you are using an earlier version of the replication configuration, Amazon S3 handles 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/delete-marker-replication.html [3]: docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] 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).
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] include Aws::Structure end |
#existing_object_replication ⇒ Types::ExistingObjectReplication
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] 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.
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] include Aws::Structure end |
#id ⇒ String
A unique identifier for the rule. The maximum value is 255 characters.
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] 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.
Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see [ XML related object key constraints].
[1]: docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] include Aws::Structure end |
#priority ⇒ Integer
The priority indicates which rule has precedence whenever two or more replication rules conflict. Amazon S3 will attempt to replicate objects according to all replication rules. However, if there are two or more rules with the same destination bucket, then objects will be replicated according to the rule with the highest priority. The higher the number, the higher the priority.
For more information, see [Replication] in the *Amazon S3 User Guide*.
[1]: docs.aws.amazon.com/AmazonS3/latest/dev/replication.html
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] 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 managed key stored in Amazon Web Services Key Management Service (SSE-KMS).
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] include Aws::Structure end |
#status ⇒ String
Specifies whether the rule is enabled.
14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 |
# File 'lib/aws-sdk-s3/types.rb', line 14737 class ReplicationRule < Struct.new( :id, :priority, :prefix, :filter, :status, :source_selection_criteria, :existing_object_replication, :destination, :delete_marker_replication) SENSITIVE = [] include Aws::Structure end |