I agree with Ryan that the hard fail per item number 3 is the sticking point. 
My concern is that in many organizations, the certificate requesters are not 
the DNS administrators and there could be some disconnect.

I think that Peter asked the question, “how does the CA currently know that 
they are allowed to issue certificates for a specific domain?”

I think we did a good job with the BR and EV documents. We have defined 
certificate approvers with the Enterprise RA and the Certificate Approver. We 
have also defined access controls and limits on certificate requesters.

So my answer is that we know we are allowed to issue certificates for a 
specific domain as we have a subscriber agreement which allows us to honor the 
requests of verified Enterprise RAs and Certificate Approvers.

Per the BRs, an Enterprise RA is defined and has the following privileges:

·        BR 1.6.1 – Definition: An employee or agent of an organization 
unaffiliated with the CA who authorizes issuance of Certificates to that 

·        BR 1.3.2 - The CA MAY designate an Enterprise RA to verify certificate 
requests from the Enterprise RA’s own organization.

·        Note that if the Enterprise RA has the ability to issue a certificate 
then they must meet the multi-factor requirement of BR 6.5.1, “The CA SHALL 
enforce multi‐factor authentication for all accounts capable of directly 
causing certificate issuance.”

·        Also note that per BR 3.2.5, “the CA SHALL establish a process that 
allows an Applicant to specify the individuals who may request Certificates.” 
This generally limits requests which have not been approved by an Enterprise RA 
or a Certificate Approver.

For EV certificates, there is a Certificate Approver:

·        EV 4 – Definition: A natural person who is either the Applicant, 
employed by the Applicant, or an authorized agent who has express authority to 
represent the Applicant to (i) act as a Certificate Requester and to authorize 
other employees or third parties to act as a Certificate Requester, and (ii) to 
approve EV Certificate Requests submitted by other Certificate Requesters.

·        Note if the Subscriber had established the BR 3.2.5 restriction, then 
a new Certificate Approver would not be verified unless they could be added to 
the approved list.

In both cases the roles have the privilege to verify/approve certificate 
requests. As such, I do not think that we need a hard fail on CAA if the 
request has been approved by an Enterprise RA or a Certificate Approver.

I think that the CA can limit risk by checking CAA records where there has been 
no verified Enterprise RA or a Certificate Approver established. In this 
condition, I think that the CAA record check should be a hard fail.


From: public-boun...@cabforum.org [mailto:public-boun...@cabforum.org] On 
Behalf Of Ryan Sleevi
Sent: Thursday, September 8, 2016 6:35 PM
To: Rick Andrews <rick_andr...@symantec.com>
Cc: public@cabforum.org
Subject: Re: [cabfpub] Continuing the discussion on CAA

On Thu, Sep 8, 2016 at 2:40 PM, Rick Andrews 
<rick_andr...@symantec.com<mailto:rick_andr...@symantec.com>> wrote:
Additionally, I'd like to address this point: 'Ryan pointed out that, at
present, nothing would prevent Neil from stating in his CP/CPS that his CA
will issue certificates if he sees a CAA record for 
"symantec.com<http://symantec.com>" '. If
Neil adopted that policy, wouldn't it violate RFC 6844, which says "The
issue property entry authorizes the holder of the domain name <Issuer Domain
Name> or a party acting under the explicit authority of the holder of that
domain name to issue certificates for the domain in which the property is


As you know, the IETF historically shies away from discussions of policy, and 
instead focuses on the technological side. We can see that certainly with PKIX 
(RFC 5280 & friends), and it was actually a frequently reiterated point during 
the discussion of CAA through its standardization.

As such, we should imagine that CAA defines the structural representation, but 
it's up to the CA/B Forum to specify the policy that applies here. You can see 
that the document intentionally shies away from this discussion in Sections 6.1 
and 6.2, and that's arguably the right thing.

