يقوم هذا المكون الإضافي Jekyll تلقائيًا بإنشاء سياسة محتوى HTML لموقع Jekyll. سيقوم المكون الإضافي بمسح ملفات .html
التي تم إنشاؤها بواسطة Jekyll ومحاولة تحديد موقع الصور والأنماط والبرامج النصية والإطارات وما إلى ذلك وإنشاء علامة META HTML MUSIC. سيقوم البرنامج النصي أيضًا بإنشاء تجزئة SHA256 للبرامج النصية والأنماط المضمنة. إذا وجد البرنامج النصي عناصر ذات سمات نمط <div style="color: red"></div>
، فسيقوم البرنامج النصي باستخراج معلومات النمط وإنشاء عنصر نمط يمر به أيضًا توليد سياسة أمان المحتوى.
لتسريع تطوير المواقع المستندة إلى Jekyll مع المساعدة أيضًا في إنشاء ملفات HTML آمنة محمية من XSS.
.html
التي تم إنشاؤها بواسطة Jekyll.<script>alert("Hello World!");</script>
وإنشاء تجزئة SHA256.<style>.hello { color: "red"; }</style>
ويولد تجزئة SHA256.<style>
.https://strongscot.com/images/logo.svg
إلى https://strongscot.com/images/
تحت الصارم و https://strongscot.com
تحت الاسترخاء..html
أضف المكون الإضافي gemfile داخل مجموعة jekyll_plugins:
group :jekyll_plugins do
gem 'jekyll-content-security-policy-generator'
... other gem files
end
ثم تثبيت
bundle install
لسبب ما ، سيتم تثبيت Nokogiri مع كل من المتغيرات ARM (M1) و X86 التي ستبدد Bundler. أفضل طريقة وجدت لإصلاح هذا هو فتح gemfile.lock وإزالة:
nokogiri (1.11.3-arm64-darwin)
racc (~> 1.4)
أو x86 إذا كان لديك M1 Mac.
بدلاً من ذلك ، يمكنك إضافة nokogiri
إلى Gemfile ، مثل ذلك:
group :jekyll_plugins do
gem 'nokogiri'
gem 'jekyll-content-security-policy-generator'
... other gem files
end
https://strongscot.com