התקנת תעודה בכל מוצרי node

מתוך ויקי נטפרי
קפיצה לניווט קפיצה לחיפוש

עמוד ראשי > תעודת האבטחה > התקנת תעודה בכל מוצרי node

מורידים את התעודה של הספק של נטפרי מפה. http://netfree.link/netfree-ca.crt שומרים אותה במחשב איפה שרוצים אבל במקום קבוע.

מגדירים במחשב משתני סביבה.

מפתח:

NODE_EXTRA_CA_CERTS

ערך:

<כתובת של התעודה>


במקרה שההגדרה לא עובדת בגלל שזה גירסה ישנה או שזה electron צריך להוסיף את הקוד הזה איפה שהוא בתוכנה.

if(process.env.NODE_EXTRA_CA_CERTS){
	(function(){
		try{
			var netfreeCa = require("fs").readFileSync(process.env.NODE_EXTRA_CA_CERTS);
		}catch(e){
			return;
		}
		
		var NativeSecureContext = process.binding('crypto').SecureContext;
		var oldaddRootCerts = NativeSecureContext.prototype.addRootCerts;
		NativeSecureContext.prototype.addRootCerts = function(){
			var ret = oldaddRootCerts.apply(this,arguments);
			this.addCACert(netfreeCa);
			return ret;
		};
	})();
}


לחלופין ניתן גם לבטל את הצורך בתעודה לחלוטין, בכל הרצת node ודברים מבוססים עליו:


הריצו בשורת הפקודה.

בלינוקס

export NODE_TLS_REJECT_UNAUTHORIZED=0

בוינדוס

set NODE_TLS_REJECT_UNAUTHORIZED=0


ולאחר מכן הריצו את ה node