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

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

Overview

Note:

When making an API call, you may pass RuleCondition data as a hash:

{
  field: "ConditionFieldName",
  values: ["StringValue"],
  host_header_config: {
    values: ["StringValue"],
  },
  path_pattern_config: {
    values: ["StringValue"],
  },
  http_header_config: {
    http_header_name: "HttpHeaderConditionName",
    values: ["StringValue"],
  },
  query_string_config: {
    values: [
      {
        key: "StringValue",
        value: "StringValue",
      },
    ],
  },
  http_request_method_config: {
    values: ["StringValue"],
  },
  source_ip_config: {
    values: ["StringValue"],
  },
}

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.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#fieldString

The field in the HTTP request. The following are the possible values:

  • http-header

  • http-request-method

  • host-header

  • path-pattern

  • query-string

  • source-ip

Returns:

  • (String)


3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end

#host_header_configTypes::HostHeaderConditionConfig

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



3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end

#http_header_configTypes::HttpHeaderConditionConfig

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



3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end

#http_request_method_configTypes::HttpRequestMethodConditionConfig

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



3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end

#path_pattern_configTypes::PathPatternConditionConfig

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



3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end

#query_string_configTypes::QueryStringConditionConfig

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



3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end

#source_ip_configTypes::SourceIpConditionConfig

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



3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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


3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
# File 'gems/aws-sdk-elasticloadbalancingv2/lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3448

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)
  SENSITIVE = []
  include Aws::Structure
end