الموارد · 116
postMessage: التحقق من المصدر والنافذة والأمر
تحديد عقد رسائل iframe أو نافذة منبثقة يرفض المرسلين والبيانات غير المتوقعة.
مُحدَّث · 2 min
ما يُساعد هذا الدليل على تحقيقه
- تحديد الأطراف والأنواع
- التحقق قبل أي أثر
- اختبار التنقل والرسائل المخالفة
فحص سريع
- عقد الأصل والنافذة والنوع والحد الأدنى للبيانات.
- سلسلة تحقق ورفض بلا أثر على العمل.
- مصفوفة رفض وتنظيف المستمعين.
طريقة خطوة بخطوة
- 1
تحديد الأطراف والأنواع
سجّل أصولاً دقيقة والنافذة المتوقعة وأنواع الرسائل. استخدم targetOrigin محدداً للبيانات الحساسة. يشمل الأصل البروتوكول والمضيف والمنفذ؛ البحث عن جزء من اسم نطاق لا يثبت هوية المرسل.
عقد الأصل والنافذة والنوع والحد الأدنى للبيانات.
- 2
التحقق قبل أي أثر
قارن event.origin وevent.source في هذا التكامل بالنافذة المتوقعة. افحص البنية والقيم المسموحة وحالة العملية. تعامل مع المحتوى كبيانات دون eval أو إدراج HTML. الأصل المعتمد لا يحل محل تفويض الخادم.
سلسلة تحقق ورفض بلا أثر على العمل.
- 3
اختبار التنقل والرسائل المخالفة
اختبر نطاقاً مشابهاً ومنفذاً مختلفاً ونافذة أخرى من الأصل نفسه وحقولاً غير صحيحة ورسائل بعد الإغلاق. أزل المستمعين غير اللازمين وأبطل التبادلات المنتهية. استخدم أصلاً سبق اعتماده للرد حتى بعد تنقل النافذة.
مصفوفة رفض وتنظيف المستمعين.
حالة قبول قابلة للتكرار
مثال افتراضي: البيانات لا تصف عميلاً أو نتيجة مرصودة.
عرض بيانات الحالة
{
"allowed_origin": "https://widget.example",
"observed_origin": "https://widget.example",
"expected_window": "active_iframe",
"observed_window": "another_window",
"payload_schema_valid": true,
"expected": "reject_without_effect"
}القرار المتوقع
مثال افتراضي: https://widget.example أصل معتمد لكن event.source نافذة أخرى. العقد يتطلب iframe النشطة: ارفض الرسالة دون إصدار أمر.
دفتر القبول الخاص بك
سجّل الملاحظات حسب معايير الدليل. الدفتر ليس شهادة اعتماد.
لا حفظ تلقائياً. صدّر قبل المغادرة.
التصفية لا تحد التصدير. الإجراءات تشمل المشاكل والمعايير غير المفحوصة.
الاستيراد يستبدل الملاحظات بعد تأكيدك.
مؤشرات الإدارة
| المؤشر | ما يقيسه | الإجراء الأول |
|---|---|---|
| حالات غير متوقعة مرفوضة | حالات سلبية مرفوضة بلا أثر / حالات سلبية منفذة | تسجيل الأصل والنافذة والحالة |
| تبادلات معتمدة مكتملة | سيناريوهات متوقعة مكتملة / سيناريوهات مختبرة | فصل الاستلام عن الأثر المؤكد |
الأخطاء الشائعة
الأسئلة المتكررة
هل يكفي فحص event.origin؟
لا. افحص النافذة والبنية والحالة أيضاً. يجب أن يتحقق الخادم من صلاحيات الإجراء.
المراجع الرسمية
تدعم المراجع الطريقة. قم بتكييف عمليات التحقق مع سياقك؛ فهي ليست شهادة. قد تكون عناوين المراجع الأصلية والوثائق المصدرية بلغة أخرى.
تاريخ مراجعة المراجع .






