בעזרת ניהול זהויות והרשאות גישה (IAM) תוכלו לתת גישה פרטנית למשאבים ספציפיים ב-Firebase וב-Google, ולמנוע גישה לא רצויה למשאבים אחרים. בעזרת IAM תוכלו לשמור על עקרון האבטחה של הרשאות מינימליות, וכך להעניק רק את הגישה הנחוצה למשאבים שלכם.
למידע מפורט על IAM, תוכלו לעיין במסמכי העזרה של IAM Google Cloud.
סקירה כללית של Firebase IAM
ב-Firebase יש אפשרויות נוספות של IAM שספציפיות לפרויקטים ב-Firebase ולחברים בפרויקט.
כשחבר בפרויקט מאומת מבקש לבצע פעולה ב-Firebase, IAM מחליט אם לחבר יש הרשאה לבצע את הפעולה המבוקשת במשאב. האם חבר הפרויקט יכול לבצע את הבקשה תלוי בתפקיד שהוקצה לו בפרויקט. כל תפקיד הוא אוסף של הרשאות, וכשמקצים תפקיד לחבר בפרויקט, מעניקים לו את כל ההרשאות של התפקיד הזה.
חברי הפרויקט
באמצעות IAM ב-Firebase, אתם מקצים תפקידים (ואת ההרשאות שמשויכות אליהם) לחברי הפרויקט. חברי הפרויקט יכולים להיות מהסוגים הבאים:
- חשבון Google
- חשבון שירות
- קבוצה ב-Google
תפקידים
ההרשאות מוענקות לחברי הפרויקט באמצעות תפקידים. תפקיד הוא אוסף של הרשאות. כשמקצים תפקיד לחבר בפרויקט, מעניקים לו את כל ההרשאות שהתפקיד מכיל.
מערכת IAM ב-Firebase תומכת בסוגי התפקידים הבאים:
תפקידים בסיסיים: תפקידי בעלים, עריכה וצפייה בסיסיים (לשעבר נקראו תפקידים "פרימיטיביים").
תפקידים מוגדרים מראש: תפקידים ספציפיים ל-Firebase שמאפשרים בקרת גישה פרטנית יותר מאשר התפקידים הבסיסיים. Firebase מציעה:
תפקידים ברמת Firebase: תפקידים שמעניקים גישת קריאה/כתיבה מלאה או גישת קריאה בלבד לכל מוצרי Firebase.
תפקידים בקטגוריית מוצרים: תפקידים שמעניקים גישת קריאה/כתיבה מלאה או גישת קריאה בלבד לקבוצות של מוצרים. הן מובנות סביב Google Analytics וקטגוריות מוצרים כלליות.
תפקידים ברמת המוצר: תפקידים שמעניקים גישת קריאה/כתיבה מלאה או גישת קריאה בלבד למוצרים ספציפיים של Firebase.
תפקידים בהתאמה אישית: תפקידים בהתאמה אישית מלאה שאתם יוצרים כדי להתאים קבוצת הרשאות לדרישות הספציפיות של הארגון שלכם.
ניהול חברי הפרויקט והתפקידים שלהם
הצגת חברי הפרויקט והתפקידים שלהם
בכרטיסייה משתמשים והרשאות של > הגדרות הפרויקט במסוף Firebase אפשר לראות את רוב חברי הפרויקט ואת התפקידים שלהם. חשוב לזכור:- במסוף Firebase מפורטים רק חברי הפרויקט שהוקצה להם תפקיד בסיסי (בעלים, עריכה, צפייה) או תפקיד מוגדר מראש ב-Firebase. חברי הפרויקט שמופיעים בכרטיסייה הזו הם חברי הפרויקט היחידים שיש להם גישה לפרויקט ב-Firebase במסוף Firebase.
- במסוף Firebase לא מופיעים חברי פרויקט שהם חשבונות שירות. אפשר לראות את חברי הפרויקט האלה בדף IAM במסוף Google Cloud.
הקצאת תפקיד לחבר בפרויקט
כדי לנהל את התפקידים שהוקצו לכל חבר בפרויקט, אתם צריכים להיות הבעלים של פרויקט Firebase (או שיוקצה לכם תפקיד עם ההרשאה resourcemanager.projects.setIamPolicy).
אלה המקומות שבהם אפשר להקצות ולנהל תפקידים:
- במסוף Firebase יש דרך פשוטה להקצות תפקידים לחברי הפרויקט בכרטיסייה משתמשים והרשאות של > הגדרות הפרויקט. במסוף Firebase, אפשר להקצות כל אחד מהתפקידים הבסיסיים (בעלים, עריכה, צפייה), את התפקידים אדמין/צפייה ב-Firebase או כל אחד מהתפקידים המוגדרים מראש ב-Firebase לפי קטגוריית מוצר.
- במסוף Google Cloud יש מגוון רחב של כלים להקצאת תפקידים לחברי הפרויקט בדף IAM. במסוף Cloud, אפשר גם ליצור ולנהל תפקידים בהתאמה אישית, וגם לתת לחשבונות שירות גישה לפרויקט.
שימו לב שבמסוף Google Cloud, חברי הפרויקט נקראים principals.
אם הבעלים של הפרויקט כבר לא יכול לבצע את המשימות של הבעלים (לדוגמה, אם האדם עזב את החברה), והפרויקט לא מנוהל דרך ארגון Google Cloud (ראו את הפסקה הבאה), אתם יכולים לפנות לתמיכה של Firebase ולבדוק איתם איך לבקש גישה לפרויקט Firebase.
שימו לב: אם פרויקט Firebase הוא חלק מGoogle Cloud ארגון, יכול להיות שלא יהיה לו בעלים. אם אתם לא מצליחים למצוא בעלים לפרויקט Firebase, פנו לאדם שמנהל את הארגון שלכם ב-Google Cloud כדי להקצות בעלים לפרויקט.