تاريخ النشر: 29 أيار (مايو) 2025
اعتبارًا من الإصدار 138 من Chrome، تم إجراء سلسلة من التغييرات على نصوص المستخدمين البرمجية
(chrome.userScripts
API) في إضافات Chrome، مع التركيز على تحسين الأمان
ومنح المستخدمين مزيدًا من التحكّم الدقيق. يعالج هذا التعديل ملاحظات مهمة تلقّيناها من منتدى المطوّرين ومستخدميهم.
في السابق، كان تفعيل نصوص المستخدمين البرمجية يتطلّب تفعيل زر الإيقاف/التفعيل العام وضع المطوّر في Chrome. لقد علمنا منك أنّ هذا النهج كان له بعض القيود الرئيسية في ما يتعلق بالأمان والوظائف والمؤسسات.
على وجه التحديد، أدّى الاعتماد على مفتاح التبديل العام وضع المطوّر إلى التسبب في المشاكل التالية:
- مخاطر الأمان: بعد تفعيل وضع المطوّر، اكتسبت الإضافات الجديدة التي طلبت إذن
userScripts
تلقائيًا إمكانية تنفيذ نصوص المستخدم البرمجية، ربما بدون موافقة صريحة من المستخدم أو معرفته بالمخاطر المرتبطة بكل إضافة جديدة. - وظائف زائدة: يتحكّم زر الإيقاف/التفعيل في وضع المطوّر في عدة أذونات أخرى مخصّصة للمطوّرين، ما يجعله أقل دقة في إدارة الإذن المحدّد لتشغيل النصوص البرمجية للمستخدمين.
- تحديات المؤسسات: تفضّل العديد من المؤسسات عدم تفعيل وضع المطوّر
على الأجهزة المُدارة، ما يمنع هذه المؤسسات بشكل فعّال من نشر أو
استخدام الإضافات التي تعتمد على واجهة برمجة التطبيقات
chrome.userScripts
.
لحلّ هذه المخاوف وتحسين أمان الإضافات في Chrome وسهولة استخدامها، سنتوقف عن استخدام زر الإيقاف/التفعيل العام وضع المطوّر ونوفّر زرًا جديدًا لكل إضافة السماح بنصوص المستخدمين البرمجية.
يتيح هذا الخيار الجديد، الذي يمكن الوصول إليه في صفحة تفاصيل الإضافة من الإصدار 138 من Chrome
(chrome://extensions/?id=<your_extension_id>
)، للمستخدمين التحكّم صراحةً في
قدرة الإضافة على تشغيل نصوص المستخدم البرمجية على أساس كل إضافة على حدة.
ويمنحك ذلك إمكانية التحكّم بشكل أدق ويقلل من المخاطر الأمنية المحتملة.
خلال الفترة الانتقالية، ستستمر إصدارات Chrome الأقدم من 138 في استخدام زر الإيقاف/التفعيل وضع المطوّر، بينما ستستخدم الإصدارات 138 أو الإصدارات الأحدث زر الإيقاف/التفعيل الجديد السماح بنصوص المستخدمين البرمجية لكل إضافة. عند تشغيل الإصدار 138 أو
الإصدارات الأحدث لأول مرة، سيتم تلقائيًا تفعيل خيار التبديل الجديد لإضافة
الإضافات الحالية التي تم منحها إذن userScripts
في حال تفعيل خيار التبديل
وضع المطوّر. سيتم ضبط جميع الإضافات الجديدة المثبَّتة بعد عملية التكامل على وضع الإيقاف التلقائي في مفتاح التبديل السماح بنصوص المستخدمين البرمجية.
بالإضافة إلى ذلك، للتحقّق من توفّر User Scripts API، كان على الإضافاتمحاولة الوصول إلى chrome.userScripts
في السابق. كان يحدث خطأ في حال
إيقاف وضع المطوّر. اعتبارًا من الإصدار 138 من Chrome، أصبح السلوك متوافقًا مع واجهات برمجة التطبيقات الأخرى، وتكون واجهة برمجة التطبيقات غير محدّدة إذا لم تكن متاحة. مع ذلك، ننصحك بإجراء هذا الفحص لتحديد ما إذا كانت واجهة برمجة التطبيقات متاحة، لأنّها تغطي جميع إصدارات Chrome:
function isUserScriptsAvailable() {
try {
// Method call which throws if API permission or toggle is not enabled.
chrome.userScripts.getScripts();
return true;
} catch {
// Not available.
return false;
}
}
على المشرفين الذين كانوا يديرون نصوص المستخدم البرمجية سابقًا من خلال إيقاف وضع المطوّر
استخدام سياسة blocked_permissions
أو "وحدة تحكّم المشرف في Google" للتحكّم في الإضافات التي تستخدِم واجهة برمجة التطبيقات chrome.userScripts
. نحن بصدد تقييم
تغييرات إضافية على كيفية التحكّم في إمكانية وصول chrome.userScripts
إلى الإضافات المثبَّتة بشكلٍ قسري، لذا يُرجى متابعة ملاحظات الإصدار الخاصة بالمشرفين للحصول على آخر المعلومات.
نعتقد أنّ هذا التغيير سيمنح المستخدمين إمكانية التحكّم بدقة أكبر في ميزات الإضافة، ما يؤدي إلى تحسين الأمان وتقديم تجربة أكثر شفافية. ونشجّع مطوّري الإضافات على تعديل مستنداتهم لتعكس هذا التغيير وضمان عملية انتقال سلسة للمستخدمين.
يمكنك الاطّلاع على مزيد من المعلومات عن التغييرات والسلوك الجديد في المستندات.
نشكر ملاحظات منتدى المطوّرين التي أدّت إلى إجراء هذا التحسين، ونبقى ملتزمين بتوفير تجربة آمنة وسهلة الاستخدام للجميع.