IT OPS

Cloudflare email-auth integrity sentry: verify SPF, DKIM, DMARC and DNSSEC

On a schedule, validates that the live SPF, DKIM, DMARC, MX, and DNSSEC records in a Cloudflare zone still match the approved manifest values and pages plus opens a PR…

CategoryIT Ops
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule fires
  • ActionFetch SPF/DKIM/DMARC/MX/DNSSEC records from CloudflareCloudflareCloudflare
  • ActionRead approved email-auth values from GitHubGitHubGitHub
  • LogicCompare critical records; exit on clean match
  • ActionRaise PagerDuty incident on mismatchPagerDutyPagerDuty
  • OutputOpen PR restoring correct manifest entriesGitHubGitHub

What it does

Guards the small set of DNS records whose corruption silently breaks email deliverability and domain trust. It checks the live SPF, DKIM, DMARC, MX, and DNSSEC DS state against the values declared in your manifest and treats any mismatch on these critical records as high severity.

When to use it

Use it when a fat-fingered SPF edit or a disabled DNSSEC flag would route your mail to spam or expose the domain to spoofing, and you want a tighter, louder check than the general DNS diff. This template focuses only on the records that carry security weight.

How it works

  1. 1A daily schedule fires the run.
  2. 2Fetch the relevant TXT, MX, and DNSSEC records from the Cloudflare zone.
  3. 3Read the approved email-auth values from the manifest in GitHub.
  4. 4A logic step compares each critical record; a clean match ends the run.
  5. 5On any mismatch, raise a PagerDuty incident describing the affected record and the expected vs actual value.
  6. 6Open a GitHub pull request restoring the correct manifest entries for review.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect GitHubRepos, issues, pull requests, actions.
  3. 3
    Connect PagerDutyIncidents, on-call, escalations.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.