npm Error UNABLE_TO_GET_ISSUER_CERT_LOCALLY
-
Hallo zusammen,
ich bin mit node.js und npm nicht so firm und spiele nur ab und an an ein paar Sachen rum, um mal was auszuprobieren. Ich nutze das ganze auf Windows 7 (mir wäre was anderes auch lieber, aber man kann sich nicht alles aussuchen -.- )
Heute wollte ich ein Paket Nachinstallieren und habe die Fehlermeldung UNABLE_TO_GET_ISSUER_CERT_LOCALLY bekommen.
Auf Stackiverflow liest man, dass man entweder auf http umstellen, oder ssl Verifizierung ausstellen soll. Finde ich eigentlich beides nicht schön.
Mir ist eingefallen, dass ich letztens mit Git ein ähnliches Problem hatte. Das ließ sich lösen, in dem ich das SSL Backend von
openssl
aufschannel
umgestellt habe. Jetzt habe ich mich gefragt, ob es die Möglichkeit bei npm auch gibt. Leider habe ich via Google nix gefunden, daher fürchte ich nicht, wollte aber hier mal nachfragen, ob jemand vlt doch noch eine Idee hat.
-
@Schlangenmensch sagte in npm Error UNABLE_TO_GET_ISSUER_CERT_LOCALLY:
Auf Stackiverflow liest man, dass man entweder auf http umstellen, oder ssl Verifizierung ausstellen soll. Finde ich eigentlich beides nicht schön.
Da musst du wohl durch. Hier gibt es einige Lösungsansätze: https://stackoverflow.com/questions/45884752/npm-err-code-unable-to-get-issuer-cert-locally
Ansonsten das Paket manuell runterladen.
Viel Glück!
-
@Foulpelz Ja, den Stackoverflow Thread habe ich auch gefunden. Tatsächlich bin ich mit der Hilfe des Posts auch auf die Lösung gekommen.
Und zwar folgendes: Wir setzen in der Firma einen Z-Scaler Proxy ein. Der agiert anscheinend als Man in the middle. Und npm kennt dann das Zertifikat vom Z-Scaler nicht. Aber, der Secure Channel von Windows kennt das ja schon, also muss das ja auf dem System installiert sein.
Tatsächlich habe ich im Zertifikatmanager (certmgr) auch ein "Zscaler Root CA" gefunden. Das base64 encodiert exportiert und den Pfad mittels
npm set cafile <path to certificate>
bekannt gemacht. Und siehe da, es funktioniert.