3. Relevant Resource Record Set (Insieme di record di risorsa rilevante)
3. Relevant Resource Record Set (Insieme di record di risorsa rilevante)
Prima di emettere un certificato, una CA conforme DEVE verificare la pubblicazione di un Relevant RRset. Se esiste, una CA NON DEVE emettere salvo se (1) la richiesta è coerente con il RRset CAA applicabile o (2) si applica un'eccezione nella CP o CPS pertinente. Se il Relevant RRset non contiene Property Tag che limitano l'emissione (solo iodef o solo tag non riconosciuti), CAA non limita.
La richiesta di certificato PUÒ specificare più di un FQDN e PUÒ specificare nomi di dominio con carattere jolly (Wildcard Domain Name). Gli emittenti DEVONO verificare l'autorizzazione per tutti gli FQDN e i nomi di dominio con carattere jolly specificati nella richiesta.
La ricerca del RRset CAA risale l'albero dei nomi dall'etichetta fino alla radice DNS "." (esclusa) fino a trovare un RRset.
Data una richiesta per un FQDN X specifico o per un nome a dominio jolly *.X, l'insieme di record di risorsa rilevante RelevantCAASet(X) è determinato come segue (in pseudo-codice):
Let CAA(X) be the RRset returned by performing a CAA record query
for the FQDN X, according to the lookup algorithm specified in
Section 4.3.2 of [RFC1034] (in particular, chasing aliases). Let
Parent(X) be the FQDN produced by removing the leftmost label of
X.
RelevantCAASet(domain):
while domain is not ".":
if CAA(domain) is not Empty:
return CAA(domain)
domain = Parent(domain)
return Empty
For example, processing CAA for the FQDN "X.Y.Z" where there are
no CAA records at any level in the tree RelevantCAASet would have
the following steps:
CAA("X.Y.Z.") = Empty; domain = Parent("X.Y.Z.") = "Y.Z."
CAA("Y.Z.") = Empty; domain = Parent("Y.Z.") = "Z."
CAA("Z.") = Empty; domain = Parent("Z.") = "."
return Empty
Processing CAA for the FQDN "A.B.C" where there is a CAA record
"issue example.com" at "B.C" would terminate early upon finding
the CAA record:
CAA("A.B.C.") = Empty; domain = Parent("A.B.C.") = "B.C."
CAA("B.C.") = "issue example.com"
return "issue example.com"