Class: CloudFrontDistributionAccessLoggingRule

Inherits:
BaseRule
  • Object
show all
Defined in:
lib/cfn-nag/custom_rules/CloudFrontDistributionAccessLoggingRule.rb

Overview

Rule class to ensure a CF distribution has logging

Instance Method Summary collapse

Methods inherited from BaseRule

#audit

Instance Method Details

#audit_impl(cfn_model) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/cfn-nag/custom_rules/CloudFrontDistributionAccessLoggingRule.rb', line 20

def audit_impl(cfn_model)
  violating_distributions = cfn_model.resources_by_type('AWS::CloudFront::Distribution')
                                     .select do |distribution|
    distribution.distributionConfig['Logging'].nil?
  end

  violating_distributions.map(&:logical_resource_id)
end

#rule_idObject



16
17
18
# File 'lib/cfn-nag/custom_rules/CloudFrontDistributionAccessLoggingRule.rb', line 16

def rule_id
  'W10'
end

#rule_textObject



8
9
10
# File 'lib/cfn-nag/custom_rules/CloudFrontDistributionAccessLoggingRule.rb', line 8

def rule_text
  'CloudFront Distribution should enable access logging'
end

#rule_typeObject



12
13
14
# File 'lib/cfn-nag/custom_rules/CloudFrontDistributionAccessLoggingRule.rb', line 12

def rule_type
  Violation::WARNING
end