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 more information, see [Quotas for your Application Load Balancers].

[1]: docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html

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)


3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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



3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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



3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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



3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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



3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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



3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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



3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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

  • _ - . $ / ~ “ ‘ @ : +

  • &amp; (using &amp;amp;)

    • (matches 0 or more characters)

  • ? (matches exactly 1 character)

Returns:

  • (Array<String>)


3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 3515

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