Délivrer des certificats avec une durée de validité raccourcie

Il est parfois nécessaire d'émettre des certificats avec une durée de validité plus courte que celle configurée dans le modèle de certificat. C'est peut-être pour cela que l'on ne souhaite pas reconfigurer immédiatement le modèle de certificat ou créer un autre modèle de certificat.

Comment la date d'expiration d'un certificat délivré est-elle déterminée ?

Pour déterminer la date d'expiration d'un certificat, le Module de politique de l'autorité de certification. La date d'expiration d'un certificat délivré (NotAfter Attribut) est déterminée sur la base des conditions suivantes :

  1. La durée de validité définie dans le modèle de certificat correspondant.
  2. Der auf der jeweiligen Zertifizierungsstelle konfigurierte Maximalwert (ValidityPeriod, ValidityPeriodUnits in der Registrierung der Zertifizierungsstelle).
  3. La période de validité restante du certificat de l'autorité de certification.

La date d'expiration du certificat délivré est fixée à la date la plus proche.

Un demandeur peut-il déterminer ou raccourcir la date d'expiration ?

Il est possible d'activer une quatrième condition qui permet au demandeur d'indiquer une date de fin ou une durée de validité souhaitée lors de la soumission de la demande de certificat à l'autorité de certification via des attributs correspondants.

Cette méthode ne peut être utilisée que pour Raccourcir de la validité du certificat. Il n'est pas possible de prolonger la validité prévue du certificat, dans un tel cas, les attributs sont ignorés par l'autorité de certification.

Pour que ces attributs puissent être évalués, l'autorité de certification doit d'abord être configurée pour les appliquer. Cela se fait via le drapeau EDITF_ATTRIBUTEENDDATEqui doit être configuré dans le module Policy de l'autorité de certification. Par défaut, ce drapeau n'est pas activé sur les autorités de certification intégrées dans Active Directory.

Si le drapeau n'est pas activé, les attributs peuvent être indiqués, mais ne sont pas traités par l'autorité de certification. Par défaut, le drapeau n'est pas activé sur une autorité de certification intégrée dans Active Directory (en anglais Enterprise Certification Authority).

Puis-je activer le drapeau sans risque ?

En raison des restrictions décrites précédemment concernant le traitement des attributs, il n'est possible d'obtenir le certificat que de manière encore plus restrictive. Il peut donc être activé sans risque. Pour Microsoft Intune également, l'activation de ce drapeau condition officielle.

Comment activer le drapeau ?

Le réglage actuel peut être consulté avec la commande suivante :

certutil -v -getreg Policy\Editflags

Le drapeau peut être activé avec la commande suivante :

certutil -setreg Policy\Editflags +EDITF_ATTRIBUTEENDDATE

Le drapeau peut être désactivé à l'aide de la commande suivante :

certutil -setreg Policy\Editflags -EDITF_ATTRIBUTEENDDATE

Le service d'autorité de certification doit ensuite être redémarré pour que la modification prenne effet.

Indiquer la date d'expiration lors de la soumission de la demande de certificat

Lors de la soumission de la demande de certificat, il est désormais possible d'indiquer les attributs correspondants. Le nom et la valeur sont séparés par deux points. Plusieurs attributs consécutifs sont séparés par un saut de ligne ("\N").

ValeurDescription
ExpirationDateDate en comme en RFC 2616 format défini.
ValidityPeriodMinutes,Hours,Days,Weeks,Months,Years. Doit être indiqué avec "ValidityPeriodUnits".
ValidityPeriodUnitsLe nombre pour la valeur "ValidityPeriod". Doit être indiqué en même temps que "ValidityPeriod".

Les attributs peuvent être indiqués lors de la soumission via certreq.exe. Une indication programmatique sur les Submit Méthode du ICertRequest interface est possible.

L'information est transférée dans la table d'attributs de l'enregistrement dans la base de données de l'autorité de certification :

Exemples

Comme les demandes de certificat ne contiennent généralement pas d'informations sur le modèle de certificat à utiliser, celui-ci est indiqué de la même manière dans l'exemple ci-dessous, avec l'attribut "CertificateTemplate".

Délivrer un certificat valable un an.

certreq ^
-config "ca02.intra.adcslabor.de\ADCS Labor Issuing CA 1" ^
-attrib "CertificateTemplate:ADCSLaborWebServer\nValidityPeriod:Years\nValidityPeriodUnits:1" ^
-submit "test.csr"

Délivrance d'un certificat qui doit expirer le 01.10.2021.

certreq ^
-config "ca02.intra.adcslabor.de\ADCS Labor Issuing CA 1" ^
-attrib "CertificateTemplate:ADCSLaborWebServer\nExpirationDate:Fri, 1 Oct 2021 00:00:00 GMT" ^
-submit "test.csr"

Un demandeur peut-il demander une autre date de début ?

Le module Windows Defaul Policy ne connaît pas d'attribut permettant de spécifier la date de début (attribut NotBefore) d'un certificat.

Cependant, cette fonction n'est plus disponible depuis la version 1.2 du TameModules de politique de MyCerts via un attribut "StartDate", qui fonctionne de manière analogue au mécanisme existant.

Connaissez-vous TameMyCerts? TameMyCerts est un add-on pour l'autorité de certification Microsoft (Active Directory Certificate Services). Il étend la fonction de l'autorité de certification et permet de Application de la réglementationIl s'agit d'un logiciel de gestion des certificats qui permet d'automatiser l'émission de certificats en toute sécurité. TameMyCerts est unique dans l'écosystème Microsoft, a déjà fait ses preuves dans d'innombrables entreprises du monde entier et est disponible sous une licence libre. Il peut téléchargé via GitHub et être utilisé gratuitement. Une maintenance professionnelle est également proposée.

certreq ^
-config "ca02.intra.adcslabor.de\ADCS Labor Issuing CA 1" ^
-attrib "CertificateTemplate:ADCSLaborWebServer\nStartDate:Tue, 1 Mar 2022 00:00:00 GMT" ^
-submit "Typical_WebServer.req"

Il est ainsi possible de fixer la période de validité d'un certificat à une période précise, par exemple pour des accès à court terme à des ressources informatiques.

Liens complémentaires :

Sources externes

Les commentaires sont fermés.

fr_FRFrançais