Save the date - Google I/O returns May 18-20. Register to get the most out of the digital experience: Build your schedule, reserve space, participate in Q&As, earn Google Developer profile badges, and more. Register now
דף זה תורגם על ידי Cloud Translation API.
Switch to English

הבן את כללי האבטחה של Firebase לאחסון בענן

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

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

מסד הנתונים של Firebase Realtime כולל תכונה דומה, הנקראת Firebase Realtime Database Database

אימות

הידיעה מיהם המשתמשים שלך היא חלק חשוב בבניית יישום, ואימות Firebase מספק פתרון קל לשימוש ומאובטח, בצד הלקוח בלבד לאימות. כללי האבטחה של Firebase לאחסון ענן קשורים לאימות Firebase לאבטחה מבוססת משתמשים. כאשר משתמש מאומת באמצעות אימות Firebase, משתנה request.auth בכללי אבטחת אחסון בענן הופך לאובייקט המכיל את המזהה הייחודי של המשתמש ( request.auth.uid ) ואת כל פרטי המשתמש האחרים באסימון ( request.auth.token ) . כאשר המשתמש אינו מאומת, request.auth הוא null . זה מאפשר לך לשלוט באופן מאובטח בגישה לנתונים על בסיס משתמש. תוכל ללמוד עוד בקטע אימות .

הרשאה

זיהוי המשתמש שלך הוא רק חלק מהאבטחה. ברגע שאתה יודע מי הם, אתה צריך דרך לשלוט בגישה שלהם לקבצים ב- Cloud Storage.

אחסון בענן מאפשר לך לציין כל קובץ ולפי כללי הרשאה לנתיב החיים בשרתים שלנו ולקבוע גישה לקבצים באפליקציה שלך. לדוגמה, כללי האבטחה המוגדרים כברירת מחדל של Cloud Storage דורשים אימות Firebase על מנת לבצע פעולות read או write בכל הקבצים:

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth != null;
    }
  }
}

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

אימות מידע

כללי אבטחת Firebase עבור אחסון ענן יכולים לשמש גם עבור אימות נתונים, לרבות אימות שם קובץ ונתיב וכן נכסי metadata קבצים כגון contentType ואת size .

service firebase.storage {
  match /b/{bucket}/o {
    match /images/{imageId} {
      // Only allow uploads of any image file that's less than 5MB
      allow write: if request.resource.size < 5 * 1024 * 1024
                   && request.resource.contentType.matches('image/.*');
    }
  }
}

הצעדים הבאים