Merge pull request #132 from aharpour/master

Making dkim_aligned and spf_aligned case insensitive.
This commit is contained in:
Sean Whalen
2019-12-17 06:28:34 -05:00
committed by GitHub
3 changed files with 50 additions and 4 deletions

View File

@@ -115,8 +115,8 @@ def _parse_report_record(record, offline=False, nameservers=None,
if "spf" in policy_evaluated:
new_policy_evaluated["spf"] = policy_evaluated["spf"]
reasons = []
spf_aligned = policy_evaluated["spf"] == "pass"
dkim_aligned = policy_evaluated["dkim"] == "pass"
spf_aligned = policy_evaluated["spf"] is not None and policy_evaluated["spf"].lower() == "pass"
dkim_aligned = policy_evaluated["dkim"] is not None and policy_evaluated["dkim"].lower() == "pass"
dmarc_aligned = spf_aligned or dkim_aligned
new_record["alignment"] = dict()
new_record["alignment"]["spf"] = spf_aligned

View File

@@ -354,8 +354,10 @@ def save_aggregate_report_to_elasticsearch(aggregate_report,
source_base_domain=record["source"]["base_domain"],
message_count=record["count"],
disposition=record["policy_evaluated"]["disposition"],
dkim_aligned=record["policy_evaluated"]["dkim"] == "pass",
spf_aligned=record["policy_evaluated"]["spf"] == "pass",
dkim_aligned=record["policy_evaluated"]["dkim"] is not None and
record["policy_evaluated"]["dkim"].lower() == "pass",
spf_aligned=record["policy_evaluated"]["spf"] is not None and
record["policy_evaluated"]["spf"].lower() == "pass",
header_from=record["identifiers"]["header_from"],
envelope_from=record["identifiers"]["envelope_from"],
envelope_to=record["identifiers"]["envelope_to"]

View File

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8" ?>
<feedback>
<report_metadata>
<org_name>example.com </org_name>
<email>postmaster@example.com</email>
<report_id>aggr_report_example.com_20191202_1638</report_id>
<date_range>
<begin>1574955300</begin>
<end>1575304683</end>
</date_range>
</report_metadata>
<policy_published>
<domain>example.com</domain>
<adkim>r</adkim>
<aspf>r</aspf>
<p>reject</p>
<pct>100</pct>
</policy_published>
<record>
<row>
<source_ip>23.104.41.189</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>Pass</dkim>
<spf>Pass</spf>
</policy_evaluated>
</row>
<identifiers>
<header_from>example.com</header_from>
</identifiers>
<auth_results>
<dkim>
<domain>example.com</domain>
<result>Pass</result>
<human_result>verify result: all signatures verified</human_result>
</dkim>
<spf>
<domain>example.com</domain>
<result>Pass</result>
</spf>
</auth_results>
</record>
</feedback>