אימות משתמשים

אם האפליקציה שלכם מטפלת בבקשות ממשתמשים, מומלץ להגביל את הגישה רק למשתמשים המורשים. בדרך כלל למשתמשים אין הרשאת IAM בפרויקט Google Cloudאו בשירות Cloud Run.

אנחנו מבחינים בין שני סוגים של משתמשים:

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

אימות משתמשי קצה

אם רוצים לאמת משתמשים באמצעות אימייל/סיסמה, מספר טלפון, ספקי רשתות חברתיות כמו Google, ‏ Facebook או GitHub, או מנגנון אימות בהתאמה אישית, אפשר להשתמש ב-Identity Platform. השימוש ב-אימות ב-Firebase דומה לשימוש ב-Identity Platform.

אתם צריכים אפליקציית אינטרנט או אפליקציה לנייד ציבוריות שמטפלות בתהליך הכניסה ואז מבצעות קריאות מאומתות ל-API לשירות Cloud Run. אפשר לארח את אפליקציית האינטרנט הציבורית הזו בשירות ציבורי של Cloud Run.

מדריך מלא לשימוש ב-Identity Platform לאימות משתמשי קצה זמין במאמר אימות משתמשי קצה ב-Cloud Run.

  1. מוסיפים קוד לשירות Cloud Run כדי לאמת אסימונים מזהים.

  2. פריסת שירות Cloud Run באופן ציבורי.

  3. הגדרת Identity Platform בפרויקט

  4. מבצעים את הפעולות הבאות באתר או באפליקציה לנייד:

    1. משתמשים בספריית הלקוח המתאימה של Firebase Auth כדי לקבל טוקן מזהה:
    2. כוללים את האסימון המזהה בכותרת Authorization: Bearer ID_TOKEN בבקשה לשירות.

אפשר להשתמש באחת מהשיטות הבאות כדי לגשת לפרטי פרופיל המשתמש:

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

אימות משתמשים פנימיים

לאימות משתמשים פנימיים, משתמשים בשרת proxy לאימות זהויות (IAP).

כדי להגדיר שרת proxy לאימות זהויות (IAP) בשביל שירות Cloud Run, ראו הגדרת שרת proxy לאימות זהויות (IAP) בשביל Cloud Run.

לגבי בקשות שיתוף משאבים בין מקורות (CORS) עם בדיקה מקדימה בשירותים מאומתים של Cloud Run, מומלץ להגדיר IAP ל-Cloud Run במקום להשתמש באימות IAM. כך תוכלו להגדיר את IAP כך שיאפשר בקשות OPTIONS לא מאומתות, ובכך לעמוד בדרישות של בדיקת ה-preflight של הדפדפן, וגם לוודא שכל הבקשות האחרות מאומתות.

גם אם IAP מאפשר את בקשת OPTIONS, קוד האפליקציה שפורסים ב-Cloud Run עדיין צריך לטפל בבקשת קדם-ההפעלה של CORS ובבקשה בפועל שמתבצעת לאחר מכן, על ידי שליחת כותרות ה-CORS המתאימות.

במאמר אימות פרוגרמטי מוסבר איך לאמת משתמשים או חשבונות שירות בשירות Cloud Run שמאובטח באמצעות שרת proxy לאימות זהויות (IAP) באמצעות OAuth 2.0.