Menu
picture of tbs certificates
picture of tbs certificates
Les produits
Notre gamme
Partenaires
Support
Numéro vert
Focus


20170413 - Le CA/B Forum rend le contrôle CAA obligatoire pour les autorités de certification

À partir du 8 septembre 2017, chaque autorité de certification devra contrôler les enregistrements DNS CAA avant toute émission de certificat SSL. Bien qu'existant déjà depuis un moment le contrôle CAA est optionnel, aujourd'hui l'autorité peut choisir d'effectuer ce contrôle ou non.

Attention : Ce contrôle devra alors être effectué pour chacun des SANs devant être sécurisé par le certificat demandé.

Qu'est-ce que le CAA ?

Le CAA (pour Autorisation de l'autorité de certification) est un enregistrement DNS permettant au propriétaire d'un nom de domaine d'autoriser (et donc aussi d'interdire) une ou plusieurs autorités de certification à émettre des certificats pour le domaine concerné.

Comment ça marche ?

La spécification DNS CAA n'est pas obligatoire et si aucun enregistrement n'est défini pour un domaine alors il est admis que l'autorisation est tacitement donnée à toutes les autorités de certification d'émettre pour ce domaine.

En revanche un enregistrement existant mais vide indique une interdiction généralisée.

NOTE : Une fois le certificat émis le contrôle CAA n'est plus utile. Les tierce parties (navigateurs par exemple) ne vérifient pas le DNS CAA lorsqu'un certificat est sollicité. En effet, il se peut que l'enregistrement ai été modifié après une émission, sans invalider un certificat.

Quelle est l'utilité d'un tel contrôle ?

Il vous donne la possibilité d'interdire à des autorité de certification d'émettre des certificats en votre nom. Vous avez alors un meilleur contrôle de vos outils SSL.

Il peut aussi être considéré comme une étape d'audit supplémentaire permettant à l'autorité de réduire les risque d'émission non-souhaitée.

Et concrêtement ?

Le CAA prévoit 3 propriétés :

  • issue : contient les autorisations/restrictions pour le domaine concerné
    Si cette propriété est utilisé seule, elle est valable aussi bien pour le domaine concerné que pour les certificats Wildcard.
    Voici un exemple :
    exemple.fr. CAA 0 issue "sectigo.com"
    Autorisation pour l'autorité Sectigo pour le certificat exemple.fr et le certificat Wildcard *.exemple.fr

  • issuewild : contient les autorisations/restrictions pour le domaine concerné. Cette propriété est spécifique aux certificats wildcard. Si elle n'existe pas alors c'est la propriété issue qui sera utilisée pour les certificats wildcard (l'inverse n'est pas vrai)
    Voici un exemple :
    exemple.fr. CAA 0 issuewild "sectigo.com"
    Autorisation pour l'autorité Sectigo uniquement pour le certificat Wildcard *.exemple.fr

  • iodef (Incident Object Description Exchange Format) : indique une URL permettant de rapporter des problémes rencontrés lors de la procédure d'audit. Le format de l'URL indique la méthode qui devra être utilisée (mailto pour un envoi de mail ou http pour l'utilisation d'un webservice).

D'autres valeurs peuvent être ajoutées à l'appréciation du propriétaire du domaine ou à la demande de l'autorité de certification.

Et les sous-domaines ?

Il est possible de créer des DNS CAA spécifique à des sous-domaine plutôt qu'à un domaine en entier. Dans ce cas, l'autorité cherchera d'abord un enregistrement DNS CAA pour le sous-domaine puis, s'il n'en existe pas, pour le domaine racine.

Cas du CAA avec valeur CNAME

Il est possible que dans votre configuration DNS interne, un enregistrement pointe sur un autre domaine pour lequel vous avez demandé un certificat.

Exemple : vous demandez un certificat avec le CN : domaine1.fr. Ce domaine contient un enregistrement CNAME pointant sur domaine2.fr. Dans ce genre de cas, l'autorité suit un procédé spécifique (défini par le CA/B Forum)

  1. L'autorité se place sur domaine1.fr (CN du certificat).

  2. Vérification si un enregistrement CAA est présent ou non dans la zone DNS du domaine.

  3. Si un enregistrement CAA est présent :
    • l'enregistrement autorise l'émission du certificat => la génération du certificat peut-être effectuée.
    • l'enregistrement ne permet pas l'émission : arrêt de la commande.

  4. Si un enregistrement CAA n'est pas présent, on passe à l'étape suivante.

  5. L'autorité vérifie si un enregistrement CNAME concernant domaine1.fr est présent :
    • si un CNAME est présent, l'autorité va rechercher si un enregistrement CAA est présent (reprise à partir du point 2)
    • s'il n'y a pas de CNAME, l'autorité vérifie le domaine parent (si existant).

Pour résumer, la vérification du CAA se fait sur chaque niveau de domaine et si un CNAME est présent, la vérification se fera également à ce niveau. Dès qu'un enregistrement CAA est détécté, la vérification s'arrête.

Valeurs pour issue et issuewild

Dans le tableau ci-dessous, retrouvez les valeurs* à définir pour issue et issuewild pour chaque autorité de certification :

AUTORITÉ VALEURS
Sectigo / TBS X509 / PositiveSSL sectigo.com
comodo.com
comodoca.com
usertrust.com
trust-provider.com
GlobalSign globalsign.com
Dhimyotis / Certigna certigna.fr
DigiCert Digicert.com
Symantec.com
geotrust.com
rapidssl.com
thawte.com
digitalcertvalidation.com
volusion.digitalcertvalidation.com
stratossl.digitalcertvalidation.com
intermediatecertificate.digitalcertvalidation.com
1and1.digitalcertvalidation.com
Harica harica.gr

* Valeurs mises à jour le 15/10/2019

Comment définir plusieurs autorisations ?

Si vous souhaitez autoriser plusieurs autorités de certification alors il faut multiplier les enregistrements CAA.

Exemple :

exemple.com.  CAA 0 issue "sectigo.com"
exemple.com.  CAA 0 issue "globalsign.com"

Liens Utiles