{"id":12621,"date":"2020-08-03T13:15:00","date_gmt":"2020-08-03T17:15:00","guid":{"rendered":"https:\/\/www.thesslstore.com\/blog\/?p=12621"},"modified":"2024-05-20T16:31:31","modified_gmt":"2024-05-20T20:31:31","slug":"what-is-caa-record-certificate-authority-authorization","status":"publish","type":"post","link":"https:\/\/www.thesslstore.com\/blog\/what-is-caa-record-certificate-authority-authorization\/","title":{"rendered":"What Is a CAA Record? Your Guide to Certificate Authority Authorization"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"not-all-certificate-authorities-are-created-equally-\u2014-some-are-more-trustworthy-than-others-but-did-you-know-that-there\u2019s-a-way-to-control-which-cas-can-issue-certificates-for-your-domain-here\u2019s-everything-to-know-about-dns-caa-records\u2026\">Not all certificate authorities are created equally \u2014 some are more trustworthy than others. But did you know that there\u2019s a way to control which CAs can issue certificates for your domain? Here\u2019s everything to know about DNS CAA records\u2026<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s say, for some reason, that you don\u2019t like or trust a particular <a href=\"https:\/\/www.thesslstore.com\/blog\/what-is-a-certificate-authority-ca-and-what-do-they-do\/\">certificate authority (CA)<\/a>. Maybe they\u2019re untrustworthy because they\u2019ve had of a bunch of certificate mis-issuances or revocation issues in the past. Or, perhaps, they\u2019ve just sent you one too many annoying sales emails in the past and you want to stick it to \u2018em. On the other hand, maybe you want to just use one or two CAs to make certificate management easier (that\u2019s a good idea, btw). Whatever the reason, there\u2019s a way to lock down your domain and specify which CAs issue can issue certificates on your behalf: You can create something that&#8217;s known as CAA record. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is what\u2019s known as setting certificate authority authorization, or CAA for short.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Some of our customers or resellers ask us, \u201cwhat\u2019s CAA?\u201d or \u201chow do I create a CAA record?\u201d We could tell you that it means \u201ccertificate authority authorization\u201d and say that it involves generating a DNS record before calling it a day. But that won\u2019t really help you and, as you now likely know by now, that\u2019s not really our style at Hashed Out. (Especially since there are several reasons why organizations may want to use CAA for their domains and different ways to create CAA record for their domains.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With this in mind, we\u2019re rolling up our sleeves to dive deep into the topic of certificate authority authorization. We\u2019ll cover what CAA DNS records are, why they\u2019re so important, and how you can create one for your domain. We\u2019ll also discuss what issues can arise with certificate authority authorization. But first, what is a CAA and how does it help you to secure your domain?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s hash it out.<span id=\"newline\"><\/span><\/p>\n\n\n<span style=\"display:none\" class=\"tl-placeholder-f-type-shortcode_12753\"><\/span>\n\n\n<div class=\"wp-block-advanced-gutenberg-blocks-summary\"><p class=\"wp-block-advanced-gutenberg-blocks-summary__title\">What we&#8217;re hashing out&#8230;<\/p><div class=\"wp-block-advanced-gutenberg-blocks-summary__fold\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-chevron-up\"><polyline points=\"18 15 12 9 6 15\"><\/polyline><\/svg><\/div><ol role=\"directory\" class=\"wp-block-advanced-gutenberg-blocks-summary__list\"><li><a href=\"#not-all-certificate-authorities-are-created-equally-\u2014-some-are-more-trustworthy-than-others-but-did-you-know-that-there\u2019s-a-way-to-control-which-cas-can-issue-certificates-for-your-domain-here\u2019s-everything-to-know-about-dns-caa-records\u2026\">Not all certificate authorities are created equally \u2014 some are more trustworthy than others. But did you know that there\u2019s a way to control which CAs can issue certificates for your domain? Here\u2019s everything to know about DNS CAA records\u2026<\/a><ol><\/ol><\/li><li><a href=\"#caa-meaning-what-is-a-certificate-authority-authorization\">CAA Meaning: What Is a Certificate Authority Authorization?<\/a><ol><li><a href=\"#how-certificate-authority-authorization-came-to-be-and-what-issues-it-presents\">How Certificate Authority Authorization Came to Be (and What Issues It Presents)<\/a><ol><\/ol><\/li><\/ol><\/li><li><a href=\"#what-is-a-caa-dns-record-caa-resource-record\">What Is a CAA DNS Record (CAA Resource Record)?<\/a><ol><li><a href=\"#what-does-a-dns-caa-record-look-like\">What Does a DNS CAA Record Look Like?<\/a><ol><\/ol><\/li><li><a href=\"#what-goes-into-a-caa-record\">What Goes Into a CAA Record<\/a><ol><\/ol><\/li><li><a href=\"#examples-of-dns-caa-records\">Examples of DNS CAA Records<\/a><ol><\/ol><\/li><\/ol><\/li><li><a href=\"#how-to-add-edit-or-create-a-caa-record\">How to Add, Edit, or Create a CAA Record<\/a><ol><li><a href=\"#how-to-add-a-caa-record-in-cpanel\">How to Add a CAA Record in cPanel<\/a><ol><\/ol><\/li><\/ol><\/li><li><a href=\"#how-caa-works-amp;-the-role-certificate-authority-authorization-plays-in-cert-issuance\">How CAA Works &amp; the Role Certificate Authority Authorization Plays in Cert Issuance<\/a><ol><li><a href=\"#a-look-at-certificate-authority-authorization-in-action\u2026\">A Look at Certificate Authority Authorization in Action\u2026<\/a><ol><\/ol><\/li><\/ol><\/li><li><a href=\"#why-you-may-want-to-consider-creating-a-caa-dns-record-for-your-domain\">Why You May Want to Consider Creating a CAA DNS Record for Your Domain<\/a><ol><\/ol><\/li><li><a href=\"#need-to-generate-a-caa-dns-record-look-no-further\">Need to Generate a CAA DNS Record? Look No Further<\/a><ol><\/ol><\/li><li><a href=\"#final-thoughts-on-certificate-authority-authorization-and-dns-caa-records\">Final Thoughts on Certificate Authority Authorization and DNS CAA Records<\/a><ol><\/ol><\/li><\/ol><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"caa-meaning-what-is-a-certificate-authority-authorization\">CAA Meaning: What Is a Certificate Authority Authorization?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Certificate authority authorization is a domain name system (DNS) security measure that helps you to increase control of your brand identity. More specifically, certificate authority authorization is a DNS record that lets you specify which certificate authorities are allowed to issue SSL\/TLS certificates for your domain. (SSL\/TLS digital certificates, which are also known as <a href=\"https:\/\/www.thesslstore.com\/blog\/what-is-a-website-security-certificate-and-what-does-it-do-for-your-business\/\">website security certificates<\/a>, add identity and encryption to connections between clients and your web server.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A CAA record looks like this:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"624\" height=\"208\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-example.png\" alt=\"An example graphic of a CAA record\" class=\"wp-image-12623 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-example.png 624w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-example-300x100.png 300w\" sizes=\"auto, (max-width: 624px) 100vw, 624px\" \/><figcaption>An example of a CAA record in a DNS server.<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">In this example, only DigiCert and Sectigo are authorized to issue certificates for this domain. Note: CAA records aren\u2019t a suggestion or a request \u2014 certificate authorities are required to obey them. If they don\u2019t, they can be distrusted. But we\u2019ll get more into the technical details\/specifics in just a little bit. (Patience, young padawan.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As stated in the current Internet Engineering Task Force (IETF) proposed standard (<a href=\"https:\/\/tools.ietf.org\/html\/rfc8659\" target=\"_blank\" rel=\"noreferrer noopener\">RFC 8659<\/a>):<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>The Certification Authority Authorization (CAA) DNS Resource Record allows a DNS domain name holder to specify one or more Certification Authorities (CAs) authorized to issue certificates for that domain name. CAA Resource Records allow a public CA to implement additional controls to reduce the risk of unintended certificate mis-issue.\u201d<\/em><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">As the domain name holder, you can also specify whether your chosen CA (or CAs, if multiple) can issue wildcard or non-wildcard certificates. So, in a way, having a CAA is kind of like having authorization to see an in-network doctor through your insurance here in the U.S.: It specifies the physician(s) you can see and which covered services they are authorized to provide.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-certificate-authority-authorization-came-to-be-and-what-issues-it-presents\">How Certificate Authority Authorization Came to Be (and What Issues It Presents)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Certificate authority authorization first became an IETF proposed standard in <a href=\"https:\/\/tools.ietf.org\/html\/rfc6844\" target=\"_blank\" rel=\"noreferrer noopener\">RFC 6844<\/a> in October 2010, according to the IETF\u2019s <a href=\"https:\/\/datatracker.ietf.org\/doc\/draft-ietf-pkix-caa\/04\/\">DataTracker<\/a> tool. In 2017, the <a href=\"https:\/\/cabforum.org\/2017\/03\/08\/ballot-187-make-caa-checking-mandatory\/\" target=\"_blank\" rel=\"noreferrer noopener\">CA\/Browser Forum (CA\/B Forum) voted to pass Ballot 187<\/a>, a measure that makes checking CAA records mandatory for CAs to do before issuing an SSL\/TLS certificate. According to the CA\/B Forum ballot:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>The intent of this motion is to make it mandatory for CAs to check CAA records at issuance time for all certificates issued (except in a few special cases), and to prevent issuance if a CAA record is found which does not permit issuance by that CA. This therefore allows domain owners to set an issuance policy which will be respected by all publicly-trusted CAs, and allows them to mitigate the problem that the public CA trust system is only as strong as its weakest CA.\u201d<\/em><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">However, RFC 6844 wasn\u2019t perfect; it had some issues that needed to be addressed. <a href=\"https:\/\/www.digicert.com\/blog\/certification-authority-authorization-checking-what-is-it-and-why-does-it-matter\/\" target=\"_blank\" rel=\"noreferrer noopener\">According to Timothy Hollebeek<\/a>, DigiCert\u2019s CA\/B Forum representative:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>The original RFC specified a search algorithm for CAA that improperly handled CNAME and DNAME CAA records, preventing some organizations that should have been able to obtain certificates from receiving them. In addition, there were a number of errors in the specification of how CAA records should be formatted, as well as a lack of information about what to do if a CAA record exists but does not contain a record listing authorized CAs.\u201d<\/em><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">This is what led to the current proposed standard, RFC 8659, which we mentioned a little earlier. Many of the technical issues relating to CAA record checking are addressed in this new version of the proposed standard.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now that we know what CAA is and its history, let\u2019s get to talking about CAA records themselves.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-a-caa-dns-record-caa-resource-record\">What Is a CAA DNS Record (CAA Resource Record)?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A CAA record \u2014 or what\u2019s also known as a DNS CAA record, CAA DNS record, CAA record, CAA certificate, or DNS CAA \u2014 is a type of public policy for your domain name system. It\u2019s a way for you as a domain owner to make it known to everyone which certificate authorities can issue SSL\/TLS certificates for your domain. This record gives public certificate authorities a place to look to identify whether they\u2019re eligible to issue a certificate for your domain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The <a href=\"https:\/\/www.experfy.com\/blog\/what-is-a-dns-server-and-why-the-internet-wouldnt-work-without-the-dns-system\/\" target=\"_blank\" rel=\"noreferrer noopener\">domain name system<\/a> itself is the naming system that makes the internet easy to use. It\u2019s like a translator that converts a domain name into an IP address that the server can use to retrieve the right website. So, when you want to pull up a specific website in your browser, the DNS system makes it so that you can type in the website domain instead of having to remember the full IPv4 or IPv6 numerical IP address.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, you can type in <strong>thesslstore.com<\/strong> to get to our website instead of having to remember the IP address <strong>104.22.3.46<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"593\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/thesslstore-ip-address-1024x593.png\" alt=\"Screenshot of The SSL Store's website IP address\" class=\"wp-image-12624 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/thesslstore-ip-address-1024x593.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/thesslstore-ip-address-300x174.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/thesslstore-ip-address-768x445.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/thesslstore-ip-address.png 1103w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>A screenshot of The SSL Store&#8217;s website IP address.<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">But just how many websites actually use CAA records? <a href=\"https:\/\/www.ssllabs.com\/ssl-pulse\/\" target=\"_blank\" rel=\"noreferrer noopener\">Qualys reports<\/a> in its July 8, 2020 data that <strong>10,581 websites<\/strong> \u2014 or (<strong>7.6%<\/strong> of the sites they surveyed \u2014 <strong>support certificate authority authorization<\/strong>. Considering that Qualys reported 8,329 CAA-supporting sites (or 6% of surveyed sites) as of July 3, 2019, you can see that certificate authority authorization is slowly gaining traction. &nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-does-a-dns-caa-record-look-like\">What Does a DNS CAA Record Look Like?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You remember earlier when I said we were going to get dirty? Yeah, it\u2019s time to roll up those sleeves \u2014 we\u2019re getting into the nitty-gritty of CAA records.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you want to see what a real DNS CAA record looks like for a little more clarity, check out the <a rel=\"noreferrer noopener\" href=\"https:\/\/dnschecker.org\/all-dns-records-of-domain.php\" target=\"_blank\">DNS Lookup tool<\/a> on dnschecker.org. Here, we\u2019ve pulled up the CAA record for the certificate authority DigiCert:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"197\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/certificate-authority-authorization-record-digicert-1024x197.png\" alt=\"A screenshot of DigiCert's CAA record data according to dnschecker.org\" class=\"wp-image-12625 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/certificate-authority-authorization-record-digicert-1024x197.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/certificate-authority-authorization-record-digicert-300x58.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/certificate-authority-authorization-record-digicert-768x148.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/certificate-authority-authorization-record-digicert.png 1477w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>A screenshot of  DigiCert&#8217;s CAA record via dnschecker.org.<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">As you now know, a CAA certificate record is basically a set of instructions that tell CAs what they are or are not authorized to do in terms of issuing all or specific types of certificates. However, what you may not know is that CAA records are formatted differently depending on which DNS files they\u2019re being added to.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, the syntax for a standard BIND zone file will be different from that of a legacy zone file. Which version you may have to use will vary depending on your DNS product. For example:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>IETF RFC 6844 specifies the format for standard BIND files.<\/li>\n\n\n\n<li><a href=\"https:\/\/tools.ietf.org\/html\/rfc3597\" target=\"_blank\" rel=\"noreferrer noopener\">IETF RFC 3597<\/a> specifies the format of resource records (RRs) for legacy BIND files.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Here are some examples of how CAA records can look for these different files:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"916\" height=\"804\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-examples.png\" alt=\"A screenshot of CAA record data\" class=\"wp-image-12626 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-examples.png 916w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-examples-300x263.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-examples-768x674.png 768w\" sizes=\"auto, (max-width: 916px) 100vw, 916px\" \/><figcaption>This screenshot is an example of what a CAA record looks like for TheSSLStore.com when you use our <a href=\"https:\/\/www.thesslstore.com\/ssltools\/caa-record-generator.php\">CAA Record Generator<\/a> tool.<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Now, you might be thinking: \u201cUgh, do I <em>really<\/em> need to know all of this to create a CAA record?\u201d In most cases, no. That\u2019s because, if you\u2019re like most people, you use your domain registrar\u2019s DNS servers rather than running one of your own. When you use third-party DNS servers, you can just use their systems or your control panel to create CAA DNS records.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We\u2019ll actually show you how to do that in cPanel a little later. But first, we still have a few more things to cover.<\/p>\n\n\n<span style=\"display:none\" class=\"tl-placeholder-f-type-shortcode_12653\"><\/span>\n\n\n<h3 class=\"wp-block-heading\" id=\"what-goes-into-a-caa-record\">What Goes Into a CAA Record<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">For the purpose of this article, we\u2019re going to focus on the CAA record canonical presentation format as it\u2019s outlined in RFC 8659 (since it obsoletes RFC 6844):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>CAA &lt;flags&gt; &lt;tag&gt; &lt;value&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Remember seeing something like this a little earlier? We\u2019re going to break down what each part of it means.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"667\" height=\"304\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-breakdown.png\" alt=\"An illustrative breakdown of a CAA record\" class=\"wp-image-12627 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-breakdown.png 667w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-breakdown-300x137.png 300w\" sizes=\"auto, (max-width: 667px) 100vw, 667px\" \/><figcaption>This is an illustrative example and breakdown of a CAA record.<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">As you can see in this example above, a DNS CAA record has surprisingly pretty basic setup \u2026 so long as you know what the different parts of it are, that is. Otherwise, it can be a bit confusing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">DNS CAA records include the following components:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Flags<\/strong> \u2014 A flag, as outlined in RFC 6844, can be one of two specific states: <em>1<\/em> (critical) or <em>0<\/em> (non-critical) with 0 as the default. However, much like with the tags, a CA can create their own custom flags as well to give specific directions for issuance.\n<ul class=\"wp-block-list\">\n<li>The <strong>1<\/strong> flag tells the CA that it can\u2019t use the CAA record in the zone if it doesn\u2019t understand the property. Basically, it tells it that it can\u2019t proceed further with trying to issue the certificate and should send an email notifying the domain owner about the CAA record check failure.<\/li>\n\n\n\n<li>The <strong>0<\/strong> flag tells the CA that it can use any CAA record info in the zone regardless of whether it understand the property. If it doesn\u2019t understand this CAA record, it can skip over it and use another in the DNS zone file.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Tags<\/strong> \u2014 A tag specifies which actions an authorized CA can take in terms of issuing SSL\/TLS certificates. The three tags that are outlined in RFC 6844 are <em>issue<\/em>, <em>issuewild<\/em>, and <em>iodef<\/em>. However, it\u2019s important to note that CAs can also specify their own custom tags to provide directions for the cert issuance process.\n<ul class=\"wp-block-list\">\n<li>The <strong>issue<\/strong> tag authorizes a specific CA to issue non-wildcard certificates for the domain and any of its subdomains. However, this tag can also be used to restrict any CAs from issuing non-wildcard certificates for those same subdomains (a little more on that momentarily).<\/li>\n\n\n\n<li>The <strong>issuewild<\/strong> tag authorizes a specific CA to issue wildcard certificates for the domain.<\/li>\n\n\n\n<li>The <strong>iodef<\/strong> tag (what stands for \u201cincident object description exchange format\u201d) provides info about invalid certificate requests. Basically, this gives you (as the domain owner), the ability to receive an email whenever a certificate request fails a CAA check. This way, you can stay abreast of CAA-related issues and fix the error that causes the failure.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Values<\/strong> \u2014 A value (typically listed between double quotation marks) is the domain of the CA that has the authority to issue certificates for the domain in question. If the value is a semicolon (;), it means that no CA has the authority to issue a certificate for that domain. &nbsp;<\/li>\n\n\n\n<li><strong>TTL<\/strong> \u2014 A TTL field, which stands for \u201ctime to live,\u201d refers to the period of time (seconds) that a server should keep your CAA record in its cache.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Yeah, that was a lot to take in. Take a deep breath and grab some more coffee \u2018cause we\u2019re not done yet. Now it\u2019s time to put all of this together.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"examples-of-dns-caa-records\">Examples of DNS CAA Records<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s say, for example, that we want a CAA DNS record for TheSSLStore.com that specifies that only DigiCert and Sectigo can issue non-wildcard certificates for the TheSSLstore.com. The CAA record would look something like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>thesslstore.com. CAA 0 issue \u201cdigicert.com\u201d\nthesslstore.com. CAA 0 issue \u201csectigo.com\u201d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Now, if we want to ensure that only Sectigo can issue wildcards and only DigiCert can issue other SSL\/TLS certificates, the CAA DNS record would look something like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>thesslstore.com. CAA 0 issue \u201cdigicert.com\u201d\nthesslstore.com. CAA 0 issuewild \u201csectigo.com\u201d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Now, to set IODEF properties for your CAA record, the syntax should look something like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>thesslstore.com. CAA 0 issue \u201cdigicert.com\u201d\nthesslstore.com. CAA 0 iodef \u201cmailto:email@thesslstore.com\u201d\nthesslstore.com. CAA 0 iodef \u201chttp:\/\/iodef.thesslstore.com\u201d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Okay, now that we know what CAA records are and how they look, let\u2019s jump into how you can put them to use for your website.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-to-add-edit-or-create-a-caa-record\">How to Add, Edit, or Create a CAA Record<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There are multiple ways that you can add, edit, or create a CAA certificate record for your domain or subdomain. For example, if you have your own DNS server and want to add or edit your CAA record directly in the DNS BIND file, you\u2019ll want to:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Use Notepad to open your domain\u2019s DNS file.<\/strong> This avoids inadvertently adding any code that other word processing programs like Microsoft Word.<\/li>\n\n\n\n<li><strong>Add or update the DNS CAA record information to that file.<\/strong> This is where you add or alter the information (tags, values, flags, etc.) like what you see above.<\/li>\n\n\n\n<li><strong>Save the zone file in Notepad and close out of it.<\/strong><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">That\u2019s it!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But what if you want to create a CAA record using your control panel or your domain registrar\u2019s DNS? No worries, you can do that easily. We\u2019ve put together direction for cPanel (below). For your third-party domain registrar, though, you\u2019ll have to go through them directly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-to-add-a-caa-record-in-cpanel\">How to Add a CAA Record in cPanel<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you wish to create a certificate authority authorization record within cPanel, you can do that as well by doing the following:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1. Log into your cPanel account.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. Scroll down to the Domains section and select <strong>Zone Editor<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"798\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-1-1024x798.png\" alt=\"A cPanel screenshot showcasing athe second step in the CAA record creation process\" class=\"wp-image-12628 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-1-1024x798.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-1-300x234.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-1-768x599.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-1.png 1148w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"424\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-2-1024x424.png\" alt=\"A cPanel screenshot showcasing the third step in the CAA record creation process\" class=\"wp-image-12629 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-2-1024x424.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-2-300x124.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-2-768x318.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-2-1536x636.png 1536w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-2.png 1557w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">4. In the Zone Editor, look for a blue button labeled <strong>Add Record<\/strong> and click the down arrow. From the drop-down list, select <strong>Add \u201cCAA\u201d Record<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"655\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-3-1024x655.png\" alt=\"A cPanel screenshot showcasing athe fourth step in the CAA record creation process\" class=\"wp-image-12630 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-3-1024x655.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-3-300x192.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-3-768x491.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-3.png 1271w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">5. In the Zone Editor menu for that specific domain, select the right option or fill in the missing info for the form\u2019s required fields. This includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The <strong>name<\/strong> of the website (the domain or sub-domain you wish to add a CAA record for).<\/li>\n\n\n\n<li>The record <strong>type<\/strong> (CAA).<\/li>\n\n\n\n<li>The <strong>flag<\/strong> (0 or 1).<\/li>\n\n\n\n<li>The <strong>tag<\/strong> (issue, wildissue, iodef).<\/li>\n\n\n\n<li>The <strong>value<\/strong> (the domain of the CA that you\u2019re giving authority to create SSL\/TLS certificates).<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"492\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-4-1024x492.png\" alt=\"A cPanel screenshot showcasing athe fifth step in the CAA record creation process\" class=\"wp-image-12631 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-4-1024x492.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-4-300x144.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-4-768x369.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-cpanel-4.png 1366w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Once you\u2019ve completed these steps, simply select <strong>Add Record<\/strong> next to the entry on the right-hand side to save your work.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That\u2019s it!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-caa-works-amp;-the-role-certificate-authority-authorization-plays-in-cert-issuance\">How CAA Works &amp; the Role Certificate Authority Authorization Plays in Cert Issuance<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Whenever a certificate authority receives a request to issue a new certificate, they first check to see whether any CAA records exist for that domain. This is because of the CA\/B Forum ruling that dictates that all commercial CAs must check for CA records before issuing any certificate.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here\u2019s what happens when a publicly trusted CA runs a CAA DNS records check:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>If there is a CAA record:<\/strong> The CA must check to see whether they are authorized to issue a cert and verify that the certificate request matches the CAA record specifications.\n<ul class=\"wp-block-list\">\n<li>If yes to both, then the CA can move to the next phase of the certificate issuance process.<\/li>\n\n\n\n<li>If no to one or both, then the CA should reject the request outright.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>If no CAA DNS record exists:<\/strong> If the CA can\u2019t find a CAA record for the domain in question, it will proceed with next phase of the certificate issuance process.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">It\u2019s important to note, though, that CAA records work hierarchically. This means that if someone requests a certificate for one of your subdomains and there\u2019s no CAA record available for that subdomain, the CA will automatically look at the next level up in the DNS name tree to search for a CAA record there. If they find one on the root domain, that will be used for the subdomain in question as well.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But where exactly does the CAA records check fit into the certificate issuance process for publicly trusted CAs?<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1014\" height=\"351\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-check-certificate-issuance-process.png\" alt=\"A graph showcasing where a CAA record check falls in the CA certificate issuance process\" class=\"wp-image-12632 addshadow\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-check-certificate-issuance-process.png 1014w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-check-certificate-issuance-process-300x104.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-check-certificate-issuance-process-768x266.png 768w\" sizes=\"auto, (max-width: 1014px) 100vw, 1014px\" \/><figcaption>This graphic illustrates the certificate issuance process for publicly trusted CAs and where the CAA record check fits into that process.<\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"a-look-at-certificate-authority-authorization-in-action\u2026\">A Look at Certificate Authority Authorization in Action\u2026<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s consider the following example to better understand how certificate authority authorization applies to a real-world situation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Say you want to authorize Sectigo and DigiCert to issue certificates on your behalf but no one else. What you\u2019ll do is create a CAA DNS record. This CAA record makes it so that any time a request for a new certificate goes to a publicly trusted CA, they\u2019ll see the record that says only those two specific CAs can issue certificates for your domain. So, when the CA checks for the domain\u2019s CAA DNS record, they\u2019ll see that they basically have either a red light or a green light in terms of whether they halt or continue with the certificate issuance process.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This means that if someone tries to request a certificate for your domain through another publicly trusted CA \u2014 GoDaddy, Let\u2019s Encrypt, or anyone else \u2014 their certificate signing requests will receive the big, fat stamp of rejection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>One last quick but also important note:<\/strong> Although all CAs are required to perform a CAA DNS records check, it doesn\u2019t mean that you as the domain name owner have to create a CAA record. If you don\u2019t have any CA-related requirements that you need to specify, then you don\u2019t have to create a CAA record. There\u2019s no obligation one way or the other for domain owners.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But what are the advantages of using CAA for your domain (and subdomains)?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"why-you-may-want-to-consider-creating-a-caa-dns-record-for-your-domain\">Why You May Want to Consider Creating a CAA DNS Record for Your Domain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Despite the issues that have come up previously, using a CAA helps you to prevent certificate mis-issuance. Some of the biggest advantages of implementing certificate authority authorization include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Preventing fraud or misrepresentation of your brand.<\/strong> Specifying which CA (or CAs) can issue certs for your domain helps you to prevent cybercriminals from requesting unauthorized certificates through unauthorized CAs. This helps to protect the identity of the certificate holder.<\/li>\n\n\n\n<li><strong>Limiting shadow certificates.<\/strong> By making it so that only the CAs that you have company accounts with can issue certs for your domain may help you to limit shadow certificates.<\/li>\n\n\n\n<li><strong>Adding an additional layer of security prior to certificate issuance. <\/strong>Requiring this CAA records check through the DNS is a more technical way of ensuring that a CA verifies whether they have the authority to fulfill a certificate request.&nbsp;&nbsp;<\/li>\n\n\n\n<li><strong>Showing your preference and support for specific CAs.<\/strong> If, for one reason or another, you only want your organization\u2019s name or reputation associated with a particular publicly trusted CA, you can make that possible with CAA.<\/li>\n\n\n\n<li><strong>Enhanced certificate management.<\/strong> With CAA, you can better manage your certificates under one umbrella rather than trying to track certificates from multiple CAs.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"need-to-generate-a-caa-dns-record-look-no-further\">Need to Generate a CAA DNS Record? Look No Further<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Did you know that we have a <a href=\"https:\/\/www.thesslstore.com\/ssltools\/caa-record-generator.php\">CAA record generator tool<\/a> here at The SSL Store? Not to toot our horn (at least not too much), but it\u2019s actually a really great way to automatically generate a DNS record for your domain. And if you have a DNS through your domain registrar, we have directions there for how to create a CAA DNS record for multiple providers, too.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whether you choose to set up a CAA DNS record or not is entirely up to you. As an SSL\/TLS certificate provider that works with many of the world\u2019s leading CAs, we have no dog in this race. We just want to ensure you have as much information as possible to make an informed decision about what\u2019s best for your brand identity and domain security.<\/p>\n\n\n<span style=\"display:none\" class=\"tl-placeholder-f-type-shortcode_12763\"><\/span>\n\n\n<h2 class=\"wp-block-heading\" id=\"final-thoughts-on-certificate-authority-authorization-and-dns-caa-records\">Final Thoughts on Certificate Authority Authorization and DNS CAA Records<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As you can see, using CAA has its advantages. Not only does it give you greater control of managing your domain\u2019s SSL\/TLS certificates, but it also gives you greater control of your brand identity as a result. While it\u2019s not perfect, and you certainly can see the progression of this standard over time in the IETF\u2019s requests for comments, certificate authority authorization does hold promise and is a great way to add another layer of identity and security to your domain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We hope this article has provided you with greater clarity about what CAA is and why creating a CAA DNS record may be valuable for your organization. There are a lot of important little pieces that make up each CAA record, and understanding the role of each component is crucial to making the use of CAA most valuable for your organization or business.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Have questions or additional insights? Feel free to share in the comments below\u2026<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Did you know that there\u2019s an easy way to control which CAs can issue certificates for your domain? Here\u2019s everything to know about CAA records for your DNS.<\/p>\n","protected":false},"author":17,"featured_media":12640,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":"","tve_updated_post":"","tve_custom_css":"","tve_user_custom_css":"","tve_globals":{},"tcb2_ready":0,"tcb_editor_enabled":0,"tve_landing_page":"","_tve_header":"","_tve_footer":""},"categories":[16,10200],"tags":[2413,12586],"class_list":["post-12621","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hashing-out-cyber-security","category-monthly-digest","tag-caa","tag-certificate-authority-authorization","post-with-tags"],"views":64786,"jetpack_featured_media_url":"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2020\/07\/caa-record-dns.jpg","_links":{"self":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/posts\/12621","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/comments?post=12621"}],"version-history":[{"count":0,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/posts\/12621\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/media\/12640"}],"wp:attachment":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/media?parent=12621"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/categories?post=12621"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/tags?post=12621"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}