بأمان* قم بتثبيت الحزم باستخدام NPM/YARN عن طريق تدقيقها كجزء من عملية التثبيت الخاصة بك
التغطية الإعلامية حول NPQ:
بمجرد تثبيت NPQ ، يمكنك تثبيت الحزم بأمان:
npq install express
ستقوم npq
بتنفيذ الخطوات التالية إلى العقلانية ، تحقق من أن الحزمة آمنة من خلال استخدام الاستدلال النحوي والاستعلام عن قاعدة بيانات CVE:
إذا تمت مطالبة NPQ بالمتابعة مع التثبيت ، فإنها ببساطة تسلم مهمة تثبيت الحزمة الفعلية إلى مدير الحزمة (NPM افتراضيًا).
بأمان* - ليس هناك سلامة مضمونة ؛ لا يزال من الممكن أن توجد حزمة ضارة أو ضعيفة لا تحتوي على نقاط الضعف الأمنية التي تم الكشف عنها علنًا وتحتي بفحوصات NPQ.
npm install -g npq
ملاحظة: نوصي بالتثبيت مع npm
بدلاً من yarn
. وبهذه الطريقة ، يمكن npq
تثبيت أسماء الأسماء الأسماء الخاصة بك تلقائيًا.
npq install express
نظرًا لأن npq
عبارة عن خطوة مسبقة للتأكد من أن حزمة NPM التي تقوم بتثبيتها آمنة ، يمكنك تضمينها بأمان في استخدام npm
يوميًا ، لذلك لا توجد حاجة لتذكر تشغيل npq
بشكل صريح.
alias npm= ' npq-hero '
إذا كنت تستخدم yarn
، أو تريد عمومًا أن تخبر NPQ بشكل صريح عن مدير الحزمة لاستخدامه ، فيمكنك تحديد متغير البيئة: NPQ_PKG_MGR=yarn
مثال: إنشاء اسم مستعار مع الغزل كمدير الحزمة:
alias yarn= " NPQ_PKG_MGR=yarn npq-hero "
ملاحظة: سيقوم npq
افتراضيًا بإلغاء تحميل جميع الأوامر ووسائطها إلى مدير حزمة npm
بعد الانتهاء من التمثيل الواجب للحزم المعنية.
اسم مارشال | وصف | ملحوظات |
---|---|---|
عمر | سيظهر تحذيرًا لحزمة ما إذا كان عمرها على NPM أقل من 22 يومًا | يتحقق من تاريخ إنشاء الحزمة ، وليس إصدارًا محددًا |
مؤلف | سيظهر تحذيرًا إذا تم العثور على حزمة بدون حقل مؤلف | يتحقق من أحدث إصدار للمؤلف |
التنزيلات | سيظهر تحذيرًا لحزمة إذا كان عدد التنزيل في الشهر الماضي أقل من 20 | |
ReadMe | سيظهر تحذيرًا إذا لم يكن هناك حزمة لا تحتوي على readme أو تم اكتشافها كحزمة أصحاب أمان من قبل موظفي NPM | |
ريبو | سيظهر تحذيرًا إذا تم العثور على حزمة بدون عنوان URL للمستودع الصالح والعمل | يتحقق من أحدث إصدار لعنوان URL المستودع |
البرامج النصية | سيظهر تحذيرًا إذا كانت هناك حزمة تحتوي على برنامج نصي للتثبيت قبل/آخر يمكن أن يكون ضارًا | |
سنيك | سيظهر تحذيرًا إذا تم العثور على حزمة مع نقاط ضعف في قاعدة بيانات Snyk | لكي تعمل Snyk ، تحتاج إما إلى تثبيت حزمة snyk NPM باستخدام رمز API صالح ، أو إتاحة الرمز المميز في متغير بيئة Snyk_token ، وسيستخدمه NPQ |
رخصة | سيظهر تحذيرًا إذا تم العثور على حزمة بدون حقل ترخيص | يتحقق من أحدث إصدار للحصول على ترخيص |
المجالات منتهية الصلاحية | سيظهر تحذيرًا إذا تم العثور على حزمة مع أحد المشاهدين لها عنوان بريد إلكتروني يتضمن مجال منتهية الصلاحية | يتحقق من إصدار التبعية للمشرف مع مجال منتهي الصلاحية |
التوقيعات | سوف يقارن توقيع الحزمة كما يظهر على pakument السجل مع المفاتيح المنشورة في سجل NPMJS.Com | |
مصدر | سوف يتحقق من شاهالات الحزمة لبيانات تعريف الأصل للحزمة المنشورة |
لتعطيل مارشال تمامًا ، قم بتعيين متغير بيئة باستخدام اسم مارشال القصير.
على سبيل المثال ، لتعطيل تعرض Snyk Marshall:
MARSHALL_DISABLE_SNYK=1 npq install express
npq install express --dry-run
تعلم Node.js تقنيات الترميز الآمنة وأفضل الممارسات من Liran Tal
npm install
بتثبيت وحدة نمطية حتى لو كان لديها نقاط ضعف ؛ ستعرض NPQ المشكلات التي تم اكتشافها ، وتطالب المستخدم بالتأكيد على ما إذا كان يجب متابعة تثبيته.pre-install
يمكن أن يكون ضارًا لنظامك ويطالب بك ما إذا كنت تريد تثبيته. في حين أن npm audit
لن يقوم بأي شيكات من هذا القبيل ، ولا تستشير سوى قاعدة بيانات الضعف لمشكلات الأمان المعروفة.npm audit
أقرب إلى الوظيفة لما يفعله Snyk ، بدلاً من ما يفعله NPQ.يرجى الرجوع إلى المساهمة في الإرشادات حول المساهمة في هذا المشروع
liran tal [email protected]