[ DKIM ]

DKIM TXT and CNAME publishing: follow the provider's key-management model

Publish the record type your sending service supports, then verify both DNS resolution and the signing identity on received mail.

By the EmailAuth research team

[ Key points ]

  • Use the provider’s current generated names, types and values.
  • Do not combine a conventional CNAME and TXT key at one owner.
  • Check DNS, actual signatures and alignment separately.
On this page

A DKIM setup is complete when the service signs the intended mail and a receiver can validate it. A green DNS status alone does not establish either outcome. Choose TXT or CNAME from the provider's supported key-management model, rather than treating them as interchangeable ways to paste a key.

Identify who manages the key

A directly published TXT record carries the DKIM verification data. With a CNAME arrangement, the selector name aliases another DNS name where the verification data is managed. The private signing key belongs on the signing system, never in either public record. RFC 6376 §3.6 and RFC 6376 §6.1.2 describe key discovery and retrieval; DNS alias behaviour is defined in RFC 1034 §3.6.2.

Microsoft 365’s custom-domain procedure uses CNAME records and tenant-generated destinations. Its current documentation is an example of why copying an older target pattern is unsafe. Obtain the values displayed for the actual tenant and selected domain. This example does not imply that an unrelated service accepts the same records.

Before editing DNS, record the sending account, visible From domain, intended signing domain, selector names, record type, exact generated values and responsible owner. Ask which system performs rotation and who removes the delegation when the contract ends. If the provider cannot use the required signing domain, changing the DNS record type will not create that capability.

Publish at the correct owner name

An illustrative signature with d=example.com and s=billing leads to billing._domainkey.example.com. The example identifies a DNS owner name, not a working public key or production CNAME target.

Check whether the DNS interface expects that full name or only billing._domainkey. Some interfaces append the zone name. Read back the resulting owner name instead of assuming the entry box preserved it. Inspect existing data before changing the name. A conventional CNAME cannot coexist there with a separate TXT key record; preserve unrelated selectors and follow the provider's supported migration procedure.

For TXT, publish the exact public value in the supported representation. For CNAME, use the generated destination, not a copied key discovered at the destination today. Copying the current key locally can break the provider's later rotation model. Keep screenshots or exported records in the change record, excluding credentials and private keys.

Verify resolution and actual sending separately

Query the exact owner name against authoritative DNS, then check recursive resolution through the path recipients will use. For CNAME, follow the alias to the final TXT result and record any timeout or missing target. Allow for cached old data, including negative answers, when interpreting disagreement. Publication and global cache convergence are different observations.

Next send a controlled message through the real application. Preserve its raw headers and the trusted receiving system's authentication result. Record d=, s= and DKIM verification. Check alignment with the visible From domain separately. A valid signature from a provider-owned domain can be unrelated to the customer identity you intended to authenticate.

If DNS resolves but mail is unsigned, investigate service activation and routing. If the signature names a different selector, inspect that selector rather than repeatedly editing the unused record. If verification fails after content modification, changing TXT to CNAME is not the repair.

Keep the dependency accountable

Close the change only when the record, signer and received evidence agree. Store the previous configuration and an authorised recovery plan before cutover. At offboarding, stop the sending integration and retire its verification dependency deliberately, accounting for legitimate mail still in transit. Do not leave an unexplained provider alias indefinitely or delete an active selector merely because a contract spreadsheet says the service ended.

DKIM DNS delegation: assess the scope of control granted to a provider · DKIM public-key syntax: identify truncated or malformed DNS values.

Apply the distinction

Use a three-part acceptance record: published owner/type/value and observation time; actual received d/s and trusted verification; alignment with the intended Author Domain. If DNS is correct but mail is unsigned, investigate activation or route selection instead of changing record type. If a different selector is emitted, follow that evidence. The checklist is proposed review work, not a performed DNS or mail test.

[ Takeaway ]

Use the provider’s current generated names, types and values. Do not combine a conventional CNAME and TXT key at one owner. Check DNS, actual signatures and alignment separately.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Test the whole path.

DNS publication and actual signing activation require separate observations.

Next steps

  1. Read back authoritative data.
  2. Capture a production-route test.
  3. Confirm the received alignment result.

CISO / SecOps

Review delegated trust.

A provider-managed target can change verification material within the delegated scope.

Next steps

  1. Approve the signing identity.
  2. Review stale aliases.
  3. Review provider rotation authority.

Founder / Non-technical

Make ownership part of onboarding.

A sending provider adds a continuing DNS and signing dependency, not just a one-time setup task.

Next steps

  1. Assign an owner.
  2. Include retirement in the vendor checklist.
  3. Verify service retirement at renewal.

[ FAQs ]

Frequently asked questions

Is a CNAME the DKIM public key?

No. It is an alias to another DNS name. Follow resolution to the verification data and use the provider’s generated target.

RFC 1034 §3.6.2

Can I put TXT and CNAME at the same selector name?

Do not combine a conventional CNAME with a separate TXT key at that owner name. Use the supported model and distinct selectors where needed.

RFC 1034 §3.6.2

Should I copy the key from a provider CNAME target into my zone?

Not as an improvised replacement. It can detach your publication from the provider’s key rotation.

Does a successful DNS check prove mail is signed?

No. Send through the real application and inspect a received signature and trusted verification result.

RFC 6376 §5.5 RFC 6376 §6.1

Where does the private key go?

On the authorised signing system or its supported key service. It must never be published in DNS.

RFC 6376 §8.3

Why does the record name contain my domain twice?

The DNS interface may have appended the zone to a full name. Compare the actual published owner name with the required name.

Does passing DKIM guarantee From-domain alignment?

No. Compare the passing signature’s d domain with the visible From domain under the applicable DMARC alignment rule.

RFC 9989 §4.4.1

What should I keep for offboarding?

Keep the service owner, selectors, targets, signing identity and retirement plan, alongside received-message evidence.

[ Sources ]

Sources

  1. RFC 6376

    Sections §1 · §3.1 · §3.5 · §3.6 · §5.5 · §6.1 · §6.1.2 · §8.3

  2. RFC 1034

    Sections §3.6.2

  3. RFC 9989

    Sections §4.4 · §4.4.1

  4. Microsoft Learn: Configure DKIM

    Sections Syntax for DKIM CNAME records · Configure DKIM signing of outbound messages using custom domains

[ Glossary ]

Glossary

DKIM
A domain-associated signature over selected message content verified using public-key data.

RFC 6376 §1

Selector
The s value used with the d signing domain to locate verification data.

RFC 6376 §3.1 RFC 6376 §3.5

DMARC alignment
The required relationship between an authenticated identifier and the Author Domain.

RFC 9989 §4.4

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