Aller au contenu principal

Autorité custom

Si vous essayez de vous connecter à un site Web sécurisé via nodejs. Bien que le site puisse fonctionner dans le navigateur, vous pouvez rencontrer des erreurs telles que CERT_UNTRUSTED, UNABLE_TO_VERIFY_LEAF_SIGNATURE, Unable to verify the first certificate.

Cela peut être dû à plusieurs raisons. Le certificat Root CA est manquant dans nodejs ou le site n'installe pas correctement les certificats intermédiaires.

Node.js a ajouté une variable d'environnement pour résoudre ce problème :

NODE_EXTRA_CA_CERTS

Lorsqu'elles sont définies, les autorités de certification « racine » bien connues (comme VeriSign) seront étendues avec les certificats supplémentaires dans le fichier. Le fichier doit être composé d'un ou plusieurs certificats de confiance au format PEM.

REMARQUE: La variable d'environnement NODE_EXTRA_CA_CERTS n'est lue que lors du premier lancement du processus Node.js. La modification de la valeur lors de l'exécution à l'aide de process.env.NODE_EXTRA_CA_CERTS n'a aucun effet sur le processus en cours.

Cas d'usages

LRE : qui possède un certificat généré par Certinomis.

Principe de fonctionnement

Node.js 7.3.0 (et les versions LTS 6.10.0 et 4.8.0) ont ajouté la variable NODE_EXTRA_CA_CERTS pour que nous puissions transmettre le fichier de certificat de l'autorité de certification.

export NODE_EXTRA_CA_CERTS=[CA certificate file path]

Principe de mise en oeuvre

Ajouter la clé publique dans le fichier {PATH_TO_APIGW}/certificate/additional_ca.pem