Lorsque j'ai utilisé des API openssl pour valider le certificat du serveur (auto-signé), j'ai eu l'erreur suivante:
erreur 19 à 1 recherche en profondeur: certificat auto-signé dans la chaîne de certificats
Selon openssl documentation , cette erreur (19) est
"X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: certificat auto-signé dans la chaîne de certificats - la chaîne de certificats peut être créée à l'aide des certificats non approuvés mais la racine est introuvable localement."
Pourquoi cette erreur se produit? Des problèmes avec mon certificat de serveur?
Vous avez un certificat qui est auto-signé, c'est donc non approuvé par défaut, c'est pourquoi OpenSSL se plaint. Cet avertissement est en fait une bonne chose, car ce scénario peut également augmenter en raison d'une attaque de l'homme du milie .
Pour résoudre ce problème, vous devrez l'installer en tant que serveur de confiance. S'il est signé par une autorité de certification non approuvée, vous devrez également installer le certificat de cette autorité de certification.
Jetez un oeil à ce lien sur l'installation de certificats auto-signés.
Voici une ligne pour vérifier la chaîne de certificats:
openssl verify -verbose -x509_strict -CAfile ca.pem cert_chain.pem
Cela ne nécessite pas d'installer CA n'importe où.
Voir Comment fonctionne un ensemble de chaînes de certificats SSL? pour plus de détails.
La solution à l'erreur consiste à ajouter cette ligne en haut du code:
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";