[ Agentic automation ]

An agent-assisted workflow for cleaning up obsolete SPF permissions

Remove obsolete SPF authority only after separating retired services from quiet, seasonal and shared dependencies.

By the EmailAuth research team · 3 min read

[ Key points ]

  • Remove obsolete SPF authority only after separating retired services from quiet, seasonal and shared dependencies.
  • Positive retirement evidence matters more than a quiet reporting window.
On this page

An unused-looking SPF permission may still support an annual campaign, a failover route or several applications behind one include. An agent should prepare a retirement case rather than deleting permissions because a reporting window is quiet. The risk is not just a syntax error: a valid edited record can stop legitimate mail from authenticating.

Inventory the authority being removed

Expand the dependency conceptually and identify the service owner, account, affected applications and retirement evidence. RFC 7208 defines include evaluation and limits DNS-querying terms; it does not say a missing aggregate-report observation proves an authorization is obsolete.

Compare expected schedules with the observation period. Check failover and incident-only senders, vendor migration overlap and forwarding paths. Preserve the current record and dependencies with retrieval times. A shared include must not be removed solely because one customer application retired.

Require positive retirement evidence

Use positive owner-confirmed decommissioning and a dependency review. Consider this written ledger with a hypothetical observation interval of 1–30 September 2026 UTC; it is not actual monitoring data.

  • Seasonal service: include:seasonal.test, expected run in December, no September traffic stipulated, retirement unconfirmed. Hold and review the service schedule with its owner.
  • Shared service: include:shared.test, app-A retired but app-B still active by assumption. Retain the shared include while app-B depends on it.
  • Dedicated retired service: include:retired.test, decommission and no remaining dependents stipulated. Prepare a removal candidate for owner review; actual evidence and approval remain to be supplied.
  • Annual trap: include:annual.test, expected run in January, no September traffic stipulated. Keep unresolved; the observation window excludes the expected run.

Only the dedicated case is a proposed candidate. No classifier, DNS resolver or mail test ran, and no service was actually retired. These reserved-domain labels must never be copied as production configuration.

Prepare and review the narrowed record

Show the exact before and after text, affected identities, expected effect, test plan and rollback trigger. Re-evaluate SPF syntax and DNS-querying behavior after the edit. Removing one dependency can change which later terms are reached, so do not assume that a shorter record is automatically correct.

Approval must identify the tenant and exact change. If the live baseline changed meanwhile, stop and reconcile. Apply through authorized change control only. This written ledger proposes a recommendation and publishes nothing. Its result is safe to read as a candidate decision, not as a completed retirement.

Observe after the change

Test representative legitimate flows and monitor relevant receiver reports across the service schedules. Keep rollback time-bounded and retain the previous configuration securely. A new authentication failure needs identity and route analysis rather than automatic restoration of every old permission.

Report the reduction in explicit authority separately from deliverability or spoofing claims. DMARC can pass through aligned DKIM even when SPF fails, so a high DMARC pass rate alone cannot establish that an SPF change had no effect. RFC 9989 explains the alternative aligned authentication paths. The decision record should say what was removed, why, who approved it and what evidence supports closure.

Retain an exception when a dependency cannot yet be resolved. Give it an owner and a date tied to the next expected service run. Repeatedly extending an exception without collecting evidence should become an explicit risk decision rather than an invisible permanent permission.

Primary reading: RFC 7208 SPF, RFC 9990 DMARC Aggregate Reporting, RFC 9989 DMARC.

[ Takeaway ]

Positive retirement evidence matters more than a quiet reporting window.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Map shared dependencies

Remove only authority that is truly unnecessary.

Next steps

  1. Inspect includes.
  2. Review active dependents.
  3. Re-test changed evaluation.

CISO / SecOps

Measure reduced authority honestly

Do not substitute pass rates for retirement evidence.

Next steps

  1. Audit approvals.
  2. Review exceptions.
  3. Track residual permissions.

Founder / Non-technical

Protect quiet business flows

Low frequency does not mean low importance.

Next steps

  1. Check annual schedules.
  2. Confirm retirement.
  3. Name rollback decision owners.

[ FAQs ]

Frequently asked questions

Does no recent traffic prove a sender is retired?

No. Check seasonal, failover and incident-only schedules.

Can one retired application justify removing a shared include?

Not while another active dependent still needs it.

What evidence supports retirement?

Owner-confirmed decommissioning and a reviewed dependency map.

Does the example publish or run a classifier?

No. It is a written candidate-review ledger with no program or DNS mutation.

Is a shorter SPF record necessarily correct?

No. Recheck syntax, evaluation behavior and intended authority.

Can DMARC pass hide SPF failure?

Yes. Aligned DKIM can independently satisfy DMARC.

What should trigger renewed review?

Baseline drift, uncertain ownership or unexplained post-change failures.

What is the false-removal trap?

A quiet annual sender whose expected run falls outside the observed interval.

[ Sources ]

Sources

  1. RFC 7208 SPF

    Sections §2.4 · §4.6.4 · §5.2 · §5.6

  2. RFC 9990 DMARC Aggregate Reporting

    Sections §3.1 · §4 · §7 · §8 · §9

  3. RFC 9989 DMARC

    Sections §4.4 · §5.3.5 · §5.4 · §7.4 · §8

[ Glossary ]

Glossary

Evidence boundary
The explicit limit of what an observation or test can establish.
Approval scope
The specific action, target, state and limits authorized by an accountable decision maker.

Enterprise provenance

Why top financial institutions and governments retired their email security dashboards.

Traditional email authentication platforms sell you a dashboard and ask your engineers to do the labour. In high-stakes environments, manual oversight means delayed enforcement, configuration drift and unmonitored shadow domains.

EmailAuth is the agentic email provenance platform. Our agents enforce p=reject, keep third-party senders aligned and move your domains to full RFC 9989 compliance, the new DMARC standard,, with human-in-the-loop auditability.

Governments Large enterprises Tier-1 financial institutions

SaaS · Dedicated tenancy · Air-gapped on-prem · BYOK encryption

Knowledge Base