You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::S3::Types::PutBucketReplicationRequest

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing PutBucketReplicationRequest as input to an Aws::Client method, you can use a vanilla Hash:

{
  bucket: "BucketName", # required
  content_md5: "ContentMD5",
  replication_configuration: { # required
    role: "Role", # required
    rules: [ # required
      {
        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, OUTPOSTS
          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
        },
      },
    ],
  },
  token: "ObjectLockToken",
  expected_bucket_owner: "AccountId",
  use_accelerate_endpoint: false,
}

Instance Attribute Summary collapse

Instance Attribute Details

#bucketString

The name of the bucket

Returns:

  • (String)

    The name of the bucket.

#content_md5String

The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see RFC 1864.

For requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is calculated automatically.

Returns:

  • (String)

    The base64-encoded 128-bit MD5 digest of the data.

#expected_bucket_ownerString

The account id of the expected bucket owner. If the bucket is owned by a different account, the request will fail with an HTTP 403 (Access Denied) error.

Returns:

  • (String)

    The account id of the expected bucket owner.

#replication_configurationTypes::ReplicationConfiguration

A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.

Returns:

#tokenString

A token to allow Object Lock to be enabled for an existing bucket.

Returns:

  • (String)

    A token to allow Object Lock to be enabled for an existing bucket.

#use_accelerate_endpointBoolean

When true, the "https://BUCKETNAME.s3-accelerate.amazonaws.com" endpoint will be used.

Returns: