Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

כללי האבטחה של Firebase

השתמש בכללי האבטחה הגמישים והניתנים להרחבה של Firebase כדי לאבטח את הנתונים שלך ב- Cloud Firestore, בבסיס הנתונים של Firebase בזמן אמת ובאחסון בענן.

כללי האבטחה של Firebase עומדים בין הנתונים שלך לבין משתמשים זדוניים. אתה יכול לכתוב כללים פשוטים או מורכבים שמגנים על נתוני האפליקציה שלך עד לרמת המפורטות שהאפליקציה הספציפית שלך דורשת.

כללי האבטחה של Firebase ממנפים שפות תצורה גמישות להרחבה כדי להגדיר לאילו נתונים המשתמשים שלך יכולים לגשת למסד נתונים בזמן אמת, Cloud Firestore ואחסון ענן. כללי מסד הנתונים בזמן אמת של Firebase ממנפים את JSON בהגדרות הכללים, בעוד שכללי האבטחה של Cloud Firestore וכללי האבטחה של Firebase לאחסון ענן ממנפים שפה ייחודית הבנויה להכיל מבנים ספציפיים לכללים מורכבים יותר.

למידע נוסף על אופן הגדרת כללים עבור מוצרי Firebase הספציפיים שבהם אתה משתמש באפליקציה שלך, וכיצד התנהגות הכללים משתנה בין מוצרי Firebase.

יכולות מפתח

גְמִישׁוּת כתוב כללים מותאמים אישית ההגיוניים למבנה האפליקציה והתנהגותה. הכללים משתמשים בשפות המאפשרות לך למנף את הנתונים שלך כדי לאפשר גישה.
פירוט החוקים שלך יכולים להיות רחבים או צרים ככל שאתה צריך.
ביטחון עצמאי מכיוון שכללים מוגדרים מחוץ לאפליקציה שלך (במסוף Firebase או ב- Firebase CLI), הלקוחות אינם אחראים לאכיפת האבטחה, באגים אינם פוגעים בנתונים והנתונים שלך תמיד מוגנים.

איך הם עובדים?

כללי האבטחה של Firebase פועלים על ידי התאמת תבנית נגד נתיבי מסד נתונים ולאחר מכן החלת תנאים מותאמים אישית כדי לאפשר גישה לנתונים בנתיבים אלה. לכל הכללים של מוצרי Firebase יש רכיב תואם נתיבים והצהרה מותנית המאפשרת גישה לקריאה או כתיבה. עליך להגדיר כללים עבור כל מוצר Firebase בו אתה משתמש באפליקציה שלך.

עבור Cloud Firestore ואחסון ענן, כללים משתמשים בתחביר הבא:

service <<name>> {
  // Match the resource path.
  match <<path>> {
    // Allow the request if the following conditions are true.
    allow <<methods>> : if <<condition>>
  }
}

עבור מסד נתונים בזמן אמת, כללים מבוססי JSON משתמשים בתחביר הבא:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

הכללים חלים כפי OR הצהרות, לא AND הצהרות. כתוצאה מכך, אם מספר כללים תואמים נתיב, וכל אחד מהתנאים המתאימים מעניק גישה, הכללים מעניקים גישה לנתונים בנתיב זה. לכן, אם כלל רחב מעניק גישה לנתונים, לא תוכל להגביל אותו עם כלל ספציפי יותר. עם זאת, תוכל להימנע מבעיה זו על ידי הקפדה שהכללים שלך לא חופפים יותר מדי. כללי האבטחה של Firebase מסמנים חפיפה בנתיבים התואמים שלך כאזהרות מהדר.

כללי האבטחה של Firebase יכולים גם למנף את האימות להעניק הרשאות מבוססות משתמש, והתנאים שתגדיר יכולים להיות בסיסיים מאוד או מורכבים להפליא. למידע נוסף על כללי שפה ואת התנהגות לפני תחילת כתיבה חוקית.

נתיב יישום

שלב את SDKs המוצר הגדרת הענן Firestore , אחסון ענן , או מסד נתונים בזמן אמת עבור האפליקציה שלך.
כתוב את כללי האבטחה שלך ב- Firebase למידע נוסף על איך עבודת הכללים ו להגדיר כמה כללים בסיסיים
בדוק את כללי האבטחה שלך ב- Firebase השתמש במאמצי הנתונים של Realtime Database ו- Cloud Firestore כדי לבדוק את התנהגות האפליקציה שלך ולאמת את הכללים שלך לפני שתפרס אותם לייצור.
הפעל את כללי האבטחה שלך ב- Firebase השתמש במסוף Firebase או ב- Firebase CLI כדי לפרוס את הכללים שלך לייצור.

הצעדים הבאים