INNER CODE UNIT · Ruby

audit

stelligent/cfn_nag · lib/cfn-nag/cfn_nag.rb:84

  def audit(cloudformation_string:, parameter_values_string: nil, condition_values_string: nil)
    violations = []
    begin
      cfn_model = CfnParser.new.parse cloudformation_string,
                                      parameter_values_string,
                                      true,
                                      condition_values_string
      CustomRuleLoader.rule_arguments = @config.rule_arguments
      violations += @config.custom_rule_loader.execute_custom_rules(
        cfn_model,
        @config.custom_rule_loader.rule_definitions
      )

      violations = filter_violations_by_deny_list_and_profile(violations)
      violations = mark_line_numbers_and_element_types(violations, cfn_model)
    rescue RuleRepoException, Psych::SyntaxError, ParserError => fatal_error
      violations << Violation.fatal_violation(fatal_error.to_s)
    rescue JSON::ParserError => json_parameters_error

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…