Class: AWSCDK::WAF::CfnRuleProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
waf/cfn_rule_props.rb

Overview

Properties for defining a CfnRule.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(metric_name:, name:, predicates: nil) ⇒ CfnRuleProps

Returns a new instance of CfnRuleProps.

Parameters:

  • metric_name (String)

    The name of the metrics for this Rule .

  • name (String)

    The friendly name or description for the Rule .

  • predicates (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::WAF::CfnRule::PredicateProperty>, nil) (defaults to: nil)

    The Predicates object contains one Predicate element for each ByteMatchSet , IPSet , or SqlInjectionMatchSet object that you want to include in a Rule .



12
13
14
15
16
17
18
19
# File 'waf/cfn_rule_props.rb', line 12

def initialize(metric_name:, name:, predicates: nil)
  @metric_name = metric_name
  Jsii::Type.check_type(@metric_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "metricName")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @predicates = predicates
  Jsii::Type.check_type(@predicates, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfd2FmLkNmblJ1bGUuUHJlZGljYXRlUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "predicates") unless @predicates.nil?
end

Instance Attribute Details

#metric_nameString (readonly)

The name of the metrics for this Rule .

The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF , including "All" and "Default_Action." You can't change MetricName after you create the Rule .



27
28
29
# File 'waf/cfn_rule_props.rb', line 27

def metric_name
  @metric_name
end

#nameString (readonly)

The friendly name or description for the Rule .

You can't change the name of a Rule after you create it.



34
35
36
# File 'waf/cfn_rule_props.rb', line 34

def name
  @name
end

#predicatesAWSCDK::IResolvable, ... (readonly)

The Predicates object contains one Predicate element for each ByteMatchSet , IPSet , or SqlInjectionMatchSet object that you want to include in a Rule .



39
40
41
# File 'waf/cfn_rule_props.rb', line 39

def predicates
  @predicates
end

Class Method Details

.jsii_propertiesObject



41
42
43
44
45
46
47
# File 'waf/cfn_rule_props.rb', line 41

def self.jsii_properties
  {
    :metric_name => "metricName",
    :name => "name",
    :predicates => "predicates",
  }
end

Instance Method Details

#to_jsiiObject



49
50
51
52
53
54
55
56
57
# File 'waf/cfn_rule_props.rb', line 49

def to_jsii
  result = {}
  result.merge!({
    "metricName" => @metric_name,
    "name" => @name,
    "predicates" => @predicates,
  })
  result.compact
end