1. Packages
  2. Packages
  3. Volcenginecc Provider
  4. API Docs
  5. tos
  6. BucketMirrorBack
Viewing docs for volcenginecc v0.0.49
published on Thursday, Jul 16, 2026 by Volcengine
volcenginecc logo
Viewing docs for volcenginecc v0.0.49
published on Thursday, Jul 16, 2026 by Volcengine

    Configure origin fetch rules for the specified TOS bucket. When an object request meets the specified conditions, TOS can fetch the object from a public or private origin according to the rules.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as volcenginecc from "@volcengine/pulumi-volcenginecc";
    
    const tOSBucketMirrorBackDemo = new volcenginecc.tos.BucketMirrorBack("TOSBucketMirrorBackDemo", {
        bucket: "ccapi-test",
        rules: [{
            condition: {
                httpCode: 404,
                httpMethod: [
                    "GET",
                    "HEAD",
                ],
                keyPrefix: "object-key-prefix",
                keySuffix: "object-key-suffix",
                allowHost: ["example.volcengine.com"],
            },
            id: "rule-003",
            redirect: {
                fetchHeaderToMetaDataRules: [{
                    metaDataSuffix: "-meta",
                    sourceHeader: "X-Custom-Header",
                }],
                fetchSourceOnRedirect: false,
                fetchSourceOnRedirectWithQuery: false,
                followRedirect: true,
                mirrorHeader: {
                    passAll: true,
                    pass: [
                        "aaa",
                        "bbb",
                    ],
                    remove: [
                        "xxx",
                        "yyy",
                    ],
                    set: [{
                        key: "X-Set-Header",
                        value: "set-value",
                    }],
                },
                passHeaderFromSource: ["X-Source-Header"],
                passQuery: true,
                passStatusCodeFromSource: [
                    404,
                    500,
                ],
                privateSource: {
                    sourceEndpoint: {
                        primary: [{
                            bucketName: "primary-bucket",
                            endpoint: "http://xxxxx.volces.com",
                            credentialProvider: {
                                staticCredential: {
                                    storageVendor: "S3",
                                    skEncryptType: "",
                                    sk: "sk-test-primary",
                                    ak: "ak-test-primary",
                                },
                                role: "",
                                region: "cn-beijing",
                            },
                        }],
                        follower: [{
                            bucketName: "follower-bucket",
                            endpoint: "http://xxxxx.volces.com",
                            credentialProvider: {
                                staticCredential: {
                                    storageVendor: "S3",
                                    skEncryptType: "",
                                    sk: "sk-test-follower",
                                    ak: "ak-test-follower",
                                },
                                role: "",
                                region: "cn-beijing",
                            },
                        }],
                    },
                },
                redirectType: "Mirror",
                transform: {
                    withKeyPrefix: "addtional-key-prefix",
                    withKeySuffix: "addtional-key-suffix",
                    replaceKeyPrefix: {
                        keyPrefix: "key-prefix",
                        replaceWith: "replace-with",
                    },
                },
            },
        }],
    });
    
    import pulumi
    import pulumi_volcenginecc as volcenginecc
    
    t_os_bucket_mirror_back_demo = volcenginecc.tos.BucketMirrorBack("TOSBucketMirrorBackDemo",
        bucket="ccapi-test",
        rules=[{
            "condition": {
                "http_code": 404,
                "http_method": [
                    "GET",
                    "HEAD",
                ],
                "key_prefix": "object-key-prefix",
                "key_suffix": "object-key-suffix",
                "allow_host": ["example.volcengine.com"],
            },
            "id": "rule-003",
            "redirect": {
                "fetch_header_to_meta_data_rules": [{
                    "meta_data_suffix": "-meta",
                    "source_header": "X-Custom-Header",
                }],
                "fetch_source_on_redirect": False,
                "fetch_source_on_redirect_with_query": False,
                "follow_redirect": True,
                "mirror_header": {
                    "pass_all": True,
                    "pass_": [
                        "aaa",
                        "bbb",
                    ],
                    "remove": [
                        "xxx",
                        "yyy",
                    ],
                    "set": [{
                        "key": "X-Set-Header",
                        "value": "set-value",
                    }],
                },
                "pass_header_from_source": ["X-Source-Header"],
                "pass_query": True,
                "pass_status_code_from_source": [
                    404,
                    500,
                ],
                "private_source": {
                    "source_endpoint": {
                        "primary": [{
                            "bucketName": "primary-bucket",
                            "endpoint": "http://xxxxx.volces.com",
                            "credentialProvider": {
                                "staticCredential": {
                                    "storageVendor": "S3",
                                    "skEncryptType": "",
                                    "sk": "sk-test-primary",
                                    "ak": "ak-test-primary",
                                },
                                "role": "",
                                "region": "cn-beijing",
                            },
                        }],
                        "follower": [{
                            "bucketName": "follower-bucket",
                            "endpoint": "http://xxxxx.volces.com",
                            "credentialProvider": {
                                "staticCredential": {
                                    "storageVendor": "S3",
                                    "skEncryptType": "",
                                    "sk": "sk-test-follower",
                                    "ak": "ak-test-follower",
                                },
                                "role": "",
                                "region": "cn-beijing",
                            },
                        }],
                    },
                },
                "redirect_type": "Mirror",
                "transform": {
                    "with_key_prefix": "addtional-key-prefix",
                    "with_key_suffix": "addtional-key-suffix",
                    "replace_key_prefix": {
                        "key_prefix": "key-prefix",
                        "replace_with": "replace-with",
                    },
                },
            },
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/volcengine/pulumi-volcenginecc/sdk/go/volcenginecc/tos"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := tos.NewBucketMirrorBack(ctx, "TOSBucketMirrorBackDemo", &tos.BucketMirrorBackArgs{
    			Bucket: pulumi.String("ccapi-test"),
    			Rules: tos.BucketMirrorBackRuleArray{
    				&tos.BucketMirrorBackRuleArgs{
    					Condition: &tos.BucketMirrorBackRuleConditionArgs{
    						HttpCode: pulumi.Int(404),
    						HttpMethod: []string{
    							"GET",
    							"HEAD",
    						},
    						KeyPrefix: pulumi.String("object-key-prefix"),
    						KeySuffix: pulumi.String("object-key-suffix"),
    						AllowHost: []string{
    							"example.volcengine.com",
    						},
    					},
    					Id: pulumi.String("rule-003"),
    					Redirect: &tos.BucketMirrorBackRuleRedirectArgs{
    						FetchHeaderToMetaDataRules: tos.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArray{
    							&tos.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs{
    								MetaDataSuffix: pulumi.String("-meta"),
    								SourceHeader:   pulumi.String("X-Custom-Header"),
    							},
    						},
    						FetchSourceOnRedirect:          pulumi.Bool(false),
    						FetchSourceOnRedirectWithQuery: pulumi.Bool(false),
    						FollowRedirect:                 pulumi.Bool(true),
    						MirrorHeader: &tos.BucketMirrorBackRuleRedirectMirrorHeaderArgs{
    							PassAll: pulumi.Bool(true),
    							Pass: []string{
    								"aaa",
    								"bbb",
    							},
    							Remove: []string{
    								"xxx",
    								"yyy",
    							},
    							Set: []map[string]interface{}{
    								map[string]interface{}{
    									"key":   "X-Set-Header",
    									"value": "set-value",
    								},
    							},
    						},
    						PassHeaderFromSource: []string{
    							"X-Source-Header",
    						},
    						PassQuery: pulumi.Bool(true),
    						PassStatusCodeFromSource: []int{
    							404,
    							500,
    						},
    						PrivateSource: &tos.BucketMirrorBackRuleRedirectPrivateSourceArgs{
    							SourceEndpoint: &tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs{
    								Primary: []map[string]interface{}{
    									map[string]interface{}{
    										"bucketName": "primary-bucket",
    										"endpoint":   "http://xxxxx.volces.com",
    										"credentialProvider": map[string]interface{}{
    											"staticCredential": map[string]interface{}{
    												"storageVendor": "S3",
    												"skEncryptType": "",
    												"sk":            "sk-test-primary",
    												"ak":            "ak-test-primary",
    											},
    											"role":   "",
    											"region": "cn-beijing",
    										},
    									},
    								},
    								Follower: []map[string]interface{}{
    									map[string]interface{}{
    										"bucketName": "follower-bucket",
    										"endpoint":   "http://xxxxx.volces.com",
    										"credentialProvider": map[string]interface{}{
    											"staticCredential": map[string]interface{}{
    												"storageVendor": "S3",
    												"skEncryptType": "",
    												"sk":            "sk-test-follower",
    												"ak":            "ak-test-follower",
    											},
    											"role":   "",
    											"region": "cn-beijing",
    										},
    									},
    								},
    							},
    						},
    						RedirectType: pulumi.String("Mirror"),
    						Transform: &tos.BucketMirrorBackRuleRedirectTransformArgs{
    							WithKeyPrefix: pulumi.String("addtional-key-prefix"),
    							WithKeySuffix: pulumi.String("addtional-key-suffix"),
    							ReplaceKeyPrefix: &tos.BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs{
    								KeyPrefix:   pulumi.String("key-prefix"),
    								ReplaceWith: pulumi.String("replace-with"),
    							},
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Volcenginecc = Volcengine.Pulumi.Volcenginecc;
    
    return await Deployment.RunAsync(() => 
    {
        var tOSBucketMirrorBackDemo = new Volcenginecc.Tos.BucketMirrorBack("TOSBucketMirrorBackDemo", new()
        {
            Bucket = "ccapi-test",
            Rules = new[]
            {
                new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleArgs
                {
                    Condition = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleConditionArgs
                    {
                        HttpCode = 404,
                        HttpMethod = new[]
                        {
                            "GET",
                            "HEAD",
                        },
                        KeyPrefix = "object-key-prefix",
                        KeySuffix = "object-key-suffix",
                        AllowHost = new[]
                        {
                            "example.volcengine.com",
                        },
                    },
                    Id = "rule-003",
                    Redirect = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectArgs
                    {
                        FetchHeaderToMetaDataRules = new[]
                        {
                            new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs
                            {
                                MetaDataSuffix = "-meta",
                                SourceHeader = "X-Custom-Header",
                            },
                        },
                        FetchSourceOnRedirect = false,
                        FetchSourceOnRedirectWithQuery = false,
                        FollowRedirect = true,
                        MirrorHeader = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectMirrorHeaderArgs
                        {
                            PassAll = true,
                            Pass = new[]
                            {
                                "aaa",
                                "bbb",
                            },
                            Remove = new[]
                            {
                                "xxx",
                                "yyy",
                            },
                            Set = new[]
                            {
                                
                                {
                                    { "key", "X-Set-Header" },
                                    { "value", "set-value" },
                                },
                            },
                        },
                        PassHeaderFromSource = new[]
                        {
                            "X-Source-Header",
                        },
                        PassQuery = true,
                        PassStatusCodeFromSource = new[]
                        {
                            404,
                            500,
                        },
                        PrivateSource = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceArgs
                        {
                            SourceEndpoint = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs
                            {
                                Primary = new[]
                                {
                                    
                                    {
                                        { "bucketName", "primary-bucket" },
                                        { "endpoint", "http://xxxxx.volces.com" },
                                        { "credentialProvider", 
                                        {
                                            { "staticCredential", 
                                            {
                                                { "storageVendor", "S3" },
                                                { "skEncryptType", "" },
                                                { "sk", "sk-test-primary" },
                                                { "ak", "ak-test-primary" },
                                            } },
                                            { "role", "" },
                                            { "region", "cn-beijing" },
                                        } },
                                    },
                                },
                                Follower = new[]
                                {
                                    
                                    {
                                        { "bucketName", "follower-bucket" },
                                        { "endpoint", "http://xxxxx.volces.com" },
                                        { "credentialProvider", 
                                        {
                                            { "staticCredential", 
                                            {
                                                { "storageVendor", "S3" },
                                                { "skEncryptType", "" },
                                                { "sk", "sk-test-follower" },
                                                { "ak", "ak-test-follower" },
                                            } },
                                            { "role", "" },
                                            { "region", "cn-beijing" },
                                        } },
                                    },
                                },
                            },
                        },
                        RedirectType = "Mirror",
                        Transform = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectTransformArgs
                        {
                            WithKeyPrefix = "addtional-key-prefix",
                            WithKeySuffix = "addtional-key-suffix",
                            ReplaceKeyPrefix = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs
                            {
                                KeyPrefix = "key-prefix",
                                ReplaceWith = "replace-with",
                            },
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.volcengine.volcenginecc.tos.BucketMirrorBack;
    import com.volcengine.volcenginecc.tos.BucketMirrorBackArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleConditionArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectMirrorHeaderArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectPrivateSourceArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectTransformArgs;
    import com.pulumi.volcenginecc.tos.inputs.BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var tOSBucketMirrorBackDemo = new BucketMirrorBack("tOSBucketMirrorBackDemo", BucketMirrorBackArgs.builder()
                .bucket("ccapi-test")
                .rules(BucketMirrorBackRuleArgs.builder()
                    .condition(BucketMirrorBackRuleConditionArgs.builder()
                        .httpCode(404)
                        .httpMethod(Arrays.asList(                    
                            "GET",
                            "HEAD"))
                        .keyPrefix("object-key-prefix")
                        .keySuffix("object-key-suffix")
                        .allowHost(Arrays.asList("example.volcengine.com"))
                        .build())
                    .id("rule-003")
                    .redirect(BucketMirrorBackRuleRedirectArgs.builder()
                        .fetchHeaderToMetaDataRules(BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs.builder()
                            .metaDataSuffix("-meta")
                            .sourceHeader("X-Custom-Header")
                            .build())
                        .fetchSourceOnRedirect(false)
                        .fetchSourceOnRedirectWithQuery(false)
                        .followRedirect(true)
                        .mirrorHeader(BucketMirrorBackRuleRedirectMirrorHeaderArgs.builder()
                            .passAll(true)
                            .pass(Arrays.asList(                        
                                "aaa",
                                "bbb"))
                            .remove(Arrays.asList(                        
                                "xxx",
                                "yyy"))
                            .set(Arrays.asList(Map.ofEntries(
                                Map.entry("key", "X-Set-Header"),
                                Map.entry("value", "set-value")
                            )))
                            .build())
                        .passHeaderFromSource(Arrays.asList("X-Source-Header"))
                        .passQuery(true)
                        .passStatusCodeFromSource(Arrays.asList(                    
                            404,
                            500))
                        .privateSource(BucketMirrorBackRuleRedirectPrivateSourceArgs.builder()
                            .sourceEndpoint(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs.builder()
                                .primary(Arrays.asList(Map.ofEntries(
                                    Map.entry("bucketName", "primary-bucket"),
                                    Map.entry("endpoint", "http://xxxxx.volces.com"),
                                    Map.entry("credentialProvider", Map.ofEntries(
                                        Map.entry("staticCredential", Map.ofEntries(
                                            Map.entry("storageVendor", "S3"),
                                            Map.entry("skEncryptType", ""),
                                            Map.entry("sk", "sk-test-primary"),
                                            Map.entry("ak", "ak-test-primary")
                                        )),
                                        Map.entry("role", ""),
                                        Map.entry("region", "cn-beijing")
                                    ))
                                )))
                                .follower(Arrays.asList(Map.ofEntries(
                                    Map.entry("bucketName", "follower-bucket"),
                                    Map.entry("endpoint", "http://xxxxx.volces.com"),
                                    Map.entry("credentialProvider", Map.ofEntries(
                                        Map.entry("staticCredential", Map.ofEntries(
                                            Map.entry("storageVendor", "S3"),
                                            Map.entry("skEncryptType", ""),
                                            Map.entry("sk", "sk-test-follower"),
                                            Map.entry("ak", "ak-test-follower")
                                        )),
                                        Map.entry("role", ""),
                                        Map.entry("region", "cn-beijing")
                                    ))
                                )))
                                .build())
                            .build())
                        .redirectType("Mirror")
                        .transform(BucketMirrorBackRuleRedirectTransformArgs.builder()
                            .withKeyPrefix("addtional-key-prefix")
                            .withKeySuffix("addtional-key-suffix")
                            .replaceKeyPrefix(BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs.builder()
                                .keyPrefix("key-prefix")
                                .replaceWith("replace-with")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      tOSBucketMirrorBackDemo:
        type: volcenginecc:tos:BucketMirrorBack
        name: TOSBucketMirrorBackDemo
        properties:
          bucket: ccapi-test
          rules:
            - condition:
                httpCode: 404
                httpMethod:
                  - GET
                  - HEAD
                keyPrefix: object-key-prefix
                keySuffix: object-key-suffix
                allowHost:
                  - example.volcengine.com
              id: rule-003
              redirect:
                fetchHeaderToMetaDataRules:
                  - metaDataSuffix: -meta
                    sourceHeader: X-Custom-Header
                fetchSourceOnRedirect: false
                fetchSourceOnRedirectWithQuery: false
                followRedirect: true
                mirrorHeader:
                  passAll: true
                  pass:
                    - aaa
                    - bbb
                  remove:
                    - xxx
                    - yyy
                  set:
                    - key: X-Set-Header
                      value: set-value
                passHeaderFromSource:
                  - X-Source-Header
                passQuery: true
                passStatusCodeFromSource:
                  - 404
                  - 500
                privateSource:
                  sourceEndpoint:
                    primary:
                      - bucketName: primary-bucket
                        endpoint: http://xxxxx.volces.com
                        credentialProvider:
                          staticCredential:
                            storageVendor: S3
                            skEncryptType: ""
                            sk: sk-test-primary
                            ak: ak-test-primary
                          role: ""
                          region: cn-beijing
                    follower:
                      - bucketName: follower-bucket
                        endpoint: http://xxxxx.volces.com
                        credentialProvider:
                          staticCredential:
                            storageVendor: S3
                            skEncryptType: ""
                            sk: sk-test-follower
                            ak: ak-test-follower
                          role: ""
                          region: cn-beijing
                redirectType: Mirror
                transform:
                  withKeyPrefix: addtional-key-prefix
                  withKeySuffix: addtional-key-suffix
                  replaceKeyPrefix:
                    keyPrefix: key-prefix
                    replaceWith: replace-with
    
    pulumi {
      required_providers {
        volcenginecc = {
          source = "pulumi/volcenginecc"
        }
      }
    }
    
    resource "volcenginecc_tos_bucketmirrorback" "TOSBucketMirrorBackDemo" {
      bucket = "ccapi-test"
      rules {
        condition = {
          http_code   = 404
          http_method = ["GET", "HEAD"]
          key_prefix  = "object-key-prefix"
          key_suffix  = "object-key-suffix"
          allow_host  = ["example.volcengine.com"]
        }
        id = "rule-003"
        redirect = {
          fetch_header_to_meta_data_rules = [{
            "metaDataSuffix" = "-meta"
            "sourceHeader"   = "X-Custom-Header"
          }]
          fetch_source_on_redirect            = false
          fetch_source_on_redirect_with_query = false
          follow_redirect                     = true
          mirror_header = {
            pass_all = true
            pass     = ["aaa", "bbb"]
            remove   = ["xxx", "yyy"]
            set = [{
              "key"   = "X-Set-Header"
              "value" = "set-value"
            }]
          }
          pass_header_from_source      = ["X-Source-Header"]
          pass_query                   = true
          pass_status_code_from_source = [404, 500]
          private_source = {
            source_endpoint = {
              primary = [{
                "bucketName" = "primary-bucket"
                "endpoint"   = "http://xxxxx.volces.com"
                "credentialProvider" = {
                  "staticCredential" = {
                    "storageVendor" = "S3"
                    "skEncryptType" = ""
                    "sk"            = "sk-test-primary"
                    "ak"            = "ak-test-primary"
                  }
                  "role"   = ""
                  "region" = "cn-beijing"
                }
              }]
              follower = [{
                "bucketName" = "follower-bucket"
                "endpoint"   = "http://xxxxx.volces.com"
                "credentialProvider" = {
                  "staticCredential" = {
                    "storageVendor" = "S3"
                    "skEncryptType" = ""
                    "sk"            = "sk-test-follower"
                    "ak"            = "ak-test-follower"
                  }
                  "role"   = ""
                  "region" = "cn-beijing"
                }
              }]
            }
          }
          redirect_type = "Mirror"
          transform = {
            with_key_prefix = "addtional-key-prefix"
            with_key_suffix = "addtional-key-suffix"
            replace_key_prefix = {
              key_prefix   = "key-prefix"
              replace_with = "replace-with"
            }
          }
        }
      }
    }
    

    Create BucketMirrorBack Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new BucketMirrorBack(name: string, args: BucketMirrorBackArgs, opts?: CustomResourceOptions);
    @overload
    def BucketMirrorBack(resource_name: str,
                         args: BucketMirrorBackArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def BucketMirrorBack(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         bucket: Optional[str] = None,
                         rules: Optional[Sequence[BucketMirrorBackRuleArgs]] = None)
    func NewBucketMirrorBack(ctx *Context, name string, args BucketMirrorBackArgs, opts ...ResourceOption) (*BucketMirrorBack, error)
    public BucketMirrorBack(string name, BucketMirrorBackArgs args, CustomResourceOptions? opts = null)
    public BucketMirrorBack(String name, BucketMirrorBackArgs args)
    public BucketMirrorBack(String name, BucketMirrorBackArgs args, CustomResourceOptions options)
    
    type: volcenginecc:tos:BucketMirrorBack
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "volcenginecc_tos_bucketmirrorback" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args BucketMirrorBackArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args BucketMirrorBackArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args BucketMirrorBackArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BucketMirrorBackArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BucketMirrorBackArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var bucketMirrorBackResource = new Volcenginecc.Tos.BucketMirrorBack("bucketMirrorBackResource", new()
    {
        Bucket = "string",
        Rules = new[]
        {
            new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleArgs
            {
                Condition = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleConditionArgs
                {
                    AllowHosts = new[]
                    {
                        "string",
                    },
                    HttpCode = 0,
                    HttpMethods = new[]
                    {
                        "string",
                    },
                    KeyPrefix = "string",
                    KeySuffix = "string",
                },
                Id = "string",
                Redirect = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectArgs
                {
                    FetchHeaderToMetaDataRules = new[]
                    {
                        new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs
                        {
                            MetaDataSuffix = "string",
                            SourceHeader = "string",
                        },
                    },
                    FetchSourceOnRedirect = false,
                    FetchSourceOnRedirectWithQuery = false,
                    FollowRedirect = false,
                    MirrorHeader = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectMirrorHeaderArgs
                    {
                        PassAll = false,
                        Passes = new[]
                        {
                            "string",
                        },
                        Removes = new[]
                        {
                            "string",
                        },
                        Sets = new[]
                        {
                            new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectMirrorHeaderSetArgs
                            {
                                Key = "string",
                                Value = "string",
                            },
                        },
                    },
                    PassHeaderFromSources = new[]
                    {
                        "string",
                    },
                    PassQuery = false,
                    PassStatusCodeFromSources = new[]
                    {
                        0,
                    },
                    PrivateSource = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceArgs
                    {
                        SourceEndpoint = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs
                        {
                            Followers = new[]
                            {
                                new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerArgs
                                {
                                    BucketName = "string",
                                    CredentialProvider = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderArgs
                                    {
                                        Region = "string",
                                        Role = "string",
                                        StaticCredential = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredentialArgs
                                        {
                                            Ak = "string",
                                            Sk = "string",
                                            SkEncryptType = "string",
                                            StorageVendor = "string",
                                        },
                                    },
                                    Endpoint = "string",
                                },
                            },
                            Primaries = new[]
                            {
                                new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryArgs
                                {
                                    BucketName = "string",
                                    CredentialProvider = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderArgs
                                    {
                                        Region = "string",
                                        Role = "string",
                                        StaticCredential = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredentialArgs
                                        {
                                            Ak = "string",
                                            Sk = "string",
                                            SkEncryptType = "string",
                                            StorageVendor = "string",
                                        },
                                    },
                                    Endpoint = "string",
                                },
                            },
                        },
                    },
                    PublicSource = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPublicSourceArgs
                    {
                        FixedEndpoint = false,
                        SourceEndpoint = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectPublicSourceSourceEndpointArgs
                        {
                            Followers = new[]
                            {
                                "string",
                            },
                            Primaries = new[]
                            {
                                "string",
                            },
                        },
                    },
                    RedirectType = "string",
                    Transform = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectTransformArgs
                    {
                        ReplaceKeyPrefix = new Volcenginecc.Tos.Inputs.BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs
                        {
                            KeyPrefix = "string",
                            ReplaceWith = "string",
                        },
                        WithKeyPrefix = "string",
                        WithKeySuffix = "string",
                    },
                },
            },
        },
    });
    
    example, err := tos.NewBucketMirrorBack(ctx, "bucketMirrorBackResource", &tos.BucketMirrorBackArgs{
    	Bucket: pulumi.String("string"),
    	Rules: tos.BucketMirrorBackRuleArray{
    		&tos.BucketMirrorBackRuleArgs{
    			Condition: &tos.BucketMirrorBackRuleConditionArgs{
    				AllowHosts: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				HttpCode: pulumi.Int(0),
    				HttpMethods: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				KeyPrefix: pulumi.String("string"),
    				KeySuffix: pulumi.String("string"),
    			},
    			Id: pulumi.String("string"),
    			Redirect: &tos.BucketMirrorBackRuleRedirectArgs{
    				FetchHeaderToMetaDataRules: tos.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArray{
    					&tos.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs{
    						MetaDataSuffix: pulumi.String("string"),
    						SourceHeader:   pulumi.String("string"),
    					},
    				},
    				FetchSourceOnRedirect:          pulumi.Bool(false),
    				FetchSourceOnRedirectWithQuery: pulumi.Bool(false),
    				FollowRedirect:                 pulumi.Bool(false),
    				MirrorHeader: &tos.BucketMirrorBackRuleRedirectMirrorHeaderArgs{
    					PassAll: pulumi.Bool(false),
    					Passes: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Removes: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Sets: tos.BucketMirrorBackRuleRedirectMirrorHeaderSetArray{
    						&tos.BucketMirrorBackRuleRedirectMirrorHeaderSetArgs{
    							Key:   pulumi.String("string"),
    							Value: pulumi.String("string"),
    						},
    					},
    				},
    				PassHeaderFromSources: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				PassQuery: pulumi.Bool(false),
    				PassStatusCodeFromSources: pulumi.IntArray{
    					pulumi.Int(0),
    				},
    				PrivateSource: &tos.BucketMirrorBackRuleRedirectPrivateSourceArgs{
    					SourceEndpoint: &tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs{
    						Followers: tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerArray{
    							&tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerArgs{
    								BucketName: pulumi.String("string"),
    								CredentialProvider: &tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderArgs{
    									Region: pulumi.String("string"),
    									Role:   pulumi.String("string"),
    									StaticCredential: &tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredentialArgs{
    										Ak:            pulumi.String("string"),
    										Sk:            pulumi.String("string"),
    										SkEncryptType: pulumi.String("string"),
    										StorageVendor: pulumi.String("string"),
    									},
    								},
    								Endpoint: pulumi.String("string"),
    							},
    						},
    						Primaries: tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryArray{
    							&tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryArgs{
    								BucketName: pulumi.String("string"),
    								CredentialProvider: &tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderArgs{
    									Region: pulumi.String("string"),
    									Role:   pulumi.String("string"),
    									StaticCredential: &tos.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredentialArgs{
    										Ak:            pulumi.String("string"),
    										Sk:            pulumi.String("string"),
    										SkEncryptType: pulumi.String("string"),
    										StorageVendor: pulumi.String("string"),
    									},
    								},
    								Endpoint: pulumi.String("string"),
    							},
    						},
    					},
    				},
    				PublicSource: &tos.BucketMirrorBackRuleRedirectPublicSourceArgs{
    					FixedEndpoint: pulumi.Bool(false),
    					SourceEndpoint: &tos.BucketMirrorBackRuleRedirectPublicSourceSourceEndpointArgs{
    						Followers: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Primaries: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    				},
    				RedirectType: pulumi.String("string"),
    				Transform: &tos.BucketMirrorBackRuleRedirectTransformArgs{
    					ReplaceKeyPrefix: &tos.BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs{
    						KeyPrefix:   pulumi.String("string"),
    						ReplaceWith: pulumi.String("string"),
    					},
    					WithKeyPrefix: pulumi.String("string"),
    					WithKeySuffix: pulumi.String("string"),
    				},
    			},
    		},
    	},
    })
    
    resource "volcenginecc_tos_bucketmirrorback" "bucketMirrorBackResource" {
      bucket = "string"
      rules {
        condition = {
          allow_hosts  = ["string"]
          http_code    = 0
          http_methods = ["string"]
          key_prefix   = "string"
          key_suffix   = "string"
        }
        id = "string"
        redirect = {
          fetch_header_to_meta_data_rules = [{
            "metaDataSuffix" = "string"
            "sourceHeader"   = "string"
          }]
          fetch_source_on_redirect            = false
          fetch_source_on_redirect_with_query = false
          follow_redirect                     = false
          mirror_header = {
            pass_all = false
            passes   = ["string"]
            removes  = ["string"]
            sets = [{
              "key"   = "string"
              "value" = "string"
            }]
          }
          pass_header_from_sources      = ["string"]
          pass_query                    = false
          pass_status_code_from_sources = [0]
          private_source = {
            source_endpoint = {
              followers = [{
                "bucketName" = "string"
                "credentialProvider" = {
                  "region" = "string"
                  "role"   = "string"
                  "staticCredential" = {
                    "ak"            = "string"
                    "sk"            = "string"
                    "skEncryptType" = "string"
                    "storageVendor" = "string"
                  }
                }
                "endpoint" = "string"
              }]
              primaries = [{
                "bucketName" = "string"
                "credentialProvider" = {
                  "region" = "string"
                  "role"   = "string"
                  "staticCredential" = {
                    "ak"            = "string"
                    "sk"            = "string"
                    "skEncryptType" = "string"
                    "storageVendor" = "string"
                  }
                }
                "endpoint" = "string"
              }]
            }
          }
          public_source = {
            fixed_endpoint = false
            source_endpoint = {
              followers = ["string"]
              primaries = ["string"]
            }
          }
          redirect_type = "string"
          transform = {
            replace_key_prefix = {
              key_prefix   = "string"
              replace_with = "string"
            }
            with_key_prefix = "string"
            with_key_suffix = "string"
          }
        }
      }
    }
    
    var bucketMirrorBackResource = new BucketMirrorBack("bucketMirrorBackResource", BucketMirrorBackArgs.builder()
        .bucket("string")
        .rules(BucketMirrorBackRuleArgs.builder()
            .condition(BucketMirrorBackRuleConditionArgs.builder()
                .allowHosts("string")
                .httpCode(0)
                .httpMethods("string")
                .keyPrefix("string")
                .keySuffix("string")
                .build())
            .id("string")
            .redirect(BucketMirrorBackRuleRedirectArgs.builder()
                .fetchHeaderToMetaDataRules(BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs.builder()
                    .metaDataSuffix("string")
                    .sourceHeader("string")
                    .build())
                .fetchSourceOnRedirect(false)
                .fetchSourceOnRedirectWithQuery(false)
                .followRedirect(false)
                .mirrorHeader(BucketMirrorBackRuleRedirectMirrorHeaderArgs.builder()
                    .passAll(false)
                    .passes("string")
                    .removes("string")
                    .sets(BucketMirrorBackRuleRedirectMirrorHeaderSetArgs.builder()
                        .key("string")
                        .value("string")
                        .build())
                    .build())
                .passHeaderFromSources("string")
                .passQuery(false)
                .passStatusCodeFromSources(0)
                .privateSource(BucketMirrorBackRuleRedirectPrivateSourceArgs.builder()
                    .sourceEndpoint(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs.builder()
                        .followers(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerArgs.builder()
                            .bucketName("string")
                            .credentialProvider(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderArgs.builder()
                                .region("string")
                                .role("string")
                                .staticCredential(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredentialArgs.builder()
                                    .ak("string")
                                    .sk("string")
                                    .skEncryptType("string")
                                    .storageVendor("string")
                                    .build())
                                .build())
                            .endpoint("string")
                            .build())
                        .primaries(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryArgs.builder()
                            .bucketName("string")
                            .credentialProvider(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderArgs.builder()
                                .region("string")
                                .role("string")
                                .staticCredential(BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredentialArgs.builder()
                                    .ak("string")
                                    .sk("string")
                                    .skEncryptType("string")
                                    .storageVendor("string")
                                    .build())
                                .build())
                            .endpoint("string")
                            .build())
                        .build())
                    .build())
                .publicSource(BucketMirrorBackRuleRedirectPublicSourceArgs.builder()
                    .fixedEndpoint(false)
                    .sourceEndpoint(BucketMirrorBackRuleRedirectPublicSourceSourceEndpointArgs.builder()
                        .followers("string")
                        .primaries("string")
                        .build())
                    .build())
                .redirectType("string")
                .transform(BucketMirrorBackRuleRedirectTransformArgs.builder()
                    .replaceKeyPrefix(BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs.builder()
                        .keyPrefix("string")
                        .replaceWith("string")
                        .build())
                    .withKeyPrefix("string")
                    .withKeySuffix("string")
                    .build())
                .build())
            .build())
        .build());
    
    bucket_mirror_back_resource = volcenginecc.tos.BucketMirrorBack("bucketMirrorBackResource",
        bucket="string",
        rules=[{
            "condition": {
                "allow_hosts": ["string"],
                "http_code": 0,
                "http_methods": ["string"],
                "key_prefix": "string",
                "key_suffix": "string",
            },
            "id": "string",
            "redirect": {
                "fetch_header_to_meta_data_rules": [{
                    "meta_data_suffix": "string",
                    "source_header": "string",
                }],
                "fetch_source_on_redirect": False,
                "fetch_source_on_redirect_with_query": False,
                "follow_redirect": False,
                "mirror_header": {
                    "pass_all": False,
                    "passes": ["string"],
                    "removes": ["string"],
                    "sets": [{
                        "key": "string",
                        "value": "string",
                    }],
                },
                "pass_header_from_sources": ["string"],
                "pass_query": False,
                "pass_status_code_from_sources": [0],
                "private_source": {
                    "source_endpoint": {
                        "followers": [{
                            "bucket_name": "string",
                            "credential_provider": {
                                "region": "string",
                                "role": "string",
                                "static_credential": {
                                    "ak": "string",
                                    "sk": "string",
                                    "sk_encrypt_type": "string",
                                    "storage_vendor": "string",
                                },
                            },
                            "endpoint": "string",
                        }],
                        "primaries": [{
                            "bucket_name": "string",
                            "credential_provider": {
                                "region": "string",
                                "role": "string",
                                "static_credential": {
                                    "ak": "string",
                                    "sk": "string",
                                    "sk_encrypt_type": "string",
                                    "storage_vendor": "string",
                                },
                            },
                            "endpoint": "string",
                        }],
                    },
                },
                "public_source": {
                    "fixed_endpoint": False,
                    "source_endpoint": {
                        "followers": ["string"],
                        "primaries": ["string"],
                    },
                },
                "redirect_type": "string",
                "transform": {
                    "replace_key_prefix": {
                        "key_prefix": "string",
                        "replace_with": "string",
                    },
                    "with_key_prefix": "string",
                    "with_key_suffix": "string",
                },
            },
        }])
    
    const bucketMirrorBackResource = new volcenginecc.tos.BucketMirrorBack("bucketMirrorBackResource", {
        bucket: "string",
        rules: [{
            condition: {
                allowHosts: ["string"],
                httpCode: 0,
                httpMethods: ["string"],
                keyPrefix: "string",
                keySuffix: "string",
            },
            id: "string",
            redirect: {
                fetchHeaderToMetaDataRules: [{
                    metaDataSuffix: "string",
                    sourceHeader: "string",
                }],
                fetchSourceOnRedirect: false,
                fetchSourceOnRedirectWithQuery: false,
                followRedirect: false,
                mirrorHeader: {
                    passAll: false,
                    passes: ["string"],
                    removes: ["string"],
                    sets: [{
                        key: "string",
                        value: "string",
                    }],
                },
                passHeaderFromSources: ["string"],
                passQuery: false,
                passStatusCodeFromSources: [0],
                privateSource: {
                    sourceEndpoint: {
                        followers: [{
                            bucketName: "string",
                            credentialProvider: {
                                region: "string",
                                role: "string",
                                staticCredential: {
                                    ak: "string",
                                    sk: "string",
                                    skEncryptType: "string",
                                    storageVendor: "string",
                                },
                            },
                            endpoint: "string",
                        }],
                        primaries: [{
                            bucketName: "string",
                            credentialProvider: {
                                region: "string",
                                role: "string",
                                staticCredential: {
                                    ak: "string",
                                    sk: "string",
                                    skEncryptType: "string",
                                    storageVendor: "string",
                                },
                            },
                            endpoint: "string",
                        }],
                    },
                },
                publicSource: {
                    fixedEndpoint: false,
                    sourceEndpoint: {
                        followers: ["string"],
                        primaries: ["string"],
                    },
                },
                redirectType: "string",
                transform: {
                    replaceKeyPrefix: {
                        keyPrefix: "string",
                        replaceWith: "string",
                    },
                    withKeyPrefix: "string",
                    withKeySuffix: "string",
                },
            },
        }],
    });
    
    type: volcenginecc:tos:BucketMirrorBack
    properties:
        bucket: string
        rules:
            - condition:
                allowHosts:
                    - string
                httpCode: 0
                httpMethods:
                    - string
                keyPrefix: string
                keySuffix: string
              id: string
              redirect:
                fetchHeaderToMetaDataRules:
                    - metaDataSuffix: string
                      sourceHeader: string
                fetchSourceOnRedirect: false
                fetchSourceOnRedirectWithQuery: false
                followRedirect: false
                mirrorHeader:
                    passAll: false
                    passes:
                        - string
                    removes:
                        - string
                    sets:
                        - key: string
                          value: string
                passHeaderFromSources:
                    - string
                passQuery: false
                passStatusCodeFromSources:
                    - 0
                privateSource:
                    sourceEndpoint:
                        followers:
                            - bucketName: string
                              credentialProvider:
                                region: string
                                role: string
                                staticCredential:
                                    ak: string
                                    sk: string
                                    skEncryptType: string
                                    storageVendor: string
                              endpoint: string
                        primaries:
                            - bucketName: string
                              credentialProvider:
                                region: string
                                role: string
                                staticCredential:
                                    ak: string
                                    sk: string
                                    skEncryptType: string
                                    storageVendor: string
                              endpoint: string
                publicSource:
                    fixedEndpoint: false
                    sourceEndpoint:
                        followers:
                            - string
                        primaries:
                            - string
                redirectType: string
                transform:
                    replaceKeyPrefix:
                        keyPrefix: string
                        replaceWith: string
                    withKeyPrefix: string
                    withKeySuffix: string
    

    BucketMirrorBack Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The BucketMirrorBack resource accepts the following input properties:

    Bucket string
    Bucket name requiring origin fetch rule configuration.
    Rules List<Volcengine.BucketMirrorBackRule>
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Bucket string
    Bucket name requiring origin fetch rule configuration.
    Rules []BucketMirrorBackRuleArgs
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket string
    Bucket name requiring origin fetch rule configuration.
    rules list(object)
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket String
    Bucket name requiring origin fetch rule configuration.
    rules List<BucketMirrorBackRule>
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket string
    Bucket name requiring origin fetch rule configuration.
    rules BucketMirrorBackRule[]
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket str
    Bucket name requiring origin fetch rule configuration.
    rules Sequence[BucketMirrorBackRuleArgs]
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket String
    Bucket name requiring origin fetch rule configuration.
    rules List<Property Map>
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the BucketMirrorBack resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing BucketMirrorBack Resource

    Get an existing BucketMirrorBack resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: BucketMirrorBackState, opts?: CustomResourceOptions): BucketMirrorBack
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            bucket: Optional[str] = None,
            rules: Optional[Sequence[BucketMirrorBackRuleArgs]] = None) -> BucketMirrorBack
    func GetBucketMirrorBack(ctx *Context, name string, id IDInput, state *BucketMirrorBackState, opts ...ResourceOption) (*BucketMirrorBack, error)
    public static BucketMirrorBack Get(string name, Input<string> id, BucketMirrorBackState? state, CustomResourceOptions? opts = null)
    public static BucketMirrorBack get(String name, Output<String> id, BucketMirrorBackState state, CustomResourceOptions options)
    resources:  _:    type: volcenginecc:tos:BucketMirrorBack    get:      id: ${id}
    import {
      to = volcenginecc_tos_bucketmirrorback.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Bucket string
    Bucket name requiring origin fetch rule configuration.
    Rules List<Volcengine.BucketMirrorBackRule>
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Bucket string
    Bucket name requiring origin fetch rule configuration.
    Rules []BucketMirrorBackRuleArgs
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket string
    Bucket name requiring origin fetch rule configuration.
    rules list(object)
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket String
    Bucket name requiring origin fetch rule configuration.
    rules List<BucketMirrorBackRule>
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket string
    Bucket name requiring origin fetch rule configuration.
    rules BucketMirrorBackRule[]
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket str
    Bucket name requiring origin fetch rule configuration.
    rules Sequence[BucketMirrorBackRuleArgs]
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    bucket String
    Bucket name requiring origin fetch rule configuration.
    rules List<Property Map>
    Array of origin fetch policy rules. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.

    Supporting Types

    BucketMirrorBackRule, BucketMirrorBackRuleArgs

    Condition Volcengine.BucketMirrorBackRuleCondition
    Conditions that trigger the back-to-origin function.
    Id string
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    Redirect Volcengine.BucketMirrorBackRuleRedirect
    Back-to-origin redirect configuration.
    Condition BucketMirrorBackRuleCondition
    Conditions that trigger the back-to-origin function.
    Id string
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    Redirect BucketMirrorBackRuleRedirect
    Back-to-origin redirect configuration.
    condition object
    Conditions that trigger the back-to-origin function.
    id string
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    redirect object
    Back-to-origin redirect configuration.
    condition BucketMirrorBackRuleCondition
    Conditions that trigger the back-to-origin function.
    id String
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    redirect BucketMirrorBackRuleRedirect
    Back-to-origin redirect configuration.
    condition BucketMirrorBackRuleCondition
    Conditions that trigger the back-to-origin function.
    id string
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    redirect BucketMirrorBackRuleRedirect
    Back-to-origin redirect configuration.
    condition BucketMirrorBackRuleCondition
    Conditions that trigger the back-to-origin function.
    id str
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    redirect BucketMirrorBackRuleRedirect
    Back-to-origin redirect configuration.
    condition Property Map
    Conditions that trigger the back-to-origin function.
    id String
    Rule ID. The unique identifier for the back-to-origin rule configured on the current bucket. You can set this yourself to distinguish between multiple rules. Restrictions: Characters supported: letters, numbers, - and _. Maximum length: 32 characters.
    redirect Property Map
    Back-to-origin redirect configuration.

    BucketMirrorBackRuleCondition, BucketMirrorBackRuleConditionArgs

    AllowHosts List<string>
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    HttpCode int
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    HttpMethods List<string>
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    KeyPrefix string
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    KeySuffix string
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.
    AllowHosts []string
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    HttpCode int
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    HttpMethods []string
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    KeyPrefix string
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    KeySuffix string
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.
    allow_hosts list(string)
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    http_code number
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    http_methods list(string)
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    key_prefix string
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    key_suffix string
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.
    allowHosts List<String>
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    httpCode Integer
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    httpMethods List<String>
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    keyPrefix String
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    keySuffix String
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.
    allowHosts string[]
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    httpCode number
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    httpMethods string[]
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    keyPrefix string
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    keySuffix string
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.
    allow_hosts Sequence[str]
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    http_code int
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    http_methods Sequence[str]
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    key_prefix str
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    key_suffix str
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.
    allowHosts List<String>
    Supports triggering origin fetch only for specified domains. The domain must be able to access the bucket; it is recommended to use a custom domain bound to the bucket. Limit: supports up to 30 domains.
    httpCode Number
    Error code that triggers origin fetch. When a download request returns this error code, origin fetch is triggered. Limit: currently only supports 404.
    httpMethods List<String>
    Request types that trigger back-to-origin. Value description: ["GET","HEAD"]: Both GetObject and HeadObject requests can trigger back-to-origin. ["GET"]: Only GetObject requests can trigger back-to-origin. Default is ["GET"].
    keyPrefix String
    Object name prefix for matching origin fetch objects. Limit: supports up to 512 characters.
    keySuffix String
    Object name suffix for matching origin fetch objects. Limit: supports up to 512 characters.

    BucketMirrorBackRuleRedirect, BucketMirrorBackRuleRedirectArgs

    FetchHeaderToMetaDataRules List<Volcengine.BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRule>
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    FetchSourceOnRedirect bool
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    FetchSourceOnRedirectWithQuery bool
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    FollowRedirect bool
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    MirrorHeader Volcengine.BucketMirrorBackRuleRedirectMirrorHeader
    Specify the headers to include when mirroring back to origin.
    PassHeaderFromSources List<string>
    List of origin response headers allowed to be passed through directly.
    PassQuery bool
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    PassStatusCodeFromSources List<int>
    List of origin response status codes allowed to be passed through directly.
    PrivateSource Volcengine.BucketMirrorBackRuleRedirectPrivateSource
    Back-to-origin address configuration when the origin server is a private bucket.
    PublicSource Volcengine.BucketMirrorBackRuleRedirectPublicSource
    Back-to-origin address configuration when the origin server is a public bucket.
    RedirectType string
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    Transform Volcengine.BucketMirrorBackRuleRedirectTransform
    Define transformations for the object name when requesting the origin server.
    FetchHeaderToMetaDataRules []BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRule
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    FetchSourceOnRedirect bool
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    FetchSourceOnRedirectWithQuery bool
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    FollowRedirect bool
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    MirrorHeader BucketMirrorBackRuleRedirectMirrorHeader
    Specify the headers to include when mirroring back to origin.
    PassHeaderFromSources []string
    List of origin response headers allowed to be passed through directly.
    PassQuery bool
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    PassStatusCodeFromSources []int
    List of origin response status codes allowed to be passed through directly.
    PrivateSource BucketMirrorBackRuleRedirectPrivateSource
    Back-to-origin address configuration when the origin server is a private bucket.
    PublicSource BucketMirrorBackRuleRedirectPublicSource
    Back-to-origin address configuration when the origin server is a public bucket.
    RedirectType string
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    Transform BucketMirrorBackRuleRedirectTransform
    Define transformations for the object name when requesting the origin server.
    fetch_header_to_meta_data_rules list(object)
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    fetch_source_on_redirect bool
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    fetch_source_on_redirect_with_query bool
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    follow_redirect bool
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    mirror_header object
    Specify the headers to include when mirroring back to origin.
    pass_header_from_sources list(string)
    List of origin response headers allowed to be passed through directly.
    pass_query bool
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    pass_status_code_from_sources list(number)
    List of origin response status codes allowed to be passed through directly.
    private_source object
    Back-to-origin address configuration when the origin server is a private bucket.
    public_source object
    Back-to-origin address configuration when the origin server is a public bucket.
    redirect_type string
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    transform object
    Define transformations for the object name when requesting the origin server.
    fetchHeaderToMetaDataRules List<BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRule>
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    fetchSourceOnRedirect Boolean
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    fetchSourceOnRedirectWithQuery Boolean
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    followRedirect Boolean
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    mirrorHeader BucketMirrorBackRuleRedirectMirrorHeader
    Specify the headers to include when mirroring back to origin.
    passHeaderFromSources List<String>
    List of origin response headers allowed to be passed through directly.
    passQuery Boolean
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    passStatusCodeFromSources List<Integer>
    List of origin response status codes allowed to be passed through directly.
    privateSource BucketMirrorBackRuleRedirectPrivateSource
    Back-to-origin address configuration when the origin server is a private bucket.
    publicSource BucketMirrorBackRuleRedirectPublicSource
    Back-to-origin address configuration when the origin server is a public bucket.
    redirectType String
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    transform BucketMirrorBackRuleRedirectTransform
    Define transformations for the object name when requesting the origin server.
    fetchHeaderToMetaDataRules BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRule[]
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    fetchSourceOnRedirect boolean
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    fetchSourceOnRedirectWithQuery boolean
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    followRedirect boolean
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    mirrorHeader BucketMirrorBackRuleRedirectMirrorHeader
    Specify the headers to include when mirroring back to origin.
    passHeaderFromSources string[]
    List of origin response headers allowed to be passed through directly.
    passQuery boolean
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    passStatusCodeFromSources number[]
    List of origin response status codes allowed to be passed through directly.
    privateSource BucketMirrorBackRuleRedirectPrivateSource
    Back-to-origin address configuration when the origin server is a private bucket.
    publicSource BucketMirrorBackRuleRedirectPublicSource
    Back-to-origin address configuration when the origin server is a public bucket.
    redirectType string
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    transform BucketMirrorBackRuleRedirectTransform
    Define transformations for the object name when requesting the origin server.
    fetch_header_to_meta_data_rules Sequence[BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRule]
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    fetch_source_on_redirect bool
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    fetch_source_on_redirect_with_query bool
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    follow_redirect bool
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    mirror_header BucketMirrorBackRuleRedirectMirrorHeader
    Specify the headers to include when mirroring back to origin.
    pass_header_from_sources Sequence[str]
    List of origin response headers allowed to be passed through directly.
    pass_query bool
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    pass_status_code_from_sources Sequence[int]
    List of origin response status codes allowed to be passed through directly.
    private_source BucketMirrorBackRuleRedirectPrivateSource
    Back-to-origin address configuration when the origin server is a private bucket.
    public_source BucketMirrorBackRuleRedirectPublicSource
    Back-to-origin address configuration when the origin server is a public bucket.
    redirect_type str
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    transform BucketMirrorBackRuleRedirectTransform
    Define transformations for the object name when requesting the origin server.
    fetchHeaderToMetaDataRules List<Property Map>
    List of rules for writing origin response headers to object metadata. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    fetchSourceOnRedirect Boolean
    Whether to fetch data from the configured origin after redirection. Value description: true: Fetch data from the configured origin after redirection. false: Do not fetch data from the configured origin after redirection.
    fetchSourceOnRedirectWithQuery Boolean
    Whether to include request parameters when fetching data after redirection. If not configured, inherits PassQuery settings: true: includes request parameters. false: does not include request parameters.
    followRedirect Boolean
    If the result of mirror origin fetch is 3xx, whether to continue redirecting to the specified Location to fetch data. Value description: true: TOS will continue to request the address corresponding to Location. false: TOS will return 302.
    mirrorHeader Property Map
    Specify the headers to include when mirroring back to origin.
    passHeaderFromSources List<String>
    List of origin response headers allowed to be passed through directly.
    passQuery Boolean
    Whether to include request parameters when performing redirect or mirror back-to-origin rules. Value description: true: Include request parameters. false: Do not include request parameters.
    passStatusCodeFromSources List<Number>
    List of origin response status codes allowed to be passed through directly.
    privateSource Property Map
    Back-to-origin address configuration when the origin server is a private bucket.
    publicSource Property Map
    Back-to-origin address configuration when the origin server is a public bucket.
    redirectType String
    Specify redirect type. Value range: Mirror: Mirror origin fetch. Async: Redirect origin fetch.
    transform Property Map
    Define transformations for the object name when requesting the origin server.

    BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRule, BucketMirrorBackRuleRedirectFetchHeaderToMetaDataRuleArgs

    MetaDataSuffix string
    Suffix appended when writing object metadata.
    SourceHeader string
    Origin response header name.
    MetaDataSuffix string
    Suffix appended when writing object metadata.
    SourceHeader string
    Origin response header name.
    meta_data_suffix string
    Suffix appended when writing object metadata.
    source_header string
    Origin response header name.
    metaDataSuffix String
    Suffix appended when writing object metadata.
    sourceHeader String
    Origin response header name.
    metaDataSuffix string
    Suffix appended when writing object metadata.
    sourceHeader string
    Origin response header name.
    meta_data_suffix str
    Suffix appended when writing object metadata.
    source_header str
    Origin response header name.
    metaDataSuffix String
    Suffix appended when writing object metadata.
    sourceHeader String
    Origin response header name.

    BucketMirrorBackRuleRedirectMirrorHeader, BucketMirrorBackRuleRedirectMirrorHeaderArgs

    PassAll bool
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    Passes List<string>
    Pass the specified headers to the origin server. Limit: up to 64.
    Removes List<string>
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    Sets List<Volcengine.BucketMirrorBackRuleRedirectMirrorHeaderSet>
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    PassAll bool
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    Passes []string
    Pass the specified headers to the origin server. Limit: up to 64.
    Removes []string
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    Sets []BucketMirrorBackRuleRedirectMirrorHeaderSet
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    pass_all bool
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    passes list(string)
    Pass the specified headers to the origin server. Limit: up to 64.
    removes list(string)
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    sets list(object)
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    passAll Boolean
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    passes List<String>
    Pass the specified headers to the origin server. Limit: up to 64.
    removes List<String>
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    sets List<BucketMirrorBackRuleRedirectMirrorHeaderSet>
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    passAll boolean
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    passes string[]
    Pass the specified headers to the origin server. Limit: up to 64.
    removes string[]
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    sets BucketMirrorBackRuleRedirectMirrorHeaderSet[]
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    pass_all bool
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    passes Sequence[str]
    Pass the specified headers to the origin server. Limit: up to 64.
    removes Sequence[str]
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    sets Sequence[BucketMirrorBackRuleRedirectMirrorHeaderSet]
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    passAll Boolean
    Whether to forward all HTTP headers to the origin. Values: true: forwards all HTTP headers to the origin. false: does not forward all HTTP headers to the origin. The following HTTP header types are not supported for forwarding: Host, Content-Length, Date, Authorization.
    passes List<String>
    Pass the specified headers to the origin server. Limit: up to 64.
    removes List<String>
    Prohibit forwarding specified headers to the origin. Limit: maximum 64.
    sets List<Property Map>
    List of request headers to add or overwrite during origin fetch. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.

    BucketMirrorBackRuleRedirectMirrorHeaderSet, BucketMirrorBackRuleRedirectMirrorHeaderSetArgs

    Key string
    Request header name.
    Value string
    Request header value.
    Key string
    Request header name.
    Value string
    Request header value.
    key string
    Request header name.
    value string
    Request header value.
    key String
    Request header name.
    value String
    Request header value.
    key string
    Request header name.
    value string
    Request header value.
    key str
    Request header name.
    value str
    Request header value.
    key String
    Request header name.
    value String
    Request header value.

    BucketMirrorBackRuleRedirectPrivateSource, BucketMirrorBackRuleRedirectPrivateSourceArgs

    SourceEndpoint Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpoint
    Back-to-origin address configuration when the origin server is a private bucket.
    SourceEndpoint BucketMirrorBackRuleRedirectPrivateSourceSourceEndpoint
    Back-to-origin address configuration when the origin server is a private bucket.
    source_endpoint object
    Back-to-origin address configuration when the origin server is a private bucket.
    sourceEndpoint BucketMirrorBackRuleRedirectPrivateSourceSourceEndpoint
    Back-to-origin address configuration when the origin server is a private bucket.
    sourceEndpoint BucketMirrorBackRuleRedirectPrivateSourceSourceEndpoint
    Back-to-origin address configuration when the origin server is a private bucket.
    source_endpoint BucketMirrorBackRuleRedirectPrivateSourceSourceEndpoint
    Back-to-origin address configuration when the origin server is a private bucket.
    sourceEndpoint Property Map
    Back-to-origin address configuration when the origin server is a private bucket.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpoint, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointArgs

    Followers List<Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollower>
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Primaries List<Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimary>
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Followers []BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollower
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Primaries []BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimary
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    followers list(object)
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    primaries list(object)
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    followers List<BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollower>
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    primaries List<BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimary>
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    followers BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollower[]
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    primaries BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimary[]
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    followers Sequence[BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollower]
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    primaries Sequence[BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimary]
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    followers List<Property Map>
    Backup private origin node list. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    primaries List<Property Map>
    Origin address for requests. Supports up to 5 origin fetch addresses. Required when the origin is a private bucket. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollower, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerArgs

    BucketName string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    CredentialProvider Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    Endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    BucketName string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    CredentialProvider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    Endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucket_name string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credential_provider object
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucketName String
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credentialProvider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint String
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucketName string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credentialProvider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucket_name str
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credential_provider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint str
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucketName String
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credentialProvider Property Map
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint String
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProvider, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderArgs

    Region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    Role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    StaticCredential Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredential
    Authenticate using AK/SK.
    Region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    Role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    StaticCredential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    static_credential object
    Authenticate using AK/SK.
    region String
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role String
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    staticCredential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    staticCredential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region str
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role str
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    static_credential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region String
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role String
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    staticCredential Property Map
    Authenticate using AK/SK.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredential, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointFollowerCredentialProviderStaticCredentialArgs

    Ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    Sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    SkEncryptType string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    StorageVendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    Ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    Sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    SkEncryptType string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    StorageVendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    sk_encrypt_type string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storage_vendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak String
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk String
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    skEncryptType String
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storageVendor String
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    skEncryptType string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storageVendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak str
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk str
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    sk_encrypt_type str
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storage_vendor str
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak String
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk String
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    skEncryptType String
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storageVendor String
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimary, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryArgs

    BucketName string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    CredentialProvider Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    Endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    BucketName string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    CredentialProvider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    Endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucket_name string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credential_provider object
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucketName String
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credentialProvider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint String
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucketName string
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credentialProvider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint string
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucket_name str
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credential_provider BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProvider
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint str
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.
    bucketName String
    Name of the origin fetch bucket. Required when the origin is a private bucket.
    credentialProvider Property Map
    Private back-to-origin authentication method. Required when the origin server is a private bucket.
    endpoint String
    Access domain name of the origin service provider, excluding bucket name, maximum length 255. Required for private buckets.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProvider, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderArgs

    Region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    Role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    StaticCredential Volcengine.BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredential
    Authenticate using AK/SK.
    Region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    Role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    StaticCredential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    static_credential object
    Authenticate using AK/SK.
    region String
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role String
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    staticCredential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region string
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role string
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    staticCredential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region str
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role str
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    static_credential BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredential
    Authenticate using AK/SK.
    region String
    Region where the origin fetch bucket is located. Required when using AK/SK authentication.
    role String
    Name of AssumeRole. Only when fetching from a private TOS bucket can AssumeRole be used for authentication. Role authentication and AK/SK authentication are mutually exclusive and cannot be set simultaneously.
    staticCredential Property Map
    Authenticate using AK/SK.

    BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredential, BucketMirrorBackRuleRedirectPrivateSourceSourceEndpointPrimaryCredentialProviderStaticCredentialArgs

    Ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    Sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    SkEncryptType string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    StorageVendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    Ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    Sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    SkEncryptType string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    StorageVendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    sk_encrypt_type string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storage_vendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak String
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk String
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    skEncryptType String
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storageVendor String
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak string
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk string
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    skEncryptType string
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storageVendor string
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak str
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk str
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    sk_encrypt_type str
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storage_vendor str
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.
    ak String
    AccessKey ID of the origin bucket. Required when using AK/SK authentication.
    sk String
    SecretKey for the back-to-origin bucket. Required when using AK/SK authentication.
    skEncryptType String
    Encryption method used for SecretKey. Values: Empty: SecretKey is in plaintext. After receiving the SecretKey, the server will encrypt and store it. AES256: SecretKey has been encrypted using the AES256 algorithm on the server side. After receiving the SecretKey, the server will parse and encrypt it for storage. Note: When a back-to-origin rule is created for the first time, the SecretKey is encrypted with AES256. If you modify the back-to-origin rule without changing the SecretKey parameter, you must first decrypt the SecretKey and then re-encrypt it for storage. Therefore, when calling the PutBucketMirrorBack API to modify the back-to-origin rule and only changing other parameters (not the SecretKey), you can set SKEncryptType to AES256.
    storageVendor String
    Origin service provider. Values: BOS: Baidu Cloud. S3: Other cloud providers using the S3 storage protocol.

    BucketMirrorBackRuleRedirectPublicSource, BucketMirrorBackRuleRedirectPublicSourceArgs

    FixedEndpoint bool
    Whether to always use the configured origin address.
    SourceEndpoint Volcengine.BucketMirrorBackRuleRedirectPublicSourceSourceEndpoint
    Publicly accessible origin address.
    FixedEndpoint bool
    Whether to always use the configured origin address.
    SourceEndpoint BucketMirrorBackRuleRedirectPublicSourceSourceEndpoint
    Publicly accessible origin address.
    fixed_endpoint bool
    Whether to always use the configured origin address.
    source_endpoint object
    Publicly accessible origin address.
    fixedEndpoint Boolean
    Whether to always use the configured origin address.
    sourceEndpoint BucketMirrorBackRuleRedirectPublicSourceSourceEndpoint
    Publicly accessible origin address.
    fixedEndpoint boolean
    Whether to always use the configured origin address.
    sourceEndpoint BucketMirrorBackRuleRedirectPublicSourceSourceEndpoint
    Publicly accessible origin address.
    fixed_endpoint bool
    Whether to always use the configured origin address.
    source_endpoint BucketMirrorBackRuleRedirectPublicSourceSourceEndpoint
    Publicly accessible origin address.
    fixedEndpoint Boolean
    Whether to always use the configured origin address.
    sourceEndpoint Property Map
    Publicly accessible origin address.

    BucketMirrorBackRuleRedirectPublicSourceSourceEndpoint, BucketMirrorBackRuleRedirectPublicSourceSourceEndpointArgs

    Followers List<string>
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    Primaries List<string>
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.
    Followers []string
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    Primaries []string
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.
    followers list(string)
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    primaries list(string)
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.
    followers List<String>
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    primaries List<String>
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.
    followers string[]
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    primaries string[]
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.
    followers Sequence[str]
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    primaries Sequence[str]
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.
    followers List<String>
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses. When all origin fetches fail in Primary, an origin is selected from this configuration.
    primaries List<String>
    Origin address. Limit: Maximum length 255, supports up to 5 origin fetch addresses.

    BucketMirrorBackRuleRedirectTransform, BucketMirrorBackRuleRedirectTransformArgs

    ReplaceKeyPrefix Volcengine.BucketMirrorBackRuleRedirectTransformReplaceKeyPrefix
    Object name prefix to be replaced when requesting the origin.
    WithKeyPrefix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    WithKeySuffix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    ReplaceKeyPrefix BucketMirrorBackRuleRedirectTransformReplaceKeyPrefix
    Object name prefix to be replaced when requesting the origin.
    WithKeyPrefix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    WithKeySuffix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    replace_key_prefix object
    Object name prefix to be replaced when requesting the origin.
    with_key_prefix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    with_key_suffix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    replaceKeyPrefix BucketMirrorBackRuleRedirectTransformReplaceKeyPrefix
    Object name prefix to be replaced when requesting the origin.
    withKeyPrefix String
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    withKeySuffix String
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    replaceKeyPrefix BucketMirrorBackRuleRedirectTransformReplaceKeyPrefix
    Object name prefix to be replaced when requesting the origin.
    withKeyPrefix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    withKeySuffix string
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    replace_key_prefix BucketMirrorBackRuleRedirectTransformReplaceKeyPrefix
    Object name prefix to be replaced when requesting the origin.
    with_key_prefix str
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    with_key_suffix str
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    replaceKeyPrefix Property Map
    Object name prefix to be replaced when requesting the origin.
    withKeyPrefix String
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.
    withKeySuffix String
    Prefix added before the object name when requesting the origin server. Limit: up to 512 characters.

    BucketMirrorBackRuleRedirectTransformReplaceKeyPrefix, BucketMirrorBackRuleRedirectTransformReplaceKeyPrefixArgs

    KeyPrefix string
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    ReplaceWith string
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.
    KeyPrefix string
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    ReplaceWith string
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.
    key_prefix string
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    replace_with string
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.
    keyPrefix String
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    replaceWith String
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.
    keyPrefix string
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    replaceWith string
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.
    key_prefix str
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    replace_with str
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.
    keyPrefix String
    Object name prefix to be replaced when requesting the origin. Limit: Supports up to 512 characters.
    replaceWith String
    Value of the object name prefix after replacement when requesting the origin. Limit: Supports up to 512 characters.

    Import

    $ pulumi import volcenginecc:tos/bucketMirrorBack:BucketMirrorBack example "bucket"
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    volcenginecc volcengine/pulumi-volcenginecc
    License
    MPL-2.0
    Notes
    This Pulumi package is based on the volcenginecc Terraform Provider.
    volcenginecc logo
    Viewing docs for volcenginecc v0.0.49
    published on Thursday, Jul 16, 2026 by Volcengine

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial