oci logo
Oracle Cloud Infrastructure v0.12.0, Mar 17 23

oci.LoadBalancer.RuleSet

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

using System.Collections.Generic;
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 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
	})
}
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());

    }
}
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"])
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,
});
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

new RuleSet(name: string, args: RuleSetArgs, opts?: CustomResourceOptions);
@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)
@overload
def RuleSet(resource_name: str,
            args: RuleSetArgs,
            opts: Optional[ResourceOptions] = 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.

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.

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<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

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

items List<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

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

items 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

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

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<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

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

State string
items List<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

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

state string
items 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

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

state String

Supporting Types

RuleSetItem

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.

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.

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.
RedirectUri RuleSetItemRedirectUri

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

ResponseCode int

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

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.
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.
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.

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.

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.
RedirectUri RuleSetItemRedirectUri

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

ResponseCode int

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

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.
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.
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.

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.

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.
redirectUri RuleSetItemRedirectUri

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

responseCode Integer

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

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.
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.
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.

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.

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.
redirectUri RuleSetItemRedirectUri

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

responseCode number

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

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.
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.
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.

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 RuleSetItemCondition]

(Updatable)

description str

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

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.
redirect_uri RuleSetItemRedirectUri

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

response_code int

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

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.
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.
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.

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.

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.
redirectUri Property Map

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

responseCode Number

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

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.
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.

RuleSetItemCondition

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

Host string

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

Path string

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

Port int

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

Protocol string

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

Query string

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

Host string

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

Path string

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

Port int

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

Protocol string

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

Query string

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

host String

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

path String

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

port Integer

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

protocol String

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

query String

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

host string

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

path string

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

port number

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

protocol string

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

query string

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

host str

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

path str

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

port int

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

protocol str

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

query str

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

host String

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

path String

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

port Number

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

protocol String

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

query String

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

Import

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

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

Package Details

Repository
oci pulumi/pulumi-oci
License
Apache-2.0
Notes

This Pulumi package is based on the oci Terraform Provider.