Class: AWSCDK::Config::RuleProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
config/rule_props.rb

Overview

Construction properties for a new rule.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config_rule_name: nil, description: nil, evaluation_modes: nil, input_parameters: nil, maximum_execution_frequency: nil, rule_scope: nil) ⇒ RuleProps

Returns a new instance of RuleProps.

Parameters:

  • config_rule_name (String, nil) (defaults to: nil)

    A name for the AWS Config rule.

  • description (String, nil) (defaults to: nil)

    A description about this AWS Config rule.

  • evaluation_modes (AWSCDK::Config::EvaluationMode, nil) (defaults to: nil)

    The modes the AWS Config rule can be evaluated in.

  • input_parameters (Hash{String => Object}, nil) (defaults to: nil)

    Input parameter values that are passed to the AWS Config rule.

  • maximum_execution_frequency (AWSCDK::Config::MaximumExecutionFrequency, nil) (defaults to: nil)

    The maximum frequency at which the AWS Config rule runs evaluations.

  • rule_scope (AWSCDK::Config::RuleScope, nil) (defaults to: nil)

    Defines which resources trigger an evaluation for an AWS Config rule.



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'config/rule_props.rb', line 13

def initialize(config_rule_name: nil, description: nil, evaluation_modes: nil, input_parameters: nil, maximum_execution_frequency: nil, rule_scope: nil)
  @config_rule_name = config_rule_name
  Jsii::Type.check_type(@config_rule_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "configRuleName") unless @config_rule_name.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @evaluation_modes = evaluation_modes
  Jsii::Type.check_type(@evaluation_modes, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29uZmlnLkV2YWx1YXRpb25Nb2RlIn0=")), "evaluationModes") unless @evaluation_modes.nil?
  @input_parameters = input_parameters
  Jsii::Type.check_type(@input_parameters, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "inputParameters") unless @input_parameters.nil?
  @maximum_execution_frequency = maximum_execution_frequency
  Jsii::Type.check_type(@maximum_execution_frequency, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29uZmlnLk1heGltdW1FeGVjdXRpb25GcmVxdWVuY3kifQ==")), "maximumExecutionFrequency") unless @maximum_execution_frequency.nil?
  @rule_scope = rule_scope
  Jsii::Type.check_type(@rule_scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29uZmlnLlJ1bGVTY29wZSJ9")), "ruleScope") unless @rule_scope.nil?
end

Instance Attribute Details

#config_rule_nameString? (readonly)

Note:

Default: - CloudFormation generated name

A name for the AWS Config rule.

Returns:

  • (String, nil)


32
33
34
# File 'config/rule_props.rb', line 32

def config_rule_name
  @config_rule_name
end

#descriptionString? (readonly)

Note:

Default: - No description

A description about this AWS Config rule.

Returns:

  • (String, nil)


37
38
39
# File 'config/rule_props.rb', line 37

def description
  @description
end

#evaluation_modesAWSCDK::Config::EvaluationMode? (readonly)

Note:

Default: - Detective evaluation mode only

The modes the AWS Config rule can be evaluated in.

The valid values are distinct objects.



44
45
46
# File 'config/rule_props.rb', line 44

def evaluation_modes
  @evaluation_modes
end

#input_parametersHash{String => Object}? (readonly)

Note:

Default: - No input parameters

Input parameter values that are passed to the AWS Config rule.

Returns:

  • (Hash{String => Object}, nil)


49
50
51
# File 'config/rule_props.rb', line 49

def input_parameters
  @input_parameters
end

#maximum_execution_frequencyAWSCDK::Config::MaximumExecutionFrequency? (readonly)

Note:

Default: MaximumExecutionFrequency.TWENTY_FOUR_HOURS

The maximum frequency at which the AWS Config rule runs evaluations.



54
55
56
# File 'config/rule_props.rb', line 54

def maximum_execution_frequency
  @maximum_execution_frequency
end

#rule_scopeAWSCDK::Config::RuleScope? (readonly)

Note:

Default: - evaluations for the rule are triggered when any resource in the recording group changes.

Defines which resources trigger an evaluation for an AWS Config rule.

Returns:



59
60
61
# File 'config/rule_props.rb', line 59

def rule_scope
  @rule_scope
end

Class Method Details

.jsii_propertiesObject



61
62
63
64
65
66
67
68
69
70
# File 'config/rule_props.rb', line 61

def self.jsii_properties
  {
    :config_rule_name => "configRuleName",
    :description => "description",
    :evaluation_modes => "evaluationModes",
    :input_parameters => "inputParameters",
    :maximum_execution_frequency => "maximumExecutionFrequency",
    :rule_scope => "ruleScope",
  }
end

Instance Method Details

#to_jsiiObject



72
73
74
75
76
77
78
79
80
81
82
83
# File 'config/rule_props.rb', line 72

def to_jsii
  result = {}
  result.merge!({
    "configRuleName" => @config_rule_name,
    "description" => @description,
    "evaluationModes" => @evaluation_modes,
    "inputParameters" => @input_parameters,
    "maximumExecutionFrequency" => @maximum_execution_frequency,
    "ruleScope" => @rule_scope,
  })
  result.compact
end