#198 Support for CAA Record Type
Opened by jasperroloff. Modified

Enhancement proposal

Nameservers using bind-dyndb-ldap should have support for CAA resource records.

This record type is standardized in RFC 6844 (obsoleted) and RFC 8659 (https://tools.ietf.org/html/rfc8659).

There is also an issue on the FreeIPA project for this feature: https://pagure.io/freeipa/issue/7392

Use case

The CAA record controls, which certificate authorities are allowed to issue certificates for a domain. All publicly trusted CAs have to respect the CAA record of a domain.

Proposed implementation

In my understanding of this project's code, this feature requires the following changes:

  • add an LDAP attribute named CAARecord, as described here: https://pagure.io/freeipa/issue/7392#comment-545752
  • update the idnsRecord object class in the LDAP schema to allow the CAARecord attribute

Yes, this has to be done on two sides. IPA schema needs to be extended, ACIs need to be extended as well, to allow CAARecord modification. Finally, bind-dyndb-ldap needs to learn how to translate LDAP attribe into bind's internal record type.

I have WIP branch for FreeIPA: https://github.com/abbra/freeipa/commits/caa-record-support
It just adds ability to set CAA record through IPA CLI but doesn't handle any validation for known CAA tags yet aside from ensuring the tag name is constructed out of [a-z0-9] characters.

Log in to comment on this ticket.

Metadata