Skip to content
WebsiteHosting.com

concept / Domains & DNS

DNS CAA record

CAA records let a domain owner restrict which certificate authorities may issue a certificate for a DNS name. The deciding steps are finding the applicable CAA RRset and then interpreting properties for the requested ordinary or wildcard certificate. CAA is an issuance policy, not live certificate validation or revocation. A result that cannot obtain reliable lookup evidence must remain unknown, not implicitly allowed or denied.

Updated · P0035

What it means

CAA constrains one part of the certificate issuance decision. It is relevant before a CA issues a certificate, not after a browser receives an existing certificate. Issuer authorization and the certificate’s validity, trust path and hostname identity are independent questions. A name can have no applicable restriction under the modeled rules without proving that a CA will issue anything.

Try it

CAA property selection in a fixed RRset

Simulation

Starting from baseline, select the blocked preset. It changes Fixture RRset from inherited to empty_issuer_rrset while retaining www.example.test and ca1.example.net.

Requested certificate name stays www.example.test, Requested CA stays ca1.example.net, and the alias-free owner-search rules stay the same. The mode remains Simulation; no DNS lookup, certificate issuance or revocation occurs.

Change the example locally

Selected scenario: baseline

permits by fixture

Relevant owner
example.test
Owners evaluated
www.example.test → example.test
Applicable property
issue
Selected issuer values
ca1.example.net
CAA criterion
permits by fixture
Requested CA
ca1.example.net
Certificate issuance guaranteed
No
Certificate revocation status
not evaluated

The full owner→RRset fixture checks www.example.test then example.test, selects example.test and applies issue. Only ca1.example.net appear in the selected issuer list. CAA issuance constraints do not revoke certificates or guarantee issuance.

Synthetic owner maps; no CNAME/DNAME traversal, CA-specific exceptions, network requests or certificate verification.

Recent valid actions

