Class: SnsTopicPolicyNotPrincipalRule

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

Instance Method Summary collapse

Methods inherited from BaseRule

#audit

Instance Method Details

#audit_impl(cfn_model) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/cfn-nag/custom_rules/SnsTopicPolicyNotPrincipalRule.rb', line 18

def audit_impl(cfn_model)
  violating_policies = cfn_model.resources_by_type('AWS::SNS::TopicPolicy').select do |policy|
    !policy.policy_document.allows_not_principal.empty?
  end

  violating_policies.map { |policy| policy.logical_resource_id }
end

#rule_idObject



14
15
16
# File 'lib/cfn-nag/custom_rules/SnsTopicPolicyNotPrincipalRule.rb', line 14

def rule_id
  'F8'
end

#rule_textObject



6
7
8
# File 'lib/cfn-nag/custom_rules/SnsTopicPolicyNotPrincipalRule.rb', line 6

def rule_text
  'SNS Topic policy should not allow Allow+NotPrincipal'
end

#rule_typeObject



10
11
12
# File 'lib/cfn-nag/custom_rules/SnsTopicPolicyNotPrincipalRule.rb', line 10

def rule_type
  Violation::FAILING_VIOLATION
end