in qs_cfn_lint_rules/IAMResourceWildcard.py [0:0]
def match(self, cfn):
"""Basic Matching"""
violation_matches = []
term_matches = []
for prop in self.SEARCH_PROPS:
term_matches += cfn.search_deep_keys(prop)
for tm in term_matches:
if tm[-1] not in ['*', ['*']]:
continue
violating_methods = determine_wildcard_resource_violations(cfn, tm[:-2])
for ln in violating_methods:
violation_matches.append(RuleMatch(ln, LINT_ERROR_MESSAGE, policy_path=tm[:-2]))
return violation_matches