The extent of my comments was to make sure that, in developing a policy for CAA 
(which I'm strongly supportive of, so appreciate you continuing the 
discussion), we make it clear what is and is not acceptable. If we were to 
accept that Neil doing so would violate RFC 6844, then we must also accept that 
the only RFC 6844-compliant method of a CA running into the situation you 
propose is to Not Issue At All. That is, not even Option 1 is acceptable (since 
you included the parenthetical escape clause).

My "ideal" outcome for CAA within the CA/B Forum would be:
1) A requirement in the CPS to state that the CA respects CAA
2) A requirement that the CPS documents which domains the CA recognizes in CAA 
records. As a consequence, if a CA wishes to recognize additional domains in 
CAA records, this requires a CPS update.
3) A requirement that the CA honor the CAA record exactly as presented, with no 
overriding allowed, short of changing the DNS record.
4) A requirement that the CA maintain audit records regarding their CAA 
evaluation, such as:
  - The order and sequence of DNS records they attempted to resolve
  - The results of those DNS records and the source of the information.

Each of these I suspect is controversial in some way, and will no doubt require 
more discussion, but to briefly justify this:

#1, without #2-4, is largely toothless. However, my goal is to ensure that 
auditors have a consistent framework to evaluate a CA's compliance, and for the 
public at large as well to evaluate. If a CA says it supports CAA, and a 
misissuance event occurs that contravenes that, it's natural that both auditors 
and the public should want to understand why and how, and setting this up 
within the CPS makes it clear that the CA is committed to explaining that.

#2 is about making it clear for Subscribers and Applicants the "Right Way" to 
configure things. Each CA naturally is free to manage their customer relations 
as they wish, but it can be hard to find consistent information (such as where 
to report misissuance events), and the CPS is the one universal aspect that all 
CAs must have and abide by, so it naturally makes sense to ensure it's in a 
consistent and discoverable place.

#3 is clearly a sticking point. I think we're all pretty aware of CAs' 
objections to this, but I do feel strongly that, without this, CAA is not an 
effective security mitigation. As you know, Google holds a variety of domains, 
and we routinely receive requests from other CAs attempting to confirm that an 
applicant was duly authorized to make a request, and we routinely have to 
contact CAs and request revocation for certificates that were not authorized 
according to our company policy. Allowing escape clauses, even at the EVGL 
level, significantly weaken our ability to proactively prevent this, which we 
believe would reduce both ours and CAs' administrative burdens.

#4 is less obvious. During Bilbao, we discussed how DNS resolution can be 
unreliable for CAs; for example, network hiccups due to peering interconnects 
can manifest as a DNS timeout, rather than a successful (negative) response. We 
also know that CAA policies are only applicable at time of issuance, and may 
change, so we can't examine post-facto the CAA record of a domain and make a 
declarative judgement of misissuance. However, unfortunate as it is, CAA is a 
"fail open" rather than "fail closed" model - any misconfiguration on the CA's 
part (such as forgetting to configure their DNS clients or firewalls correctly) 
can result in issuance, even when a domain holder explicitly requests that the 
CA not issue (via CAA). So we need to have some sort of way to audit this, so 
that, in the event of claimed conflict, we can better ascertain what happened, 
and why. This is a rough sketch of an attempt to do so, but the point in 
particular being to ensure there's enough record to know if the CA had a bug in 
their system, and to ensure enough information is preserved to understand that 

We know CAA isn't the system we'd hope for - while it presents itself as a 
whitelist mechanism (listing only authorized CAs) - because it's built atop the 
unreliable DNS, it's effectively a blacklist mechanism (any failure is 
interpreted as the status quo - any CA is authorized - rather than the desired 
state - no CA is authorized). In an ideal world, I would wish for CAA to be 
required, and present, in order for a CA to issue a certificate, but I know 
that world is unlikely to ever come about, and so I'd at least be willing to 
settle on #1 - #4 as an improvement to the status quo.
Public mailing list

Reply via email to