אחסון הגדרות פרטיות עם Firebase

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

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

הגדר הגדרות פרטיות

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

יצירת ממשק משתמש להגדרות פרטיות

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

הבן את הנתונים שאתה אוסף

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

עצב את ממשק המשתמש שלך כדי לעזור למשתמשים

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

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

לחצן שלח מושבת עד שהמשתמש מסכים למדיניות הפרטיות לחצן שלח מושבת עד שהמשתמש מסכים למדיניות הפרטיות

אחסון הגדרות פרטיות

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

גישה נפוצה אחת היא להשתמש במזהה כמפתח לאחסון העדפות במאגר הנתונים שבו אתה משתמש באפליקציה שלך. לדוגמה, תוכל להשתמש במזהי Firebase Auth כמפתח במופע של Realtime Database או להשתמש במזהה Firebase Instance כדי לארגן אוספים של מסמכי Firestore.

דוגמה: אחסון העדפות משתמש עם Auth UIDs ומסד נתונים בזמן אמת

שקול אפליקציית מדיה חברתית שמשתמשת ב-Firebase Auth UID וב-Firebase Realtime Database כדי לאחסן את העדפות המשתמש.

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

"privacy": {
  "$uid": {
    ".write": "auth.uid === $uid",
    ".read": "auth.uid === $uid",
    "data_processing": {
      ".validate": "newData.isBoolean()"
    },
    "content": {
      ".validate": "newData.isBoolean()"
    },
    "social": {
      ".validate": "newData.isBoolean()"
    },
    "$other": {
      ".validate": "false"
    }
  }
}

עדכן את האפליקציה שלך לשימוש בהגדרות הפרטיות

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

עקוב אחר שינויים בהגדרות הפרטיות

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

ה הקישור "הגדרות פרטיות" מעלה את תיבת הדו-שיח של ההגדרות כדי לאפשר למשתמשים לעדכן את ההגדרות שלהם

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

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

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

match /audit_log/{uid} {
   allow create: if uid = request.auth.uid;
   allow update: if false;
   allow delete: if false;
 }

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

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

הגדר הגדרות פרטיות

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

יצירת ממשק משתמש להגדרות פרטיות

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

הבן את הנתונים שאתה אוסף

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

עצב את ממשק המשתמש שלך כדי לעזור למשתמשים

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

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

לחצן שלח מושבת עד שהמשתמש מסכים למדיניות הפרטיות לחצן שלח מושבת עד שהמשתמש מסכים למדיניות הפרטיות

אחסון הגדרות פרטיות

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

גישה נפוצה אחת היא להשתמש במזהה כמפתח לאחסון העדפות במאגר הנתונים שבו אתה משתמש באפליקציה שלך. לדוגמה, תוכל להשתמש במזהי Firebase Auth כמפתח במופע של Realtime Database או להשתמש במזהה Firebase Instance כדי לארגן אוספים של מסמכי Firestore.

דוגמה: אחסון העדפות משתמש עם Auth UIDs ומסד נתונים בזמן אמת

שקול אפליקציית מדיה חברתית שמשתמשת ב-Firebase Auth UID וב-Firebase Realtime Database כדי לאחסן את העדפות המשתמש.

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

"privacy": {
  "$uid": {
    ".write": "auth.uid === $uid",
    ".read": "auth.uid === $uid",
    "data_processing": {
      ".validate": "newData.isBoolean()"
    },
    "content": {
      ".validate": "newData.isBoolean()"
    },
    "social": {
      ".validate": "newData.isBoolean()"
    },
    "$other": {
      ".validate": "false"
    }
  }
}

עדכן את האפליקציה שלך לשימוש בהגדרות הפרטיות

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

עקוב אחר שינויים בהגדרות הפרטיות

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

ה הקישור "הגדרות פרטיות" מעלה את תיבת הדו-שיח של ההגדרות כדי לאפשר למשתמשים לעדכן את ההגדרות שלהם

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

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

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

match /audit_log/{uid} {
   allow create: if uid = request.auth.uid;
   allow update: if false;
   allow delete: if false;
 }

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