winjs-plugin-security
إضافة لتعزيز الأمان في مشاريع WinJS، تُستخدم بشكل أساسي لتوليد خاصية SRI (تكامل الموارد الفرعية).
الميزات
- توليد خاصية SRI تلقائياً لعناصر
وفي ملفات HTML - دعم خوارزميات التجزئة SHA-256 و SHA-384 و SHA-512 (قابل للتكوين)
- إضافة خاصية
crossorigin="anonymous"تلقائياً لضمان عمل SRI بشكل صحيح - يعمل فقط في بيئة الإنتاج، ويتخطى تلقائياً في بيئة التطوير
التثبيت
pnpm add @winner-fed/plugin-security
طريقة الاستخدام
أضف إعدادات الإضافة في ملف التكوين الخاص بك .winrc.ts:
import { defineConfig } from '@winner-fed/winjs';export default defineConfig({
plugins: ['@winner-fed/plugin-security'],
security: {
sri: true // 启用 SRI 功能
},
});
خيارات التكوين
sri
- النوع:
boolean | { algorithm: 'sha256' | 'sha384' | 'sha512' } - القيمة الافتراضية: يجب تعيينها يدويًا
- الوصف: تحديد ما إذا كان سيتم تفعيل ميزة SRI (تكامل الموارد الفرعية)، بالإضافة إلى إمكانية ضبط خوارزمية التجزئة اختياريًا
true أو {}، سيقوم الملحق بـ:- مسح ملفات HTML الناتجة بعد البناء
- إضافة خاصية
integrityلجميع وسومالتي تحتوي على خاصيةsrc - إضافة خاصية
integrityلجميع وسومالتي تحتوي على خاصيةhref - إضافة خاصية
crossorigin="anonymous"تلقائيًا (إذا لم تكن موجودة)
security: {
sri: {
algorithm: 'sha512' // 可选 'sha256' | 'sha384' | 'sha512',默认 'sha512'
}
}示例
输入 HTML
إخراج HTML (بعد تمكين SRI)
تعليمات الأمان
SRI (تكامل الموارد الفرعية) هي ميزة أمان تتيح للمتصفح التحقق من أن الموارد التي تم الحصول عليها (مثل الموارد التي تم الحصول عليها من CDN) لم يتم تعديلها بشكل ضار. عندما يقوم المتصفح بتحميل المورد، سيحسب قيمة التجزئة للمورد ويقارنها بقيمة التجزئة المحددة في خاصية integrity. إذا لم تتطابق قيمة التجزئة، سيرفض المتصفح تحميل هذا المورد.
بالنسبة إلى وسم , ستكون النتيجة هي رفض تنفيذ الكود الموجود بداخله؛ أما بالنسبة إلى روابط CSS، فالنتيجة هي عدم تحميل الأنماط الموجودة فيها.
لمزيد من المعلومات حول SRI، يمكنك مراجعة تكامل الموارد الفرعية - MDN.
ملاحظات
- هذا الملحق يعمل فقط عند البناء للإنتاج، وسيتم تخطيه تلقائيًا في بيئة التطوير
- يجب التأكد من أن ملفات الموارد قابلة للوصول في دليل إخراج البناء
- يجب استخدام خاصية
integrityمع خاصيةcrossoriginحتى تعمل بشكل صحيح
الرخصة
MIT
--- Tranlated By Open Ai Tx | Last indexed: 2025-08-06 ---