Class: Aws::ElasticLoadBalancingV2::Types::RuleCondition

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

Overview

Information about a condition for a rule.

Each rule can optionally include up to one of each of the following conditions: http-request-method, host-header, path-pattern, and source-ip. Each rule can also optionally include one or more of each of the following conditions: http-header and query-string. Note that the value for a condition can't be empty.

For Network Load Balancer listener rules, the only supported condition is source-ip. Use SourceIpConfig with IpAddressType to match on the IP address type of the source traffic (ipv4 or ipv6).

For more information, see Quotas for your Application Load Balancers.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#fieldString

The name of the field. The possible values are:

  • http-header – [ALB] Matches on an HTTP header field.

  • http-request-method – [ALB] Matches on the HTTP request method.

  • host-header – [ALB] Matches on the host header.

  • path-pattern – [ALB] Matches on the URL path of the request.

  • query-string – [ALB] Matches on a query string parameter.

  • source-ip – [ALB, NLB] Matches on the source IP address. For ALB, use SourceIpConfig with Values to specify CIDR ranges. For NLB, use SourceIpConfig with IpAddressType to match the IP address type (ipv4 or ipv6).

Returns:

  • (String)


3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#host_header_configTypes::HostHeaderConditionConfig

Information for a host header condition. Specify only when Field is host-header.



3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#http_header_configTypes::HttpHeaderConditionConfig

Information for an HTTP header condition. Specify only when Field is http-header.



3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#http_request_method_configTypes::HttpRequestMethodConditionConfig

Information for an HTTP method condition. Specify only when Field is http-request-method.



3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#path_pattern_configTypes::PathPatternConditionConfig

Information for a path pattern condition. Specify only when Field is path-pattern.



3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#query_string_configTypes::QueryStringConditionConfig

Information for a query string condition. Specify only when Field is query-string.



3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#regex_valuesArray<String>

The regular expressions to match against the condition field. The maximum length of each string is 128 characters. Specify only when Field is http-header, host-header, or path-pattern.

Returns:

  • (Array<String>)


3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#source_ip_configTypes::SourceIpConditionConfig

Information for a source IP condition. Specify only when Field is source-ip.



3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end

#valuesArray<String>

The condition value. Specify only when Field is host-header or path-pattern. Alternatively, to specify multiple host names or multiple path patterns, use HostHeaderConfig or PathPatternConfig.

If Field is host-header and you are not using HostHeaderConfig, you can specify a single host name (for example, my.example.com) in Values. A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters.

  • A-Z, a-z, 0-9

  • - .

    • (matches 0 or more characters)
  • ? (matches exactly 1 character)

If Field is path-pattern and you are not using PathPatternConfig, you can specify a single path pattern (for example, /img/*) in Values. A path pattern is case-sensitive, can be up to 128 characters in length, and can contain any of the following characters.

  • A-Z, a-z, 0-9

  • _ - . $ / ~ " ' @ : +

  • & (using &amp;)

    • (matches 0 or more characters)
  • ? (matches exactly 1 character)

Returns:

  • (Array<String>)


3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3831

class RuleCondition < Struct.new(
  :field,
  :values,
  :host_header_config,
  :path_pattern_config,
  :http_header_config,
  :query_string_config,
  :http_request_method_config,
  :source_ip_config,
  :regex_values)
  SENSITIVE = []
  include Aws::Structure
end