التحقق بسرعة من قواعد أمان Firebase

لاختبار قواعد أمان Firebase المحدثة بسرعة في وحدة تحكم Firebase، استخدم ساحة لعب القواعد.

يعد تطبيق Rules Playground أداة ملائمة يمكنك استخدامها أثناء استكشاف سلوكيات جديدة أو التحقق بسرعة من صحة القواعد أثناء كتابتها. يعرض رسالة تؤكد أنه تم السماح بالوصول أو رفضه وفقًا للمعلمات التي قمت بتعيينها للمحاكاة.

استخدم ملعب القواعد

  1. افتح وحدة تحكم Firebase وحدد مشروعك.
  2. بعد ذلك، من شريط التنقل الخاص بالمنتج، قم بأحد الإجراءات التالية:
    • حدد Realtime Database أو Cloud Firestore أو Storage ، حسب الاقتضاء، ثم انقر فوق "القواعد" للانتقال إلى محرر القواعد.
  3. بمجرد إجراء تعديلاتك، انقر فوق "ملعب القواعد" من المحرر.
  4. في إعدادات Rules Playground ، حدد الخيارات الخاصة باختبارك، بما في ذلك:
    • اختبار القراءة أو الكتابة.
    • موقع محدد في قاعدة البيانات الخاصة بك أو حاوية التخزين، كمسار.
    • نوع المصادقة - مستخدم مجهول غير مصادق عليه، أو معرف مستخدم محدد.
    • البيانات الخاصة بالمستند والتي تشير قواعدك إليها على وجه التحديد (على سبيل المثال، إذا كانت قواعدك تتطلب وجود حقل معين قبل السماح بالكتابة).
  5. انقر فوق "تشغيل" وابحث عن النتائج في الشعار الموجود أعلى المحرر.

نموذج لسيناريو ساحة اللعب للقواعد

اختبر سلوك "ملعب القواعد" باستخدام السيناريو النموذجي والقواعد الأساسية التالية.

سحابة فايرستور

service cloud.firestore {
  match /databases/{database}/documents {
    // Allow only authenticated content owners access
    match /some_collection/{document} {
      allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid
      }
    }
  }

قاعدة بيانات الوقت الحقيقي

 // These rules grant access to a node matching the authenticated
 // user's ID from the Firebase auth token
 {
   "rules": {
     "users": {
       "$uid": {
         ".read": "$uid === auth.uid",
         ".write": "$uid === auth.uid"
       }
     }
   }
 }
 

سحابة التخزين

// Grants a user access to a node matching their user ID
service firebase.storage {
  match /b/{bucket}/o {
    // Files look like: "user/<UID>/path/to/file.txt"
    match /user/{userId}/{allPaths=**} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
  }
}
  • في محرر القواعد، أضف القاعدة المذكورة أعلاه.

  • حدد الحصول على من القائمة المنسدلة لنوع المحاكاة وأدخل مسارًا صالحًا في حقل الموقع .

  • قم بالتبديل إلى المصادقة وحدد نوع المصادقة من القائمة المنسدلة للموفر .

  • أدخل تفاصيل معرف المستخدم وانقر فوق "تشغيل" .

تظهر نتائج المحاكاة في أعلى المحرر. اعتمادًا على تفاصيل معرف المستخدم الذي أدخلته، يجب أن تشاهد شعارًا يؤكد أنه تم السماح بالقراءة بنجاح أو رفضها.