Skip to main content
דף זה הוא חלק ממיומנות של סוכן קידוד AI ונכתב לסוכנים, לא לבני אדם. לתיעוד Base44 הקריא לבני אדם, ראה את תיעוד המפתחים.

RLS Examples

תבניות מעשיות של Row-Level Security לסוגי אפליקציות נפוצים. חשוב: Base44 RLS תומך ב:
  • אופרטורים לוגיים: $or, $and, $nor לשילוב תנאים
  • אופרטורי שדה (עבור שדות data.*): $in, $nin, $ne, $all
  • user_condition: Equality בלבד (ללא אופרטורים)

תוכן


Simple Patterns (JSON Schema)

תבניות אלה עובדות עם פורמט RLS של סכמת JSON.

Todo App - גישה לבעלים בלבד

משתמשים רואים ומנהלים רק את המשימות שלהם.

טופס צור קשר - יצירה ציבורית, קריאה למנהלים בלבד

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

פרופיל משתמש - ניהול עצמי

משתמשים יכולים לגשת רק לפרופיל שלהם.

נתוני מחלקה - גישת מחלקה זהה

משתמשים יכולים לראות רק רשומות מהמחלקה שלהם.

Subscription - מנוהל על ידי מנהל, קריא למשתמש דרך שדה email

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

נתונים פרטיים - לבעלים בלבד

קריאה ציבורית, כתיבה מאומתת

כל אחד יכול לקרוא, רק משתמשים מחוברים יכולים ליצור/לערוך את הרשומות שלהם.

שימוש באופרטורים

אופרטורים לוגיים

שלב מספר תנאים באמצעות $or, $and, או $nor: גישת Owner OR Admin:
מספר תפקידים עם $or:

אופרטורי שדה לשדות data.*

השתמש ב-$in, $nin, $ne, $all להשוואת שדות נתוני entity: גישה מבוססת תגים ($in):
החרג סטטוסים ספציפיים ($nin):
לא שווה ($ne):
כל התגים חייבים להתאים ($all):

שילוב אופרטורים לוגיים ואופרטורי שדה


דוגמאות Field-Level Security

שלוט בגישה לשדות ספציפיים בתוך entity.

שדה משכורת רגיש

שדות פנימיים למנהלים בלבד


Complex Patterns (Dashboard UI or Backend)

תבניות מסוימות עדיין עשויות לדרוש את ממשק המשתמש של Dashboard או פונקציות backend.

יחסים דו-כיווניים (למשל, חברויות, התאמות)

דרישה: כל אחד מהצדדים ביחסים צריך גישה. כעת אפשרי עם $or:
פתרונות חלופיים:
  1. עיצוב entity מחדש: אחסן שתי רשומות ליחסים (אחת לכל צד)
  2. פונקציית backend: שאילתה עם לוגיקה מותאמת

לוגיקה עסקית מורכבת

דרישה: גישה תלויה במספר שדות entity עם תנאים מורכבים. מגבלת JSON Schema: בעוד שאופרטורים עוזרים, לוגיקה עסקית מורכבת מאוד עדיין עשויה להיות קשה להביע. אפשרויות פתרון:
  1. פונקציית backend: ישם לוגיקת גישה מותאמת
  2. שילוב כללים פשוטים יותר: פרק כללים מורכבים לכללים פשוטים יותר ברמת entity וברמת שדה

שיטות עבודה מומלצות

אסטרטגיית אבטחה

השתמש בשילוב של RLS ברמת entity ואבטחה ברמת שדה:

מתי להשתמש בכל גישה

תבניות תפקידים נפוצות

סיכום אופרטורים נתמכים

סיכום מגבלות

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