Class: RDSInstanceDeletionProtectionRule

Inherits:
BaseRule show all
Defined in:
lib/cfn-nag/custom_rules/RDSInstanceDeletionProtectionRule.rb

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
28
# File 'lib/cfn-nag/custom_rules/RDSInstanceDeletionProtectionRule.rb', line 20

def audit_impl(cfn_model)
  rds_dbinstances = cfn_model.resources_by_type('AWS::RDS::DBInstance')

  violating_rdsinstances = rds_dbinstances.select do |instance|
    not_protected?(instance) && !aurora?(instance)
  end

  violating_rdsinstances.map(&:logical_resource_id)
end

#rule_idObject


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

def rule_id
  'F80'
end

#rule_textObject


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

def rule_text
  'RDS instance should have deletion protection enabled'
end

#rule_typeObject


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

def rule_type
  Violation::FAILING_VIOLATION
end