Class: Aws::S3::Types::ReplicationRule

Inherits:
Struct
  • Object
show all
Includes:
Aws::Structure
Defined in:
lib/aws-sdk-s3/types.rb

Overview

Note:

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
    },
  },
  destination: { # required
    bucket: "BucketName", # required
    account: "AccountId",
    storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER
    access_control_translation: {
      owner: "Destination", # required, accepts Destination
    },
    encryption_configuration: {
      replica_kms_key_id: "ReplicaKmsKeyID",
    },
  },
  delete_marker_replication: {
    status: "Enabled", # accepts Enabled, Disabled
  },
}

A container for information about a specific replication rule.

Instance Attribute Summary collapse

Instance Attribute Details

#delete_marker_replicationTypes::DeleteMarkerReplication

Specifies whether Amazon S3 should replicate delete makers.



8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#destinationTypes::Destination

A container for information about the replication destination.

Returns:



8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#filterTypes::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.



8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#idString

A unique identifier for the rule. The maximum value is 255 characters.

Returns:

  • (String)


8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#prefixString

An object keyname prefix that identifies the object or objects to which the rule applies. The maximum prefix length is 1,024 characters.

Returns:

  • (String)


8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#priorityInteger

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 [Cross-Region Replication (CRR)]( docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in the *Amazon S3 Developer Guide*.

Returns:

  • (Integer)


8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#source_selection_criteriaTypes::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 an AWS KMS-Managed Key (SSE-KMS).

If you want Amazon S3 to replicate objects created with server-side encryption using AWS KMS-Managed Keys.



8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end

#statusString

If status isn’t enabled, the rule is ignored.

Returns:

  • (String)


8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
# File 'lib/aws-sdk-s3/types.rb', line 8409

class ReplicationRule < Struct.new(
  :id,
  :priority,
  :prefix,
  :filter,
  :status,
  :source_selection_criteria,
  :destination,
  :delete_marker_replication)
  include Aws::Structure
end