1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. LoadBalancer
  5. RuleSet
Oracle Cloud Infrastructure v1.32.0 published on Thursday, Apr 18, 2024 by Pulumi

oci.LoadBalancer.RuleSet

Explore with Pulumi AI

oci logo
Oracle Cloud Infrastructure v1.32.0 published on Thursday, Apr 18, 2024 by Pulumi

    This resource provides the Rule Set resource in Oracle Cloud Infrastructure Load Balancer service.

    Creates a new rule set associated with the specified load balancer. For more information, see Managing Rule Sets.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as oci from "@pulumi/oci";
    
    const testRuleSet = new oci.loadbalancer.RuleSet("testRuleSet", {
        items: [{
            action: _var.rule_set_items_action,
            allowedMethods: _var.rule_set_items_allowed_methods,
            areInvalidCharactersAllowed: _var.rule_set_items_are_invalid_characters_allowed,
            conditions: [{
                attributeName: _var.rule_set_items_conditions_attribute_name,
                attributeValue: _var.rule_set_items_conditions_attribute_value,
                operator: _var.rule_set_items_conditions_operator,
            }],
            description: _var.rule_set_items_description,
            header: _var.rule_set_items_header,
            httpLargeHeaderSizeInKb: _var.rule_set_items_http_large_header_size_in_kb,
            prefix: _var.rule_set_items_prefix,
            redirectUri: {
                host: _var.rule_set_items_redirect_uri_host,
                path: _var.rule_set_items_redirect_uri_path,
                port: _var.rule_set_items_redirect_uri_port,
                protocol: _var.rule_set_items_redirect_uri_protocol,
                query: _var.rule_set_items_redirect_uri_query,
            },
            responseCode: _var.rule_set_items_response_code,
            statusCode: _var.rule_set_items_status_code,
            suffix: _var.rule_set_items_suffix,
            value: _var.rule_set_items_value,
        }],
        loadBalancerId: oci_load_balancer_load_balancer.test_load_balancer.id,
    });
    
    import pulumi
    import pulumi_oci as oci
    
    test_rule_set = oci.load_balancer.RuleSet("testRuleSet",
        items=[oci.load_balancer.RuleSetItemArgs(
            action=var["rule_set_items_action"],
            allowed_methods=var["rule_set_items_allowed_methods"],
            are_invalid_characters_allowed=var["rule_set_items_are_invalid_characters_allowed"],
            conditions=[oci.load_balancer.RuleSetItemConditionArgs(
                attribute_name=var["rule_set_items_conditions_attribute_name"],
                attribute_value=var["rule_set_items_conditions_attribute_value"],
                operator=var["rule_set_items_conditions_operator"],
            )],
            description=var["rule_set_items_description"],
            header=var["rule_set_items_header"],
            http_large_header_size_in_kb=var["rule_set_items_http_large_header_size_in_kb"],
            prefix=var["rule_set_items_prefix"],
            redirect_uri=oci.load_balancer.RuleSetItemRedirectUriArgs(
                host=var["rule_set_items_redirect_uri_host"],
                path=var["rule_set_items_redirect_uri_path"],
                port=var["rule_set_items_redirect_uri_port"],
                protocol=var["rule_set_items_redirect_uri_protocol"],
                query=var["rule_set_items_redirect_uri_query"],
            ),
            response_code=var["rule_set_items_response_code"],
            status_code=var["rule_set_items_status_code"],
            suffix=var["rule_set_items_suffix"],
            value=var["rule_set_items_value"],
        )],
        load_balancer_id=oci_load_balancer_load_balancer["test_load_balancer"]["id"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-oci/sdk/go/oci/LoadBalancer"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := LoadBalancer.NewRuleSet(ctx, "testRuleSet", &LoadBalancer.RuleSetArgs{
    			Items: loadbalancer.RuleSetItemArray{
    				&loadbalancer.RuleSetItemArgs{
    					Action:                      pulumi.Any(_var.Rule_set_items_action),
    					AllowedMethods:              pulumi.Any(_var.Rule_set_items_allowed_methods),
    					AreInvalidCharactersAllowed: pulumi.Any(_var.Rule_set_items_are_invalid_characters_allowed),
    					Conditions: loadbalancer.RuleSetItemConditionArray{
    						&loadbalancer.RuleSetItemConditionArgs{
    							AttributeName:  pulumi.Any(_var.Rule_set_items_conditions_attribute_name),
    							AttributeValue: pulumi.Any(_var.Rule_set_items_conditions_attribute_value),
    							Operator:       pulumi.Any(_var.Rule_set_items_conditions_operator),
    						},
    					},
    					Description:             pulumi.Any(_var.Rule_set_items_description),
    					Header:                  pulumi.Any(_var.Rule_set_items_header),
    					HttpLargeHeaderSizeInKb: pulumi.Any(_var.Rule_set_items_http_large_header_size_in_kb),
    					Prefix:                  pulumi.Any(_var.Rule_set_items_prefix),
    					RedirectUri: &loadbalancer.RuleSetItemRedirectUriArgs{
    						Host:     pulumi.Any(_var.Rule_set_items_redirect_uri_host),
    						Path:     pulumi.Any(_var.Rule_set_items_redirect_uri_path),
    						Port:     pulumi.Any(_var.Rule_set_items_redirect_uri_port),
    						Protocol: pulumi.Any(_var.Rule_set_items_redirect_uri_protocol),
    						Query:    pulumi.Any(_var.Rule_set_items_redirect_uri_query),
    					},
    					ResponseCode: pulumi.Any(_var.Rule_set_items_response_code),
    					StatusCode:   pulumi.Any(_var.Rule_set_items_status_code),
    					Suffix:       pulumi.Any(_var.Rule_set_items_suffix),
    					Value:        pulumi.Any(_var.Rule_set_items_value),
    				},
    			},
    			LoadBalancerId: pulumi.Any(oci_load_balancer_load_balancer.Test_load_balancer.Id),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Oci = Pulumi.Oci;
    
    return await Deployment.RunAsync(() => 
    {
        var testRuleSet = new Oci.LoadBalancer.RuleSet("testRuleSet", new()
        {
            Items = new[]
            {
                new Oci.LoadBalancer.Inputs.RuleSetItemArgs
                {
                    Action = @var.Rule_set_items_action,
                    AllowedMethods = @var.Rule_set_items_allowed_methods,
                    AreInvalidCharactersAllowed = @var.Rule_set_items_are_invalid_characters_allowed,
                    Conditions = new[]
                    {
                        new Oci.LoadBalancer.Inputs.RuleSetItemConditionArgs
                        {
                            AttributeName = @var.Rule_set_items_conditions_attribute_name,
                            AttributeValue = @var.Rule_set_items_conditions_attribute_value,
                            Operator = @var.Rule_set_items_conditions_operator,
                        },
                    },
                    Description = @var.Rule_set_items_description,
                    Header = @var.Rule_set_items_header,
                    HttpLargeHeaderSizeInKb = @var.Rule_set_items_http_large_header_size_in_kb,
                    Prefix = @var.Rule_set_items_prefix,
                    RedirectUri = new Oci.LoadBalancer.Inputs.RuleSetItemRedirectUriArgs
                    {
                        Host = @var.Rule_set_items_redirect_uri_host,
                        Path = @var.Rule_set_items_redirect_uri_path,
                        Port = @var.Rule_set_items_redirect_uri_port,
                        Protocol = @var.Rule_set_items_redirect_uri_protocol,
                        Query = @var.Rule_set_items_redirect_uri_query,
                    },
                    ResponseCode = @var.Rule_set_items_response_code,
                    StatusCode = @var.Rule_set_items_status_code,
                    Suffix = @var.Rule_set_items_suffix,
                    Value = @var.Rule_set_items_value,
                },
            },
            LoadBalancerId = oci_load_balancer_load_balancer.Test_load_balancer.Id,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.oci.LoadBalancer.RuleSet;
    import com.pulumi.oci.LoadBalancer.RuleSetArgs;
    import com.pulumi.oci.LoadBalancer.inputs.RuleSetItemArgs;
    import com.pulumi.oci.LoadBalancer.inputs.RuleSetItemRedirectUriArgs;
    import java.util.List;
    import java.util.ArrayList;
    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 testRuleSet = new RuleSet("testRuleSet", RuleSetArgs.builder()        
                .items(RuleSetItemArgs.builder()
                    .action(var_.rule_set_items_action())
                    .allowedMethods(var_.rule_set_items_allowed_methods())
                    .areInvalidCharactersAllowed(var_.rule_set_items_are_invalid_characters_allowed())
                    .conditions(RuleSetItemConditionArgs.builder()
                        .attributeName(var_.rule_set_items_conditions_attribute_name())
                        .attributeValue(var_.rule_set_items_conditions_attribute_value())
                        .operator(var_.rule_set_items_conditions_operator())
                        .build())
                    .description(var_.rule_set_items_description())
                    .header(var_.rule_set_items_header())
                    .httpLargeHeaderSizeInKb(var_.rule_set_items_http_large_header_size_in_kb())
                    .prefix(var_.rule_set_items_prefix())
                    .redirectUri(RuleSetItemRedirectUriArgs.builder()
                        .host(var_.rule_set_items_redirect_uri_host())
                        .path(var_.rule_set_items_redirect_uri_path())
                        .port(var_.rule_set_items_redirect_uri_port())
                        .protocol(var_.rule_set_items_redirect_uri_protocol())
                        .query(var_.rule_set_items_redirect_uri_query())
                        .build())
                    .responseCode(var_.rule_set_items_response_code())
                    .statusCode(var_.rule_set_items_status_code())
                    .suffix(var_.rule_set_items_suffix())
                    .value(var_.rule_set_items_value())
                    .build())
                .loadBalancerId(oci_load_balancer_load_balancer.test_load_balancer().id())
                .build());
    
        }
    }
    
    resources:
      testRuleSet:
        type: oci:LoadBalancer:RuleSet
        properties:
          #Required
          items:
            - action: ${var.rule_set_items_action}
              allowedMethods: ${var.rule_set_items_allowed_methods}
              areInvalidCharactersAllowed: ${var.rule_set_items_are_invalid_characters_allowed}
              conditions:
                - attributeName: ${var.rule_set_items_conditions_attribute_name}
                  attributeValue: ${var.rule_set_items_conditions_attribute_value}
                  operator: ${var.rule_set_items_conditions_operator}
              description: ${var.rule_set_items_description}
              header: ${var.rule_set_items_header}
              httpLargeHeaderSizeInKb: ${var.rule_set_items_http_large_header_size_in_kb}
              prefix: ${var.rule_set_items_prefix}
              redirectUri:
                host: ${var.rule_set_items_redirect_uri_host}
                path: ${var.rule_set_items_redirect_uri_path}
                port: ${var.rule_set_items_redirect_uri_port}
                protocol: ${var.rule_set_items_redirect_uri_protocol}
                query: ${var.rule_set_items_redirect_uri_query}
              responseCode: ${var.rule_set_items_response_code}
              statusCode: ${var.rule_set_items_status_code}
              suffix: ${var.rule_set_items_suffix}
              value: ${var.rule_set_items_value}
          loadBalancerId: ${oci_load_balancer_load_balancer.test_load_balancer.id}
    

    Create RuleSet Resource

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

    Constructor syntax

    new RuleSet(name: string, args: RuleSetArgs, opts?: CustomResourceOptions);
    @overload
    def RuleSet(resource_name: str,
                args: RuleSetArgs,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def RuleSet(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                items: Optional[Sequence[_loadbalancer.RuleSetItemArgs]] = None,
                load_balancer_id: Optional[str] = None,
                name: Optional[str] = None)
    func NewRuleSet(ctx *Context, name string, args RuleSetArgs, opts ...ResourceOption) (*RuleSet, error)
    public RuleSet(string name, RuleSetArgs args, CustomResourceOptions? opts = null)
    public RuleSet(String name, RuleSetArgs args)
    public RuleSet(String name, RuleSetArgs args, CustomResourceOptions options)
    
    type: oci:LoadBalancer:RuleSet
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RuleSetArgs
    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 RuleSetArgs
    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 RuleSetArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RuleSetArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RuleSetArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

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

    var ruleSetResource = new Oci.LoadBalancer.RuleSet("ruleSetResource", new()
    {
        Items = new[]
        {
            new Oci.LoadBalancer.Inputs.RuleSetItemArgs
            {
                Action = "string",
                AllowedMethods = new[]
                {
                    "string",
                },
                AreInvalidCharactersAllowed = false,
                Conditions = new[]
                {
                    new Oci.LoadBalancer.Inputs.RuleSetItemConditionArgs
                    {
                        AttributeName = "string",
                        AttributeValue = "string",
                        Operator = "string",
                    },
                },
                Description = "string",
                Header = "string",
                HttpLargeHeaderSizeInKb = 0,
                Prefix = "string",
                RedirectUri = new Oci.LoadBalancer.Inputs.RuleSetItemRedirectUriArgs
                {
                    Host = "string",
                    Path = "string",
                    Port = 0,
                    Protocol = "string",
                    Query = "string",
                },
                ResponseCode = 0,
                StatusCode = 0,
                Suffix = "string",
                Value = "string",
            },
        },
        LoadBalancerId = "string",
        Name = "string",
    });
    
    example, err := LoadBalancer.NewRuleSet(ctx, "ruleSetResource", &LoadBalancer.RuleSetArgs{
    	Items: loadbalancer.RuleSetItemArray{
    		&loadbalancer.RuleSetItemArgs{
    			Action: pulumi.String("string"),
    			AllowedMethods: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			AreInvalidCharactersAllowed: pulumi.Bool(false),
    			Conditions: loadbalancer.RuleSetItemConditionArray{
    				&loadbalancer.RuleSetItemConditionArgs{
    					AttributeName:  pulumi.String("string"),
    					AttributeValue: pulumi.String("string"),
    					Operator:       pulumi.String("string"),
    				},
    			},
    			Description:             pulumi.String("string"),
    			Header:                  pulumi.String("string"),
    			HttpLargeHeaderSizeInKb: pulumi.Int(0),
    			Prefix:                  pulumi.String("string"),
    			RedirectUri: &loadbalancer.RuleSetItemRedirectUriArgs{
    				Host:     pulumi.String("string"),
    				Path:     pulumi.String("string"),
    				Port:     pulumi.Int(0),
    				Protocol: pulumi.String("string"),
    				Query:    pulumi.String("string"),
    			},
    			ResponseCode: pulumi.Int(0),
    			StatusCode:   pulumi.Int(0),
    			Suffix:       pulumi.String("string"),
    			Value:        pulumi.String("string"),
    		},
    	},
    	LoadBalancerId: pulumi.String("string"),
    	Name:           pulumi.String("string"),
    })
    
    var ruleSetResource = new RuleSet("ruleSetResource", RuleSetArgs.builder()        
        .items(RuleSetItemArgs.builder()
            .action("string")
            .allowedMethods("string")
            .areInvalidCharactersAllowed(false)
            .conditions(RuleSetItemConditionArgs.builder()
                .attributeName("string")
                .attributeValue("string")
                .operator("string")
                .build())
            .description("string")
            .header("string")
            .httpLargeHeaderSizeInKb(0)
            .prefix("string")
            .redirectUri(RuleSetItemRedirectUriArgs.builder()
                .host("string")
                .path("string")
                .port(0)
                .protocol("string")
                .query("string")
                .build())
            .responseCode(0)
            .statusCode(0)
            .suffix("string")
            .value("string")
            .build())
        .loadBalancerId("string")
        .name("string")
        .build());
    
    rule_set_resource = oci.load_balancer.RuleSet("ruleSetResource",
        items=[oci.load_balancer.RuleSetItemArgs(
            action="string",
            allowed_methods=["string"],
            are_invalid_characters_allowed=False,
            conditions=[oci.load_balancer.RuleSetItemConditionArgs(
                attribute_name="string",
                attribute_value="string",
                operator="string",
            )],
            description="string",
            header="string",
            http_large_header_size_in_kb=0,
            prefix="string",
            redirect_uri=oci.load_balancer.RuleSetItemRedirectUriArgs(
                host="string",
                path="string",
                port=0,
                protocol="string",
                query="string",
            ),
            response_code=0,
            status_code=0,
            suffix="string",
            value="string",
        )],
        load_balancer_id="string",
        name="string")
    
    const ruleSetResource = new oci.loadbalancer.RuleSet("ruleSetResource", {
        items: [{
            action: "string",
            allowedMethods: ["string"],
            areInvalidCharactersAllowed: false,
            conditions: [{
                attributeName: "string",
                attributeValue: "string",
                operator: "string",
            }],
            description: "string",
            header: "string",
            httpLargeHeaderSizeInKb: 0,
            prefix: "string",
            redirectUri: {
                host: "string",
                path: "string",
                port: 0,
                protocol: "string",
                query: "string",
            },
            responseCode: 0,
            statusCode: 0,
            suffix: "string",
            value: "string",
        }],
        loadBalancerId: "string",
        name: "string",
    });
    
    type: oci:LoadBalancer:RuleSet
    properties:
        items:
            - action: string
              allowedMethods:
                - string
              areInvalidCharactersAllowed: false
              conditions:
                - attributeName: string
                  attributeValue: string
                  operator: string
              description: string
              header: string
              httpLargeHeaderSizeInKb: 0
              prefix: string
              redirectUri:
                host: string
                path: string
                port: 0
                protocol: string
                query: string
              responseCode: 0
              statusCode: 0
              suffix: string
              value: string
        loadBalancerId: string
        name: string
    

    RuleSet Resource Properties

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

    Inputs

    The RuleSet resource accepts the following input properties:

    Items List<RuleSetItem>
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    LoadBalancerId string
    The OCID of the specified load balancer.
    Name string

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    Items []RuleSetItemArgs
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    LoadBalancerId string
    The OCID of the specified load balancer.
    Name string

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    items List<RuleSetItem>
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    loadBalancerId String
    The OCID of the specified load balancer.
    name String

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    items RuleSetItem[]
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    loadBalancerId string
    The OCID of the specified load balancer.
    name string

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    items Sequence[loadbalancer.RuleSetItemArgs]
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    load_balancer_id str
    The OCID of the specified load balancer.
    name str

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    items List<Property Map>
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    loadBalancerId String
    The OCID of the specified load balancer.
    name String

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    Outputs

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

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

    Look up Existing RuleSet Resource

    Get an existing RuleSet 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?: RuleSetState, opts?: CustomResourceOptions): RuleSet
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            items: Optional[Sequence[_loadbalancer.RuleSetItemArgs]] = None,
            load_balancer_id: Optional[str] = None,
            name: Optional[str] = None,
            state: Optional[str] = None) -> RuleSet
    func GetRuleSet(ctx *Context, name string, id IDInput, state *RuleSetState, opts ...ResourceOption) (*RuleSet, error)
    public static RuleSet Get(string name, Input<string> id, RuleSetState? state, CustomResourceOptions? opts = null)
    public static RuleSet get(String name, Output<String> id, RuleSetState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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:
    Items List<RuleSetItem>
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    LoadBalancerId string
    The OCID of the specified load balancer.
    Name string

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    State string
    Items []RuleSetItemArgs
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    LoadBalancerId string
    The OCID of the specified load balancer.
    Name string

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    State string
    items List<RuleSetItem>
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    loadBalancerId String
    The OCID of the specified load balancer.
    name String

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    state String
    items RuleSetItem[]
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    loadBalancerId string
    The OCID of the specified load balancer.
    name string

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    state string
    items Sequence[loadbalancer.RuleSetItemArgs]
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    load_balancer_id str
    The OCID of the specified load balancer.
    name str

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    state str
    items List<Property Map>
    (Updatable) An array of rules that compose the rule set. For more information, see Managing Rule Sets
    loadBalancerId String
    The OCID of the specified load balancer.
    name String

    The name for this set of rules. It must be unique and it cannot be changed. Avoid entering confidential information. Example: example_rule_set

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    state String

    Supporting Types

    RuleSetItem, RuleSetItemArgs

    Action string
    (Updatable) The action can be one of these values: ADD_HTTP_REQUEST_HEADER, ADD_HTTP_RESPONSE_HEADER, ALLOW, CONTROL_ACCESS_USING_HTTP_METHODS, EXTEND_HTTP_REQUEST_HEADER_VALUE, EXTEND_HTTP_RESPONSE_HEADER_VALUE, HTTP_HEADER, REDIRECT, REMOVE_HTTP_REQUEST_HEADER, REMOVE_HTTP_RESPONSE_HEADER
    AllowedMethods List<string>

    (Updatable) The list of HTTP methods allowed for this listener.

    By default, you can specify only the standard HTTP methods defined in the HTTP Method Registry. You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at Managing Rule Sets.

    Your backend application must be able to handle the methods specified in this list.

    The list of HTTP methods is extensible. If you need to configure custom HTTP methods, contact My Oracle Support to remove the restriction for your tenancy.

    Example: ["GET", "PUT", "POST", "PROPFIND"]

    AreInvalidCharactersAllowed bool
    (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
    Conditions List<RuleSetItemCondition>
    (Updatable)
    Description string

    (Updatable) A brief description of the access control rule. Avoid entering confidential information.

    example: 192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.

    Header string
    (Updatable) A header name that conforms to RFC 7230. Example: example_header_name
    HttpLargeHeaderSizeInKb int
    (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
    Prefix string

    (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_prefix_value

    RedirectUri RuleSetItemRedirectUri

    (Updatable) An object that defines the redirect URI applied to the original request. The object property values compose the redirect URI.

    NOTE: The Load Balancing service cannot automatically detect or avoid infinite redirects. Be sure to provide meaningful, complete, and correct field values. If any component field of this object has no value, the system retains the value from the incoming HTTP request URI.

    For example, if you specify only the protocol field https, and the incoming request URI is http://example.com:8080, the resulting runtime redirect URI is https://example.com:8080. The system retains the host and port from the incoming URI and does not automatically change the port setting from 8080 to 443.

    Be sure to configure valid percent-encoding (URL encoding) when needed.

    In addition to static string values, you can use the following tokens to construct the redirect URI. These tokens extract values from the incoming HTTP request URI.

    • {protocol} : The protocol from the incoming HTTP request URI.
    • {host} : The domain name from the incoming HTTP request URI.
    • {port} : The port from the incoming HTTP request URI.
    • {path} : The path from the incoming HTTP request URI.
    • {query} : The query string from the incoming HTTP request URI.

    The tokens are case sensitive. For example, {host} is a valid token, but {HOST} is not.

    You can retain the literal characters of a token when you specify values for the path and query properties of the redirect URI. Use a backslash (\) as the escape character for the \, {, and } characters. For example, if the incoming HTTP request URI is /video, the path property value:

    /example{path}123\{path\}

    appears in the constructed redirect URI as:

    /example/video123{path}

    ResponseCode int

    (Updatable) The HTTP status code to return when the incoming request is redirected.

    The status line returned with the code is mapped from the standard HTTP specification. Valid response codes for redirection are:

    • 301
    • 302
    • 303
    • 307
    • 308

    The default value is 302 (Found).

    Example: 301

    StatusCode int
    (Updatable) The HTTP status code to return when the requested HTTP method is not in the list of allowed methods. The associated status line returned with the code is mapped from the standard HTTP specification. The default value is 405 (Method Not Allowed). Example: 403
    Suffix string

    (Updatable) A string to append to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_suffix_value

    Value string

    (Updatable) A header value that conforms to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_value

    Action string
    (Updatable) The action can be one of these values: ADD_HTTP_REQUEST_HEADER, ADD_HTTP_RESPONSE_HEADER, ALLOW, CONTROL_ACCESS_USING_HTTP_METHODS, EXTEND_HTTP_REQUEST_HEADER_VALUE, EXTEND_HTTP_RESPONSE_HEADER_VALUE, HTTP_HEADER, REDIRECT, REMOVE_HTTP_REQUEST_HEADER, REMOVE_HTTP_RESPONSE_HEADER
    AllowedMethods []string

    (Updatable) The list of HTTP methods allowed for this listener.

    By default, you can specify only the standard HTTP methods defined in the HTTP Method Registry. You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at Managing Rule Sets.

    Your backend application must be able to handle the methods specified in this list.

    The list of HTTP methods is extensible. If you need to configure custom HTTP methods, contact My Oracle Support to remove the restriction for your tenancy.

    Example: ["GET", "PUT", "POST", "PROPFIND"]

    AreInvalidCharactersAllowed bool
    (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
    Conditions []RuleSetItemCondition
    (Updatable)
    Description string

    (Updatable) A brief description of the access control rule. Avoid entering confidential information.

    example: 192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.

    Header string
    (Updatable) A header name that conforms to RFC 7230. Example: example_header_name
    HttpLargeHeaderSizeInKb int
    (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
    Prefix string

    (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_prefix_value

    RedirectUri RuleSetItemRedirectUri

    (Updatable) An object that defines the redirect URI applied to the original request. The object property values compose the redirect URI.

    NOTE: The Load Balancing service cannot automatically detect or avoid infinite redirects. Be sure to provide meaningful, complete, and correct field values. If any component field of this object has no value, the system retains the value from the incoming HTTP request URI.

    For example, if you specify only the protocol field https, and the incoming request URI is http://example.com:8080, the resulting runtime redirect URI is https://example.com:8080. The system retains the host and port from the incoming URI and does not automatically change the port setting from 8080 to 443.

    Be sure to configure valid percent-encoding (URL encoding) when needed.

    In addition to static string values, you can use the following tokens to construct the redirect URI. These tokens extract values from the incoming HTTP request URI.

    • {protocol} : The protocol from the incoming HTTP request URI.
    • {host} : The domain name from the incoming HTTP request URI.
    • {port} : The port from the incoming HTTP request URI.
    • {path} : The path from the incoming HTTP request URI.
    • {query} : The query string from the incoming HTTP request URI.

    The tokens are case sensitive. For example, {host} is a valid token, but {HOST} is not.

    You can retain the literal characters of a token when you specify values for the path and query properties of the redirect URI. Use a backslash (\) as the escape character for the \, {, and } characters. For example, if the incoming HTTP request URI is /video, the path property value:

    /example{path}123\{path\}

    appears in the constructed redirect URI as:

    /example/video123{path}

    ResponseCode int

    (Updatable) The HTTP status code to return when the incoming request is redirected.

    The status line returned with the code is mapped from the standard HTTP specification. Valid response codes for redirection are:

    • 301
    • 302
    • 303
    • 307
    • 308

    The default value is 302 (Found).

    Example: 301

    StatusCode int
    (Updatable) The HTTP status code to return when the requested HTTP method is not in the list of allowed methods. The associated status line returned with the code is mapped from the standard HTTP specification. The default value is 405 (Method Not Allowed). Example: 403
    Suffix string

    (Updatable) A string to append to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_suffix_value

    Value string

    (Updatable) A header value that conforms to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_value

    action String
    (Updatable) The action can be one of these values: ADD_HTTP_REQUEST_HEADER, ADD_HTTP_RESPONSE_HEADER, ALLOW, CONTROL_ACCESS_USING_HTTP_METHODS, EXTEND_HTTP_REQUEST_HEADER_VALUE, EXTEND_HTTP_RESPONSE_HEADER_VALUE, HTTP_HEADER, REDIRECT, REMOVE_HTTP_REQUEST_HEADER, REMOVE_HTTP_RESPONSE_HEADER
    allowedMethods List<String>

    (Updatable) The list of HTTP methods allowed for this listener.

    By default, you can specify only the standard HTTP methods defined in the HTTP Method Registry. You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at Managing Rule Sets.

    Your backend application must be able to handle the methods specified in this list.

    The list of HTTP methods is extensible. If you need to configure custom HTTP methods, contact My Oracle Support to remove the restriction for your tenancy.

    Example: ["GET", "PUT", "POST", "PROPFIND"]

    areInvalidCharactersAllowed Boolean
    (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
    conditions List<RuleSetItemCondition>
    (Updatable)
    description String

    (Updatable) A brief description of the access control rule. Avoid entering confidential information.

    example: 192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.

    header String
    (Updatable) A header name that conforms to RFC 7230. Example: example_header_name
    httpLargeHeaderSizeInKb Integer
    (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
    prefix String

    (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_prefix_value

    redirectUri RuleSetItemRedirectUri

    (Updatable) An object that defines the redirect URI applied to the original request. The object property values compose the redirect URI.

    NOTE: The Load Balancing service cannot automatically detect or avoid infinite redirects. Be sure to provide meaningful, complete, and correct field values. If any component field of this object has no value, the system retains the value from the incoming HTTP request URI.

    For example, if you specify only the protocol field https, and the incoming request URI is http://example.com:8080, the resulting runtime redirect URI is https://example.com:8080. The system retains the host and port from the incoming URI and does not automatically change the port setting from 8080 to 443.

    Be sure to configure valid percent-encoding (URL encoding) when needed.

    In addition to static string values, you can use the following tokens to construct the redirect URI. These tokens extract values from the incoming HTTP request URI.

    • {protocol} : The protocol from the incoming HTTP request URI.
    • {host} : The domain name from the incoming HTTP request URI.
    • {port} : The port from the incoming HTTP request URI.
    • {path} : The path from the incoming HTTP request URI.
    • {query} : The query string from the incoming HTTP request URI.

    The tokens are case sensitive. For example, {host} is a valid token, but {HOST} is not.

    You can retain the literal characters of a token when you specify values for the path and query properties of the redirect URI. Use a backslash (\) as the escape character for the \, {, and } characters. For example, if the incoming HTTP request URI is /video, the path property value:

    /example{path}123\{path\}

    appears in the constructed redirect URI as:

    /example/video123{path}

    responseCode Integer

    (Updatable) The HTTP status code to return when the incoming request is redirected.

    The status line returned with the code is mapped from the standard HTTP specification. Valid response codes for redirection are:

    • 301
    • 302
    • 303
    • 307
    • 308

    The default value is 302 (Found).

    Example: 301

    statusCode Integer
    (Updatable) The HTTP status code to return when the requested HTTP method is not in the list of allowed methods. The associated status line returned with the code is mapped from the standard HTTP specification. The default value is 405 (Method Not Allowed). Example: 403
    suffix String

    (Updatable) A string to append to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_suffix_value

    value String

    (Updatable) A header value that conforms to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_value

    action string
    (Updatable) The action can be one of these values: ADD_HTTP_REQUEST_HEADER, ADD_HTTP_RESPONSE_HEADER, ALLOW, CONTROL_ACCESS_USING_HTTP_METHODS, EXTEND_HTTP_REQUEST_HEADER_VALUE, EXTEND_HTTP_RESPONSE_HEADER_VALUE, HTTP_HEADER, REDIRECT, REMOVE_HTTP_REQUEST_HEADER, REMOVE_HTTP_RESPONSE_HEADER
    allowedMethods string[]

    (Updatable) The list of HTTP methods allowed for this listener.

    By default, you can specify only the standard HTTP methods defined in the HTTP Method Registry. You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at Managing Rule Sets.

    Your backend application must be able to handle the methods specified in this list.

    The list of HTTP methods is extensible. If you need to configure custom HTTP methods, contact My Oracle Support to remove the restriction for your tenancy.

    Example: ["GET", "PUT", "POST", "PROPFIND"]

    areInvalidCharactersAllowed boolean
    (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
    conditions RuleSetItemCondition[]
    (Updatable)
    description string

    (Updatable) A brief description of the access control rule. Avoid entering confidential information.

    example: 192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.

    header string
    (Updatable) A header name that conforms to RFC 7230. Example: example_header_name
    httpLargeHeaderSizeInKb number
    (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
    prefix string

    (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_prefix_value

    redirectUri RuleSetItemRedirectUri

    (Updatable) An object that defines the redirect URI applied to the original request. The object property values compose the redirect URI.

    NOTE: The Load Balancing service cannot automatically detect or avoid infinite redirects. Be sure to provide meaningful, complete, and correct field values. If any component field of this object has no value, the system retains the value from the incoming HTTP request URI.

    For example, if you specify only the protocol field https, and the incoming request URI is http://example.com:8080, the resulting runtime redirect URI is https://example.com:8080. The system retains the host and port from the incoming URI and does not automatically change the port setting from 8080 to 443.

    Be sure to configure valid percent-encoding (URL encoding) when needed.

    In addition to static string values, you can use the following tokens to construct the redirect URI. These tokens extract values from the incoming HTTP request URI.

    • {protocol} : The protocol from the incoming HTTP request URI.
    • {host} : The domain name from the incoming HTTP request URI.
    • {port} : The port from the incoming HTTP request URI.
    • {path} : The path from the incoming HTTP request URI.
    • {query} : The query string from the incoming HTTP request URI.

    The tokens are case sensitive. For example, {host} is a valid token, but {HOST} is not.

    You can retain the literal characters of a token when you specify values for the path and query properties of the redirect URI. Use a backslash (\) as the escape character for the \, {, and } characters. For example, if the incoming HTTP request URI is /video, the path property value:

    /example{path}123\{path\}

    appears in the constructed redirect URI as:

    /example/video123{path}

    responseCode number

    (Updatable) The HTTP status code to return when the incoming request is redirected.

    The status line returned with the code is mapped from the standard HTTP specification. Valid response codes for redirection are:

    • 301
    • 302
    • 303
    • 307
    • 308

    The default value is 302 (Found).

    Example: 301

    statusCode number
    (Updatable) The HTTP status code to return when the requested HTTP method is not in the list of allowed methods. The associated status line returned with the code is mapped from the standard HTTP specification. The default value is 405 (Method Not Allowed). Example: 403
    suffix string

    (Updatable) A string to append to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_suffix_value

    value string

    (Updatable) A header value that conforms to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_value

    action str
    (Updatable) The action can be one of these values: ADD_HTTP_REQUEST_HEADER, ADD_HTTP_RESPONSE_HEADER, ALLOW, CONTROL_ACCESS_USING_HTTP_METHODS, EXTEND_HTTP_REQUEST_HEADER_VALUE, EXTEND_HTTP_RESPONSE_HEADER_VALUE, HTTP_HEADER, REDIRECT, REMOVE_HTTP_REQUEST_HEADER, REMOVE_HTTP_RESPONSE_HEADER
    allowed_methods Sequence[str]

    (Updatable) The list of HTTP methods allowed for this listener.

    By default, you can specify only the standard HTTP methods defined in the HTTP Method Registry. You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at Managing Rule Sets.

    Your backend application must be able to handle the methods specified in this list.

    The list of HTTP methods is extensible. If you need to configure custom HTTP methods, contact My Oracle Support to remove the restriction for your tenancy.

    Example: ["GET", "PUT", "POST", "PROPFIND"]

    are_invalid_characters_allowed bool
    (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
    conditions Sequence[loadbalancer.RuleSetItemCondition]
    (Updatable)
    description str

    (Updatable) A brief description of the access control rule. Avoid entering confidential information.

    example: 192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.

    header str
    (Updatable) A header name that conforms to RFC 7230. Example: example_header_name
    http_large_header_size_in_kb int
    (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
    prefix str

    (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_prefix_value

    redirect_uri loadbalancer.RuleSetItemRedirectUri

    (Updatable) An object that defines the redirect URI applied to the original request. The object property values compose the redirect URI.

    NOTE: The Load Balancing service cannot automatically detect or avoid infinite redirects. Be sure to provide meaningful, complete, and correct field values. If any component field of this object has no value, the system retains the value from the incoming HTTP request URI.

    For example, if you specify only the protocol field https, and the incoming request URI is http://example.com:8080, the resulting runtime redirect URI is https://example.com:8080. The system retains the host and port from the incoming URI and does not automatically change the port setting from 8080 to 443.

    Be sure to configure valid percent-encoding (URL encoding) when needed.

    In addition to static string values, you can use the following tokens to construct the redirect URI. These tokens extract values from the incoming HTTP request URI.

    • {protocol} : The protocol from the incoming HTTP request URI.
    • {host} : The domain name from the incoming HTTP request URI.
    • {port} : The port from the incoming HTTP request URI.
    • {path} : The path from the incoming HTTP request URI.
    • {query} : The query string from the incoming HTTP request URI.

    The tokens are case sensitive. For example, {host} is a valid token, but {HOST} is not.

    You can retain the literal characters of a token when you specify values for the path and query properties of the redirect URI. Use a backslash (\) as the escape character for the \, {, and } characters. For example, if the incoming HTTP request URI is /video, the path property value:

    /example{path}123\{path\}

    appears in the constructed redirect URI as:

    /example/video123{path}

    response_code int

    (Updatable) The HTTP status code to return when the incoming request is redirected.

    The status line returned with the code is mapped from the standard HTTP specification. Valid response codes for redirection are:

    • 301
    • 302
    • 303
    • 307
    • 308

    The default value is 302 (Found).

    Example: 301

    status_code int
    (Updatable) The HTTP status code to return when the requested HTTP method is not in the list of allowed methods. The associated status line returned with the code is mapped from the standard HTTP specification. The default value is 405 (Method Not Allowed). Example: 403
    suffix str

    (Updatable) A string to append to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_suffix_value

    value str

    (Updatable) A header value that conforms to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_value

    action String
    (Updatable) The action can be one of these values: ADD_HTTP_REQUEST_HEADER, ADD_HTTP_RESPONSE_HEADER, ALLOW, CONTROL_ACCESS_USING_HTTP_METHODS, EXTEND_HTTP_REQUEST_HEADER_VALUE, EXTEND_HTTP_RESPONSE_HEADER_VALUE, HTTP_HEADER, REDIRECT, REMOVE_HTTP_REQUEST_HEADER, REMOVE_HTTP_RESPONSE_HEADER
    allowedMethods List<String>

    (Updatable) The list of HTTP methods allowed for this listener.

    By default, you can specify only the standard HTTP methods defined in the HTTP Method Registry. You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at Managing Rule Sets.

    Your backend application must be able to handle the methods specified in this list.

    The list of HTTP methods is extensible. If you need to configure custom HTTP methods, contact My Oracle Support to remove the restriction for your tenancy.

    Example: ["GET", "PUT", "POST", "PROPFIND"]

    areInvalidCharactersAllowed Boolean
    (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
    conditions List<Property Map>
    (Updatable)
    description String

    (Updatable) A brief description of the access control rule. Avoid entering confidential information.

    example: 192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.

    header String
    (Updatable) A header name that conforms to RFC 7230. Example: example_header_name
    httpLargeHeaderSizeInKb Number
    (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
    prefix String

    (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_prefix_value

    redirectUri Property Map

    (Updatable) An object that defines the redirect URI applied to the original request. The object property values compose the redirect URI.

    NOTE: The Load Balancing service cannot automatically detect or avoid infinite redirects. Be sure to provide meaningful, complete, and correct field values. If any component field of this object has no value, the system retains the value from the incoming HTTP request URI.

    For example, if you specify only the protocol field https, and the incoming request URI is http://example.com:8080, the resulting runtime redirect URI is https://example.com:8080. The system retains the host and port from the incoming URI and does not automatically change the port setting from 8080 to 443.

    Be sure to configure valid percent-encoding (URL encoding) when needed.

    In addition to static string values, you can use the following tokens to construct the redirect URI. These tokens extract values from the incoming HTTP request URI.

    • {protocol} : The protocol from the incoming HTTP request URI.
    • {host} : The domain name from the incoming HTTP request URI.
    • {port} : The port from the incoming HTTP request URI.
    • {path} : The path from the incoming HTTP request URI.
    • {query} : The query string from the incoming HTTP request URI.

    The tokens are case sensitive. For example, {host} is a valid token, but {HOST} is not.

    You can retain the literal characters of a token when you specify values for the path and query properties of the redirect URI. Use a backslash (\) as the escape character for the \, {, and } characters. For example, if the incoming HTTP request URI is /video, the path property value:

    /example{path}123\{path\}

    appears in the constructed redirect URI as:

    /example/video123{path}

    responseCode Number

    (Updatable) The HTTP status code to return when the incoming request is redirected.

    The status line returned with the code is mapped from the standard HTTP specification. Valid response codes for redirection are:

    • 301
    • 302
    • 303
    • 307
    • 308

    The default value is 302 (Found).

    Example: 301

    statusCode Number
    (Updatable) The HTTP status code to return when the requested HTTP method is not in the list of allowed methods. The associated status line returned with the code is mapped from the standard HTTP specification. The default value is 405 (Method Not Allowed). Example: 403
    suffix String

    (Updatable) A string to append to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_suffix_value

    value String

    (Updatable) A header value that conforms to RFC 7230. With the following exceptions:

    • value cannot contain $
    • value cannot contain patterns like {variable_name}. They are reserved for future extensions. Currently, such values are invalid.

    Example: example_value

    RuleSetItemCondition, RuleSetItemConditionArgs

    AttributeName string
    (Updatable) The attribute_name can be one of these values: PATH, SOURCE_IP_ADDRESS, SOURCE_VCN_ID, SOURCE_VCN_IP_ADDRESS
    AttributeValue string
    (Updatable) Depends on attribute_name:

    • when attribute_name = SOURCE_IP_ADDRESS | IPv4 or IPv6 address range to which the source IP address of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_IP_ADDRESS | IPv4 address range to which the original client IP address (in customer VCN) of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_ID | OCID of the customer VCN to which the service gateway embedded VCN ID of incoming packet would be matched against
    Operator string
    (Updatable) A string that specifies how to compare the PathMatchCondition object's attributeValue string to the incoming URI.

    • EXACT_MATCH - The incoming URI path must exactly and completely match the attributeValue string.
    • FORCE_LONGEST_PREFIX_MATCH - The system looks for the attributeValue string with the best, longest match of the beginning portion of the incoming URI path.
    • PREFIX_MATCH - The beginning portion of the incoming URI path must exactly match the attributeValue string.
    • SUFFIX_MATCH - The ending portion of the incoming URI path must exactly match the attributeValue string.
    AttributeName string
    (Updatable) The attribute_name can be one of these values: PATH, SOURCE_IP_ADDRESS, SOURCE_VCN_ID, SOURCE_VCN_IP_ADDRESS
    AttributeValue string
    (Updatable) Depends on attribute_name:

    • when attribute_name = SOURCE_IP_ADDRESS | IPv4 or IPv6 address range to which the source IP address of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_IP_ADDRESS | IPv4 address range to which the original client IP address (in customer VCN) of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_ID | OCID of the customer VCN to which the service gateway embedded VCN ID of incoming packet would be matched against
    Operator string
    (Updatable) A string that specifies how to compare the PathMatchCondition object's attributeValue string to the incoming URI.

    • EXACT_MATCH - The incoming URI path must exactly and completely match the attributeValue string.
    • FORCE_LONGEST_PREFIX_MATCH - The system looks for the attributeValue string with the best, longest match of the beginning portion of the incoming URI path.
    • PREFIX_MATCH - The beginning portion of the incoming URI path must exactly match the attributeValue string.
    • SUFFIX_MATCH - The ending portion of the incoming URI path must exactly match the attributeValue string.
    attributeName String
    (Updatable) The attribute_name can be one of these values: PATH, SOURCE_IP_ADDRESS, SOURCE_VCN_ID, SOURCE_VCN_IP_ADDRESS
    attributeValue String
    (Updatable) Depends on attribute_name:

    • when attribute_name = SOURCE_IP_ADDRESS | IPv4 or IPv6 address range to which the source IP address of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_IP_ADDRESS | IPv4 address range to which the original client IP address (in customer VCN) of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_ID | OCID of the customer VCN to which the service gateway embedded VCN ID of incoming packet would be matched against
    operator String
    (Updatable) A string that specifies how to compare the PathMatchCondition object's attributeValue string to the incoming URI.

    • EXACT_MATCH - The incoming URI path must exactly and completely match the attributeValue string.
    • FORCE_LONGEST_PREFIX_MATCH - The system looks for the attributeValue string with the best, longest match of the beginning portion of the incoming URI path.
    • PREFIX_MATCH - The beginning portion of the incoming URI path must exactly match the attributeValue string.
    • SUFFIX_MATCH - The ending portion of the incoming URI path must exactly match the attributeValue string.
    attributeName string
    (Updatable) The attribute_name can be one of these values: PATH, SOURCE_IP_ADDRESS, SOURCE_VCN_ID, SOURCE_VCN_IP_ADDRESS
    attributeValue string
    (Updatable) Depends on attribute_name:

    • when attribute_name = SOURCE_IP_ADDRESS | IPv4 or IPv6 address range to which the source IP address of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_IP_ADDRESS | IPv4 address range to which the original client IP address (in customer VCN) of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_ID | OCID of the customer VCN to which the service gateway embedded VCN ID of incoming packet would be matched against
    operator string
    (Updatable) A string that specifies how to compare the PathMatchCondition object's attributeValue string to the incoming URI.

    • EXACT_MATCH - The incoming URI path must exactly and completely match the attributeValue string.
    • FORCE_LONGEST_PREFIX_MATCH - The system looks for the attributeValue string with the best, longest match of the beginning portion of the incoming URI path.
    • PREFIX_MATCH - The beginning portion of the incoming URI path must exactly match the attributeValue string.
    • SUFFIX_MATCH - The ending portion of the incoming URI path must exactly match the attributeValue string.
    attribute_name str
    (Updatable) The attribute_name can be one of these values: PATH, SOURCE_IP_ADDRESS, SOURCE_VCN_ID, SOURCE_VCN_IP_ADDRESS
    attribute_value str
    (Updatable) Depends on attribute_name:

    • when attribute_name = SOURCE_IP_ADDRESS | IPv4 or IPv6 address range to which the source IP address of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_IP_ADDRESS | IPv4 address range to which the original client IP address (in customer VCN) of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_ID | OCID of the customer VCN to which the service gateway embedded VCN ID of incoming packet would be matched against
    operator str
    (Updatable) A string that specifies how to compare the PathMatchCondition object's attributeValue string to the incoming URI.

    • EXACT_MATCH - The incoming URI path must exactly and completely match the attributeValue string.
    • FORCE_LONGEST_PREFIX_MATCH - The system looks for the attributeValue string with the best, longest match of the beginning portion of the incoming URI path.
    • PREFIX_MATCH - The beginning portion of the incoming URI path must exactly match the attributeValue string.
    • SUFFIX_MATCH - The ending portion of the incoming URI path must exactly match the attributeValue string.
    attributeName String
    (Updatable) The attribute_name can be one of these values: PATH, SOURCE_IP_ADDRESS, SOURCE_VCN_ID, SOURCE_VCN_IP_ADDRESS
    attributeValue String
    (Updatable) Depends on attribute_name:

    • when attribute_name = SOURCE_IP_ADDRESS | IPv4 or IPv6 address range to which the source IP address of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_IP_ADDRESS | IPv4 address range to which the original client IP address (in customer VCN) of incoming packet would be matched against
    • when attribute_name = SOURCE_VCN_ID | OCID of the customer VCN to which the service gateway embedded VCN ID of incoming packet would be matched against
    operator String
    (Updatable) A string that specifies how to compare the PathMatchCondition object's attributeValue string to the incoming URI.

    • EXACT_MATCH - The incoming URI path must exactly and completely match the attributeValue string.
    • FORCE_LONGEST_PREFIX_MATCH - The system looks for the attributeValue string with the best, longest match of the beginning portion of the incoming URI path.
    • PREFIX_MATCH - The beginning portion of the incoming URI path must exactly match the attributeValue string.
    • SUFFIX_MATCH - The ending portion of the incoming URI path must exactly match the attributeValue string.

    RuleSetItemRedirectUri, RuleSetItemRedirectUriArgs

    Host string

    (Updatable) The valid domain name (hostname) or IP address to use in the redirect URI.

    When this value is null, not set, or set to {host}, the service preserves the original domain name from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    Curly braces are valid in this property only to surround tokens, such as {host}

    Examples:

    • example.com appears as example.com in the redirect URI.
    • in{host} appears as inexample.com in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • {port}{host} appears as 8081example.com in the redirect URI if example.com is the hostname and the port is 8081 in the incoming HTTP request URI.
    Path string

    (Updatable) The HTTP URI path to use in the redirect URI.

    When this value is null, not set, or set to {path}, the service preserves the original path from the incoming HTTP request URI. To omit the path from the redirect URI, set this value to an empty string, "".

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    The path string must begin with / if it does not begin with the {path} token.

    Examples:

    • /example/video/123 appears as /example/video/123 in the redirect URI.
    • /example{path} appears as /example/video/123 in the redirect URI if /video/123 is the path in the incoming HTTP request URI.
    • {path}/123 appears as /example/video/123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • {path}123 appears as /example/video123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • /{host}/123 appears as /example.com/123 in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • /{host}/{port} appears as /example.com/123 in the redirect URI if example.com is the hostname and 123 is the port in the incoming HTTP request URI.
    • /{query} appears as /lang=en in the redirect URI if the query is lang=en in the incoming HTTP request URI.
    Port int

    (Updatable) The communication port to use in the redirect URI.

    Valid values include integers from 1 to 65535.

    When this value is null, the service preserves the original port from the incoming HTTP request URI.

    Example: 8081

    Protocol string

    (Updatable) The HTTP protocol to use in the redirect URI.

    When this value is null, not set, or set to {protocol}, the service preserves the original protocol from the incoming HTTP request URI. Allowed values are:

    • HTTP
    • HTTPS
    • {protocol}

    {protocol} is the only valid token for this property. It can appear only once in the value string.

    Example: HTTPS

    Query string

    (Updatable) The query string to use in the redirect URI.

    When this value is null, not set, or set to {query}, the service preserves the original query parameters from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    If the query string does not begin with the {query} token, it must begin with the question mark (?) character.

    You can specify multiple query parameters as a single string. Separate each query parameter with an ampersand (&) character. To omit all incoming query parameters from the redirect URI, set this value to an empty string, "".

    If the specified query string results in a redirect URI ending with ? or &, the last character is truncated. For example, if the incoming URI is http://host.com:8080/documents and the query property value is ?lang=en&{query}, the redirect URI is http://host.com:8080/documents?lang=en. The system truncates the final ampersand (&) because the incoming URI included no value to replace the {query} token.

    Examples:

    • lang=en&time_zone=PST appears as lang=en&time_zone=PST in the redirect URI.
    • {query} appears as lang=en&time_zone=PST in the redirect URI if lang=en&time_zone=PST is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, the {query} token renders as an empty string.
    • lang=en&{query}&time_zone=PST appears as lang=en&country=us&time_zone=PST in the redirect URI if country=us is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, this value renders as lang=en&time_zone=PST.
    • protocol={protocol}&hostname={host} appears as protocol=http&hostname=example.com in the redirect URI if the protocol is HTTP and the hostname is example.com in the incoming HTTP request.
    • port={port}&hostname={host} appears as port=8080&hostname=example.com in the redirect URI if the port is 8080 and the hostname is example.com in the incoming HTTP request URI.
    Host string

    (Updatable) The valid domain name (hostname) or IP address to use in the redirect URI.

    When this value is null, not set, or set to {host}, the service preserves the original domain name from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    Curly braces are valid in this property only to surround tokens, such as {host}

    Examples:

    • example.com appears as example.com in the redirect URI.
    • in{host} appears as inexample.com in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • {port}{host} appears as 8081example.com in the redirect URI if example.com is the hostname and the port is 8081 in the incoming HTTP request URI.
    Path string

    (Updatable) The HTTP URI path to use in the redirect URI.

    When this value is null, not set, or set to {path}, the service preserves the original path from the incoming HTTP request URI. To omit the path from the redirect URI, set this value to an empty string, "".

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    The path string must begin with / if it does not begin with the {path} token.

    Examples:

    • /example/video/123 appears as /example/video/123 in the redirect URI.
    • /example{path} appears as /example/video/123 in the redirect URI if /video/123 is the path in the incoming HTTP request URI.
    • {path}/123 appears as /example/video/123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • {path}123 appears as /example/video123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • /{host}/123 appears as /example.com/123 in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • /{host}/{port} appears as /example.com/123 in the redirect URI if example.com is the hostname and 123 is the port in the incoming HTTP request URI.
    • /{query} appears as /lang=en in the redirect URI if the query is lang=en in the incoming HTTP request URI.
    Port int

    (Updatable) The communication port to use in the redirect URI.

    Valid values include integers from 1 to 65535.

    When this value is null, the service preserves the original port from the incoming HTTP request URI.

    Example: 8081

    Protocol string

    (Updatable) The HTTP protocol to use in the redirect URI.

    When this value is null, not set, or set to {protocol}, the service preserves the original protocol from the incoming HTTP request URI. Allowed values are:

    • HTTP
    • HTTPS
    • {protocol}

    {protocol} is the only valid token for this property. It can appear only once in the value string.

    Example: HTTPS

    Query string

    (Updatable) The query string to use in the redirect URI.

    When this value is null, not set, or set to {query}, the service preserves the original query parameters from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    If the query string does not begin with the {query} token, it must begin with the question mark (?) character.

    You can specify multiple query parameters as a single string. Separate each query parameter with an ampersand (&) character. To omit all incoming query parameters from the redirect URI, set this value to an empty string, "".

    If the specified query string results in a redirect URI ending with ? or &, the last character is truncated. For example, if the incoming URI is http://host.com:8080/documents and the query property value is ?lang=en&{query}, the redirect URI is http://host.com:8080/documents?lang=en. The system truncates the final ampersand (&) because the incoming URI included no value to replace the {query} token.

    Examples:

    • lang=en&time_zone=PST appears as lang=en&time_zone=PST in the redirect URI.
    • {query} appears as lang=en&time_zone=PST in the redirect URI if lang=en&time_zone=PST is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, the {query} token renders as an empty string.
    • lang=en&{query}&time_zone=PST appears as lang=en&country=us&time_zone=PST in the redirect URI if country=us is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, this value renders as lang=en&time_zone=PST.
    • protocol={protocol}&hostname={host} appears as protocol=http&hostname=example.com in the redirect URI if the protocol is HTTP and the hostname is example.com in the incoming HTTP request.
    • port={port}&hostname={host} appears as port=8080&hostname=example.com in the redirect URI if the port is 8080 and the hostname is example.com in the incoming HTTP request URI.
    host String

    (Updatable) The valid domain name (hostname) or IP address to use in the redirect URI.

    When this value is null, not set, or set to {host}, the service preserves the original domain name from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    Curly braces are valid in this property only to surround tokens, such as {host}

    Examples:

    • example.com appears as example.com in the redirect URI.
    • in{host} appears as inexample.com in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • {port}{host} appears as 8081example.com in the redirect URI if example.com is the hostname and the port is 8081 in the incoming HTTP request URI.
    path String

    (Updatable) The HTTP URI path to use in the redirect URI.

    When this value is null, not set, or set to {path}, the service preserves the original path from the incoming HTTP request URI. To omit the path from the redirect URI, set this value to an empty string, "".

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    The path string must begin with / if it does not begin with the {path} token.

    Examples:

    • /example/video/123 appears as /example/video/123 in the redirect URI.
    • /example{path} appears as /example/video/123 in the redirect URI if /video/123 is the path in the incoming HTTP request URI.
    • {path}/123 appears as /example/video/123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • {path}123 appears as /example/video123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • /{host}/123 appears as /example.com/123 in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • /{host}/{port} appears as /example.com/123 in the redirect URI if example.com is the hostname and 123 is the port in the incoming HTTP request URI.
    • /{query} appears as /lang=en in the redirect URI if the query is lang=en in the incoming HTTP request URI.
    port Integer

    (Updatable) The communication port to use in the redirect URI.

    Valid values include integers from 1 to 65535.

    When this value is null, the service preserves the original port from the incoming HTTP request URI.

    Example: 8081

    protocol String

    (Updatable) The HTTP protocol to use in the redirect URI.

    When this value is null, not set, or set to {protocol}, the service preserves the original protocol from the incoming HTTP request URI. Allowed values are:

    • HTTP
    • HTTPS
    • {protocol}

    {protocol} is the only valid token for this property. It can appear only once in the value string.

    Example: HTTPS

    query String

    (Updatable) The query string to use in the redirect URI.

    When this value is null, not set, or set to {query}, the service preserves the original query parameters from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    If the query string does not begin with the {query} token, it must begin with the question mark (?) character.

    You can specify multiple query parameters as a single string. Separate each query parameter with an ampersand (&) character. To omit all incoming query parameters from the redirect URI, set this value to an empty string, "".

    If the specified query string results in a redirect URI ending with ? or &, the last character is truncated. For example, if the incoming URI is http://host.com:8080/documents and the query property value is ?lang=en&{query}, the redirect URI is http://host.com:8080/documents?lang=en. The system truncates the final ampersand (&) because the incoming URI included no value to replace the {query} token.

    Examples:

    • lang=en&time_zone=PST appears as lang=en&time_zone=PST in the redirect URI.
    • {query} appears as lang=en&time_zone=PST in the redirect URI if lang=en&time_zone=PST is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, the {query} token renders as an empty string.
    • lang=en&{query}&time_zone=PST appears as lang=en&country=us&time_zone=PST in the redirect URI if country=us is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, this value renders as lang=en&time_zone=PST.
    • protocol={protocol}&hostname={host} appears as protocol=http&hostname=example.com in the redirect URI if the protocol is HTTP and the hostname is example.com in the incoming HTTP request.
    • port={port}&hostname={host} appears as port=8080&hostname=example.com in the redirect URI if the port is 8080 and the hostname is example.com in the incoming HTTP request URI.
    host string

    (Updatable) The valid domain name (hostname) or IP address to use in the redirect URI.

    When this value is null, not set, or set to {host}, the service preserves the original domain name from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    Curly braces are valid in this property only to surround tokens, such as {host}

    Examples:

    • example.com appears as example.com in the redirect URI.
    • in{host} appears as inexample.com in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • {port}{host} appears as 8081example.com in the redirect URI if example.com is the hostname and the port is 8081 in the incoming HTTP request URI.
    path string

    (Updatable) The HTTP URI path to use in the redirect URI.

    When this value is null, not set, or set to {path}, the service preserves the original path from the incoming HTTP request URI. To omit the path from the redirect URI, set this value to an empty string, "".

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    The path string must begin with / if it does not begin with the {path} token.

    Examples:

    • /example/video/123 appears as /example/video/123 in the redirect URI.
    • /example{path} appears as /example/video/123 in the redirect URI if /video/123 is the path in the incoming HTTP request URI.
    • {path}/123 appears as /example/video/123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • {path}123 appears as /example/video123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • /{host}/123 appears as /example.com/123 in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • /{host}/{port} appears as /example.com/123 in the redirect URI if example.com is the hostname and 123 is the port in the incoming HTTP request URI.
    • /{query} appears as /lang=en in the redirect URI if the query is lang=en in the incoming HTTP request URI.
    port number

    (Updatable) The communication port to use in the redirect URI.

    Valid values include integers from 1 to 65535.

    When this value is null, the service preserves the original port from the incoming HTTP request URI.

    Example: 8081

    protocol string

    (Updatable) The HTTP protocol to use in the redirect URI.

    When this value is null, not set, or set to {protocol}, the service preserves the original protocol from the incoming HTTP request URI. Allowed values are:

    • HTTP
    • HTTPS
    • {protocol}

    {protocol} is the only valid token for this property. It can appear only once in the value string.

    Example: HTTPS

    query string

    (Updatable) The query string to use in the redirect URI.

    When this value is null, not set, or set to {query}, the service preserves the original query parameters from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    If the query string does not begin with the {query} token, it must begin with the question mark (?) character.

    You can specify multiple query parameters as a single string. Separate each query parameter with an ampersand (&) character. To omit all incoming query parameters from the redirect URI, set this value to an empty string, "".

    If the specified query string results in a redirect URI ending with ? or &, the last character is truncated. For example, if the incoming URI is http://host.com:8080/documents and the query property value is ?lang=en&{query}, the redirect URI is http://host.com:8080/documents?lang=en. The system truncates the final ampersand (&) because the incoming URI included no value to replace the {query} token.

    Examples:

    • lang=en&time_zone=PST appears as lang=en&time_zone=PST in the redirect URI.
    • {query} appears as lang=en&time_zone=PST in the redirect URI if lang=en&time_zone=PST is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, the {query} token renders as an empty string.
    • lang=en&{query}&time_zone=PST appears as lang=en&country=us&time_zone=PST in the redirect URI if country=us is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, this value renders as lang=en&time_zone=PST.
    • protocol={protocol}&hostname={host} appears as protocol=http&hostname=example.com in the redirect URI if the protocol is HTTP and the hostname is example.com in the incoming HTTP request.
    • port={port}&hostname={host} appears as port=8080&hostname=example.com in the redirect URI if the port is 8080 and the hostname is example.com in the incoming HTTP request URI.
    host str

    (Updatable) The valid domain name (hostname) or IP address to use in the redirect URI.

    When this value is null, not set, or set to {host}, the service preserves the original domain name from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    Curly braces are valid in this property only to surround tokens, such as {host}

    Examples:

    • example.com appears as example.com in the redirect URI.
    • in{host} appears as inexample.com in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • {port}{host} appears as 8081example.com in the redirect URI if example.com is the hostname and the port is 8081 in the incoming HTTP request URI.
    path str

    (Updatable) The HTTP URI path to use in the redirect URI.

    When this value is null, not set, or set to {path}, the service preserves the original path from the incoming HTTP request URI. To omit the path from the redirect URI, set this value to an empty string, "".

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    The path string must begin with / if it does not begin with the {path} token.

    Examples:

    • /example/video/123 appears as /example/video/123 in the redirect URI.
    • /example{path} appears as /example/video/123 in the redirect URI if /video/123 is the path in the incoming HTTP request URI.
    • {path}/123 appears as /example/video/123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • {path}123 appears as /example/video123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • /{host}/123 appears as /example.com/123 in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • /{host}/{port} appears as /example.com/123 in the redirect URI if example.com is the hostname and 123 is the port in the incoming HTTP request URI.
    • /{query} appears as /lang=en in the redirect URI if the query is lang=en in the incoming HTTP request URI.
    port int

    (Updatable) The communication port to use in the redirect URI.

    Valid values include integers from 1 to 65535.

    When this value is null, the service preserves the original port from the incoming HTTP request URI.

    Example: 8081

    protocol str

    (Updatable) The HTTP protocol to use in the redirect URI.

    When this value is null, not set, or set to {protocol}, the service preserves the original protocol from the incoming HTTP request URI. Allowed values are:

    • HTTP
    • HTTPS
    • {protocol}

    {protocol} is the only valid token for this property. It can appear only once in the value string.

    Example: HTTPS

    query str

    (Updatable) The query string to use in the redirect URI.

    When this value is null, not set, or set to {query}, the service preserves the original query parameters from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    If the query string does not begin with the {query} token, it must begin with the question mark (?) character.

    You can specify multiple query parameters as a single string. Separate each query parameter with an ampersand (&) character. To omit all incoming query parameters from the redirect URI, set this value to an empty string, "".

    If the specified query string results in a redirect URI ending with ? or &, the last character is truncated. For example, if the incoming URI is http://host.com:8080/documents and the query property value is ?lang=en&{query}, the redirect URI is http://host.com:8080/documents?lang=en. The system truncates the final ampersand (&) because the incoming URI included no value to replace the {query} token.

    Examples:

    • lang=en&time_zone=PST appears as lang=en&time_zone=PST in the redirect URI.
    • {query} appears as lang=en&time_zone=PST in the redirect URI if lang=en&time_zone=PST is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, the {query} token renders as an empty string.
    • lang=en&{query}&time_zone=PST appears as lang=en&country=us&time_zone=PST in the redirect URI if country=us is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, this value renders as lang=en&time_zone=PST.
    • protocol={protocol}&hostname={host} appears as protocol=http&hostname=example.com in the redirect URI if the protocol is HTTP and the hostname is example.com in the incoming HTTP request.
    • port={port}&hostname={host} appears as port=8080&hostname=example.com in the redirect URI if the port is 8080 and the hostname is example.com in the incoming HTTP request URI.
    host String

    (Updatable) The valid domain name (hostname) or IP address to use in the redirect URI.

    When this value is null, not set, or set to {host}, the service preserves the original domain name from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    Curly braces are valid in this property only to surround tokens, such as {host}

    Examples:

    • example.com appears as example.com in the redirect URI.
    • in{host} appears as inexample.com in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • {port}{host} appears as 8081example.com in the redirect URI if example.com is the hostname and the port is 8081 in the incoming HTTP request URI.
    path String

    (Updatable) The HTTP URI path to use in the redirect URI.

    When this value is null, not set, or set to {path}, the service preserves the original path from the incoming HTTP request URI. To omit the path from the redirect URI, set this value to an empty string, "".

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    The path string must begin with / if it does not begin with the {path} token.

    Examples:

    • /example/video/123 appears as /example/video/123 in the redirect URI.
    • /example{path} appears as /example/video/123 in the redirect URI if /video/123 is the path in the incoming HTTP request URI.
    • {path}/123 appears as /example/video/123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • {path}123 appears as /example/video123 in the redirect URI if /example/video is the path in the incoming HTTP request URI.
    • /{host}/123 appears as /example.com/123 in the redirect URI if example.com is the hostname in the incoming HTTP request URI.
    • /{host}/{port} appears as /example.com/123 in the redirect URI if example.com is the hostname and 123 is the port in the incoming HTTP request URI.
    • /{query} appears as /lang=en in the redirect URI if the query is lang=en in the incoming HTTP request URI.
    port Number

    (Updatable) The communication port to use in the redirect URI.

    Valid values include integers from 1 to 65535.

    When this value is null, the service preserves the original port from the incoming HTTP request URI.

    Example: 8081

    protocol String

    (Updatable) The HTTP protocol to use in the redirect URI.

    When this value is null, not set, or set to {protocol}, the service preserves the original protocol from the incoming HTTP request URI. Allowed values are:

    • HTTP
    • HTTPS
    • {protocol}

    {protocol} is the only valid token for this property. It can appear only once in the value string.

    Example: HTTPS

    query String

    (Updatable) The query string to use in the redirect URI.

    When this value is null, not set, or set to {query}, the service preserves the original query parameters from the incoming HTTP request URI.

    All RedirectUri tokens are valid for this property. You can use any token more than once.

    If the query string does not begin with the {query} token, it must begin with the question mark (?) character.

    You can specify multiple query parameters as a single string. Separate each query parameter with an ampersand (&) character. To omit all incoming query parameters from the redirect URI, set this value to an empty string, "".

    If the specified query string results in a redirect URI ending with ? or &, the last character is truncated. For example, if the incoming URI is http://host.com:8080/documents and the query property value is ?lang=en&{query}, the redirect URI is http://host.com:8080/documents?lang=en. The system truncates the final ampersand (&) because the incoming URI included no value to replace the {query} token.

    Examples:

    • lang=en&time_zone=PST appears as lang=en&time_zone=PST in the redirect URI.
    • {query} appears as lang=en&time_zone=PST in the redirect URI if lang=en&time_zone=PST is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, the {query} token renders as an empty string.
    • lang=en&{query}&time_zone=PST appears as lang=en&country=us&time_zone=PST in the redirect URI if country=us is the query string in the incoming HTTP request. If the incoming HTTP request has no query parameters, this value renders as lang=en&time_zone=PST.
    • protocol={protocol}&hostname={host} appears as protocol=http&hostname=example.com in the redirect URI if the protocol is HTTP and the hostname is example.com in the incoming HTTP request.
    • port={port}&hostname={host} appears as port=8080&hostname=example.com in the redirect URI if the port is 8080 and the hostname is example.com in the incoming HTTP request URI.

    Import

    RuleSets can be imported using the id, e.g.

    $ pulumi import oci:LoadBalancer/ruleSet:RuleSet test_rule_set "loadBalancers/{loadBalancerId}/ruleSets/{ruleSetName}"
    

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

    Package Details

    Repository
    oci pulumi/pulumi-oci
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the oci Terraform Provider.
    oci logo
    Oracle Cloud Infrastructure v1.32.0 published on Thursday, Apr 18, 2024 by Pulumi