توفّر قواعد أمان Firebase حماية قوية وقابلة للتخصيص بالكامل لبياناتك في Cloud Firestore و"قاعدة بيانات الوقت الفعلي" و"Cloud Storage". يمكنك بسهولة الحصول على بالقواعد باتباع الخطوات الواردة في هذا الدليل، لتأمين البيانات وحماية تطبيقك من المستخدمين الضارين
فهم لغة "قواعد أمان Firebase"
قبل البدء في كتابة القواعد، ننصحك بتخصيص بعض الوقت لمراجعة القواعد لغة قواعد أمان Firebase المحددة لمنتجات Firebase التي تستخدمها. تستفيد قاعدة بيانات الوقت الفعلي من بناء جملة يشبه JavaScript وبنية JSON القواعد.
يمكنك البدء بالتعرّف على البنية الأساسية للغة قواعد أمان Firebase.
إعداد المصادقة
أضِف مصادقة Firebase إلى تطبيقك إذا لم يسبق لك إجراء ذلك. تتوافق مصادقة Firebase مع العديد من طرق المصادقة الشائعة وتتكامل مع قواعد أمان Firebase لتوفير إمكانات إثبات ملكية شاملة.
يمكنك إعداد معلومات مصادقة إضافية ومخصَّصة لتطبيقك.
مزيد من المعلومات حول قواعد أمان Firebase ومصادقة Firebase
تحديد هياكل البيانات والقواعد
تحديد البيانات للأمان
قد تؤثر الطريقة التي تنظم بها بياناتك على الطريقة التي تقوم بها هيكلة وتنفيذ قواعدك. أثناء تحديد هياكل البيانات، ضع في اعتبارك والآثار المترتبة عليها في بنية القواعد.
على سبيل المثال، في قاعدة بيانات الوقت الفعلي، قد ترغب في تضمين وهو حقل يشير إلى دور معين لكل مستخدم. بعد ذلك، يمكن لقواعدك قراءة هذا الحقل واستخدامه لمنح إمكانية الوصول المستندة إلى الدور.
أثناء تحديد بنى البيانات والقواعد، ضع في اعتبارك الطريقة التي قواعد متسلسلة أو لا تتصاعد، اعتمادًا على منتجك. باستخدام قاعدة بيانات الوقت الفعلي، تعمل القواعد من أعلى إلى أسفل، مع تجاوز القواعد السطحية القواعد الأعمق. إذا تمنح قاعدة أذونات القراءة أو الكتابة في مسار معين، فإنها تمنح أيضًا الوصول إلى جميع العُقد الفرعية الموجودة أسفله. في المقابل، يمكن استخدام Cloud Firestore في Cloud Storage، لا تنطبق القواعد إلا على مستويات محدّدة من التدرّج الهرمي للبيانات كما تكتب قواعد صريحة للتحكم في الوصول إلى مستويات مختلفة.
الوصول إلى القواعد
لعرض القواعد الحالية، استخدِم إما واجهة سطر الأوامر في Firebase أو "وحدة تحكُّم Firebase". احرِص على تعديل القواعد بالطريقة نفسها باستمرار، لتجنب استبدال التحديثات عن طريق الخطأ. إذا لم تكن متأكدًا وما إذا كانت القواعد المحددة محليًا تعكس آخر التحديثات، سيجمع Firebase تعرض وحدة التحكّم دائمًا أحدث إصدار تم نشره من قواعد أمان Firebase.
للوصول إلى القواعد من وحدة تحكُّم Firebase، اختَر المشروع، ثم في لوحة التنقل اليمنى، انقر على قاعدة بيانات الوقت الفعلي. انقر على القواعد بعد الانتهاء في قاعدة البيانات أو حزمة التخزين الصحيحة.
للوصول إلى القواعد من واجهة سطر الأوامر في Firebase، انتقِل إلى ملف القواعد المذكور في ملف firebase.json.
كتابة القواعد الأساسية
أثناء تطوير تطبيقك وفهم القواعد، حاوِل تطبيق القواعد لمعالجة بعض حالات الاستخدام الأساسية بما في ذلك ما يلي:
- مالك المحتوى فقط: يمكنك حظر وصول المستخدم إلى المحتوى.
- وصول مختلط: يمكنك فرض قيود على وصول المستخدم للكتابة، مع السماح بالوصول للقراءة بشكل علني.
- الوصول المستند إلى السمات: يمكنك تقييد الوصول إلى مجموعة أو نوع من المستخدمين.
اختبار القواعد
في حال إعداد "قواعد أمان Firebase" في وحدة تحكُّم Firebase، يمكنك استخدام ساحة قواعد Firebase للتحقق بسرعة من السلوك. ومع ذلك، نقترح إجراء اختبار أكثر شمولاً باستخدام حزمة المحاكاة المحلية قبل نشر تغييرات في الإنتاج.
نشر القواعد
استخدام وحدة تحكُّم Firebase أو واجهة سطر الأوامر في Firebase لنشر القواعد إلى الإنتاج. اتبع الخطوات الموضحة في إدارة "قواعد أمان Firebase" ونشرها