The last ten valid changes in this local example. Reset clears this history.

    No changes recorded.

    Select Reset to return to the baseline preset: Fixture RRset inherited, Requested certificate name www.example.test and Requested CA ca1.example.net. Reset clears local errors, history, comparison, the previous scenario selection and temporary input values. FAQ and About this model open states stay unchanged. No real DNS, server, certificate or external system is changed.

    About this model

    This is a Simulation using fixed synthetic owner-to-record maps, two certificate names and two CA identifiers. It evaluates owner selection and the applicable CAA property locally. It does not query DNS, follow CNAME or DNAME aliases, process CA-specific exceptions, issue certificates or verify certificates. Its result describes only the modeled CAA criterion, not whether a real CA will issue a certificate.

    How it works

    CAA selection has two stages: find the relevant record set, then interpret its properties. The full lookup procedure in RFC 8659 §3 includes alias handling and wildcard-name preparation. This model deliberately covers only names without aliases.

    For ordinary www.example.test, the inherited fixture checks www.example.test and then example.test, where it finds the relevant set. If the child publishes its own relevant set, that set takes priority rather than being merged with the parent's. For *.example.test, the wildcard prefix is removed before owner selection, so the lookup starts at example.test.

    Within the selected set, ordinary requests use issue and ignore issuewild. For wildcard requests, issuewild takes precedence when present; otherwise issue applies. These property rules are described in RFC 8659 §4.3.

    The critical order is RRset discovery before property evaluation. A more specific child RRset takes precedence over inherited policy; you do not simply combine all ancestors into a single allowlist. An alias can change the full standard search path, so this alias-free fixture deliberately refuses to claim a result for that case. Once an applicable RRset is found, issuewild controls wildcard requests when present, whereas ordinary certificates ignore that property.

    A worked example

    The inherited fixture gives example.test two authorizations: issue names ca1.example.net, while issuewild names ca2.example.net. Starting from baseline, the ordinary www.example.test request asks for CA1 and uses issue, so CA1 is permitted by the fixture. The wildcard preset changes two inputs: the requested name becomes *.example.test and the requested CA becomes ca2.example.net. Owner selection starts at example.test after removing the wildcard prefix; issuewild applies and permits CA2. The record set stays unchanged. This is a complete preset comparison, not a single-input experiment: CA1 is absent from the wildcard issuer list.

    For comparison, change only the requested certificate type while keeping the inherited RRset and CA1: the ordinary authorization from issue does not mean CA1 is authorized for a wildcard when the same RRset has an applicable issuewild naming CA2. This is a policy distinction, not a measurement of certificate issuance. The named wildcard preset changes both the name and requested CA, which is why its final permitted result cannot be attributed to the name change alone.

    What changes the conclusion

    An explicit empty issuer is not the same as missing policy. In the blocked fixture, the relevant record set contains an issue property that authorizes no issuer, so CA1 is not permitted by that fixture. By contrast, an issuewild-only set does not restrict an ordinary request through issuewild alone: ordinary requests ignore that property. Neither situation should be confused with a failed DNS lookup, which leaves the answer unknown.

    In practice

    Before live issuance, use read-only checks of the authoritative DNS records, any aliases, the relevant CAA record set and the current CA's issuer-specific requirements. No DNS-editing permission is needed to use this simulation, and it makes no live changes.

    An issuance failure alone does not diagnose a CAA problem. A confirmed applicable restriction, an unavailable DNS answer and a different CA requirement are different possibilities that need different evidence. STOP using this model as a decision tool if the path involves an alias, lookup evidence is unavailable or the conclusion depends on CA-specific behavior. A successful synthetic retest is not proof that a real service now works.

    Limits and unknowns

    Read the result at its stated scope. “Permits by fixture” means the requested CA passes this modeled CAA criterion, not that issuance is guaranteed. “Not permitted by fixture” is a confirmed negative within the selected synthetic policy, not evidence that a live CA rejected a request.

    Unavailable lookup evidence means unknown, not permission, denial or verified absence of records. Certificate revocation status is not evaluated at all; “not evaluated” does not mean “not revoked.” The simulation also provides no evidence about HTTPS certificate validity.

    What to take away

    Before concluding that CAA explains an issuance outcome, establish the exact requested name, ordinary/wildcard type, relevant DNS lookup result and issuer identity. A known nonmatching restriction and a failed or alias-unsupported lookup require different next steps. Even a model-permitted result is not proof of issuance or validity of a certificate in a browser.

    Relevant CAA RRsetFixed owner selection

    inspect applicable tag

    Certificate nameOrdinary → issue; wildcard → issuewild if present

    compare requested CA

    CAA criterionPermits, disallows or unknown
    The model selects a fixed relevant CAA RRset, then applies issue for ordinary names or issuewild for wildcard names if present. Unavailable lookup means unknown, and a CAA permit does not guarantee issuance. Static example; it does not change with the interactive controls.

    Frequently asked questions

    Editorial questions, supported by the references below.

    Can CAA revoke a certificate that has already been issued?

    No. CAA governs which authorities may issue new certificates according to the applicable records. Changing CAA does not itself revoke an already issued certificate, change its validity dates or repair a hostname mismatch.

    References: CAA03
    What if a child name publishes its own relevant CAA RRset?

    For the alias-free closest-applicable-set model, the child’s relevant RRset takes precedence: do not merge its properties with an ancestor’s set. Check the actual lookup rules and alias path before applying this simplified inference to production.

    References: CAA01
    Does an issuewild-only RRset restrict an ordinary non-wildcard request?

    No. For an ordinary certificate request, `issuewild` is ignored. An issuewild-only RRset therefore does not itself restrict ordinary issuance through that property; wildcard requests use issuewild when present.

    References: CAA02
    What if the CAA search encounters an alias or an unavailable answer?

    The result is unknown under this educational fixture. The standard includes alias handling that this model does not implement, and an unavailable DNS response is not verified absence. Obtain the actual applicable lookup evidence before claiming authorization or denial.

    References: CAA01

    Sources & model boundaries

    The interactive is a local educational simulation, not a live check. Protocol references and WebsiteHosting.com operating rules are identified separately.

    1. CAA01 — Protocol or bounded model reference

      In this explicitly alias-free model, select the relevant CAA RRset according to RFC8659 §3, accounting for wildcard base name and closest applicable owner; do not present an ancestor-only walk as the complete RFC procedure because alias processing exists.

      HQ reviewed targeted core claim; no complete current errata/updates audit or all-sentence factcheck

      • RFC 8659 — RFC8659 §3 (aliases + wildcard preprocessing)

      Recorded targeted check: .

    2. CAA02 — Protocol or bounded model reference

      In a relevant RRset, issuewild takes precedence over issue for wildcard certificate requests; non-wildcard requests ignore issuewild.

      HQ reviewed targeted core claim; no complete current errata/updates audit or all-sentence factcheck

      Recorded targeted check: .

    3. CAA03 — Protocol or bounded model reference

      CAA describes current authorization for certificate issuance. A later CAA policy change does not itself revoke an earlier certificate, and relying parties must not use CAA as certificate validation input.

      Issuance control only; actual revocation mechanisms, certificate validity and CA policy are separate. No issuance or revocation is performed by this model.

      • RFC 8659 — RFC8659 §1 (issuance versus relying-party validation)

      Recorded targeted check: .

    Report an issue. Include the article URL and ID, not passwords or access keys.