יצירת פרטי כניסה לגישה

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

בחירת פרטי הגישה שמתאימים לכם

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

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

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

פרטי כניסה של מפתח API

מפתח API הוא מחרוזת ארוכה שמכילה אותיות רישיות וקטנות, מספרים, קווים תחתונים ומקפים, למשל AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. שיטת האימות הזו משמשת לגישה אנונימית לנתונים שזמינים לציבור, כמו קבצים ב-Google Workspace ששותפו באמצעות הגדרת השיתוף 'כל מי שיש לו את הקישור באינטרנט'. פרטים נוספים מופיעים במאמר בנושא ניהול מפתחות API.

כך יוצרים מפתח API:

  1. במסוף Google Cloud, לוחצים על סמל התפריט > APIs & Services > Credentials.

    כניסה לדף Credentials

  2. לוחצים על Create credentials > API key.
  3. מפתח ה-API החדש מוצג.
    • לוחצים על סמל ההעתקה כדי להעתיק את מפתח ה-API לשימוש בקוד של האפליקציה. מפתח ה-API מופיע גם בקטע API Keys (מפתחות API) בפרטי הכניסה של הפרויקט.
    • כדי למנוע שימוש לא מורשה, מומלץ להגביל את המקומות שבהם אפשר להשתמש במפתח ה-API ואת ממשקי ה-API שאפשר להשתמש בו עבורם. פרטים נוספים זמינים במאמר בנושא הוספת הגבלות על ממשקי API.

פרטי כניסה של מזהה לקוח ב-OAuth

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

בוחרים את סוג האפליקציה כדי לקבל הוראות ספציפיות ליצירת מזהה לקוח OAuth:

אפליקציית אינטרנט

  1. במסוף Google Cloud, עוברים אל תפריט > Google Auth platform> Clients.

    מעבר אל "לקוחות"

  2. לוחצים על Create Client.
  3. לוחצים על Application type> Web application.
  4. בשדה Name, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. מוסיפים מזהי URI מורשים שקשורים לאפליקציה:
    • אפליקציות בצד הלקוח (JavaScript) – בקטע מקורות מורשים של JavaScript, לוחצים על הוספת URI. לאחר מכן, מזינים URI לשימוש בבקשות של הדפדפן. הפרמטר הזה מזהה את הדומיינים שמהם האפליקציה יכולה לשלוח בקשות API לשרת OAuth 2.0.
    • אפליקציות בצד השרת (Java,‏ Python ועוד) – בקטע מזהי URI מורשים להפניה אוטומטית, לוחצים על הוספת URI. לאחר מכן, מזינים URI של נקודת קצה שאליה שרת OAuth 2.0 יכול לשלוח תגובות.
  6. לוחצים על יצירה.

    פרטי הכניסה החדשים שנוצרו מופיעים בקטע מזהי לקוח ב-OAuth 2.0.

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

Android

  1. במסוף Google Cloud, עוברים אל תפריט > Google Auth platform> Clients.

    מעבר אל "לקוחות"

  2. לוחצים על Create Client.
  3. לוחצים על Application type> Android.
  4. בשדה Name, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. בשדה Package name (שם החבילה), מזינים את שם החבילה מקובץ AndroidManifest.xml.
  6. בשדה טביעת אצבע לאישור SHA-1, מזינים את טביעת האצבע לאישור SHA-1 שנוצרה.
  7. לוחצים על יצירה.

    פרטי הכניסה החדשים שנוצרו מופיעים בקטע OAuth 2.0 Client IDs.

iOS

  1. במסוף Google Cloud, עוברים אל תפריט > Google Auth platform> Clients.

    מעבר אל "לקוחות"

  2. לוחצים על Create Client.
  3. לוחצים על Application type> iOS.
  4. בשדה Name, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. בשדה Bundle ID (מזהה החבילה), מזינים את מזהה החבילה כפי שרשום בקובץ Info.plist של האפליקציה.
  6. אופציונלי: אם האפליקציה מופיעה ב-App Store של אפל, מזינים את מזהה האפליקציה ב-App Store.
  7. אופציונלי: בשדה Team ID (מזהה צוות), מזינים את המחרוזת הייחודית בת 10 התווים שנוצרת על ידי אפל ומוקצית לצוות שלכם.
  8. לוחצים על יצירה.

    פרטי הכניסה החדשים שנוצרו מופיעים בקטע OAuth 2.0 Client IDs.

תוסף ל-Chrome

  1. במסוף Google Cloud, עוברים אל תפריט > Google Auth platform> Clients.

    מעבר אל "לקוחות"

  2. לוחצים על Create Client.
  3. לוחצים על Application type> Chrome Extension.
  4. בשדה Name, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. בשדה Item ID (מזהה הפריט), מזינים את מחרוזת המזהה הייחודית של האפליקציה, שמורכבת מ-32 תווים. אפשר למצוא את ערך המזהה הזה בכתובת ה-URL של האפליקציה בחנות האינטרנט של Chrome ובמרכז השליטה למפתחים בחנות האינטרנט של Chrome.
  6. לוחצים על יצירה.

    פרטי הכניסה החדשים שנוצרו מופיעים בקטע OAuth 2.0 Client IDs.

אפליקציה לשולחן העבודה

  1. במסוף Google Cloud, עוברים אל תפריט > Google Auth platform> Clients.

    מעבר אל "לקוחות"

  2. לוחצים על Create Client.
  3. לוחצים על Application type> Desktop app.
  4. בשדה Name, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. לוחצים על יצירה.

    פרטי הכניסה החדשים שנוצרו מופיעים בקטע OAuth 2.0 Client IDs.

טלוויזיות והתקני קלט עם הגבלות

  1. במסוף Google Cloud, עוברים אל תפריט > Google Auth platform> Clients.

    מעבר אל "לקוחות"

  2. לוחצים על Create Client.
  3. לוחצים על Application type> TVs and Limited Input devices.
  4. בשדה Name, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. לוחצים על יצירה.

    פרטי הכניסה החדשים שנוצרו מופיעים בקטע OAuth 2.0 Client IDs.

פרטי כניסה לחשבון שירות

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

שימו לב: תפקידים בניהול זהויות והרשאות גישה (IAM) שהוגדרו במסוף Google Cloud לא מעניקים גישה לנכסי Google Workspace (כמו Sheets או Gmail). כדי לתת לחשבון שירות גישה למשאבים של Google Workspace, אפשר להשתמש באפשרויות הבאות:

אם האפליקציה צריכה… איפה מגדירים את זה...
גישה לקבצים ספציפיים (כמו גיליון אלקטרוני של Google) שיתוף ישיר של קובץ או תיקייה עם כתובת האימייל של חשבון השירות
ביצוע פעולות אדמיניסטרציה בדומיין (כמו יצירת משתמשי Google Workspace) הקצאת תפקידי אדמין ישירות לחשבון השירות
גישה לנתוני משתמשים בדומיין (למשל, קריאת אירועים ביומן Google או ב-Gmail של משתמשים) אישור חשבון השירות לשימוש בהענקת גישה ברמת הדומיין

יצירה של חשבון שירות

אפשר ליצור חשבון שירות באמצעות מסוף Google Cloud או כלי שורת הפקודה gcloud.

Google Cloud Console

  1. במסוף Google Cloud, לוחצים על סמל התפריט > IAM & Admin‏ (IAM ומנהל מערכת) > Service Accounts‏ (חשבונות שירות).

    לדף Service accounts

    שאר השלבים יופיעו במסוף Google Cloud.

  2. בוחרים פרויקט ב-Google Cloud.
  3. לוחצים על יצירת חשבון שירות.
  4. מזינים שם לחשבון השירות שיופיע במסוף Google Cloud.
  5. אם לא רוצים להגדיר את אמצעי בקרת הגישה עכשיו, לוחצים על Done כדי לסיים את יצירת חשבון השירות. כדי להגדיר אמצעי בקרת גישה עכשיו, לוחצים על Create and continue וממשיכים לשלב הבא.
  6. אופציונלי: מקצים תפקידים לחשבון השירות כדי לתת גישה למשאבים בפרויקט Google Cloud בנוסף למשאבים ב-Google Workspace. מידע נוסף על ניהול הגישה לפרויקטים, לתיקיות ולארגונים
  7. לוחצים על המשך.
  8. אופציונלי: מזינים משתמשים או קבוצות שיכולים לנהל את חשבון השירות הזה ולבצע בו פעולות. פרטים נוספים מופיעים במאמר התחזות לחשבון שירות.
  9. לוחצים על Done כדי לסיים ליצור את חשבון השירות.

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

‫CLI של gcloud

  1. יוצרים את חשבון השירות:
    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
      --display-name="SERVICE_ACCOUNT_NAME"
  2. אופציונלי: מקצים תפקידים לחשבון השירות כדי לתת גישה למשאבים בפרויקט Google Cloud בנוסף למשאבים ב-Google Workspace. מידע נוסף על ניהול הגישה לפרויקטים, לתיקיות ולארגונים

גישה ישירה לקבצים ב-Google Workspace באמצעות חשבון שירות

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

כדי להעניק גישה:

  1. מעתיקים את כתובת האימייל של חשבון השירות. לדוגמה, my-service-account@my-project.iam.gserviceaccount.com.
  2. פותחים את מסמך Sheets או את תיקיית Drive שרוצים לגשת אליהם.
  3. לוחצים על שיתוף.
  4. מוסיפים את כתובת האימייל של חשבון השירות ומקצים את רמת הגישה המתאימה (לדוגמה, עריכה או צפייה).
  5. מבטלים את הסימון של שליחת הודעה לאנשים (כי לחשבונות שירות אין תיבת דואר נכנס, ולכן הם לא יקבלו את ההזמנה באימייל, אבל ההרשאה עדיין תינתן).
  6. לוחצים על שיתוף.

יצירת מפתח של חשבון שירות

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

כדי ליצור מפתח לחשבון שירות:

  1. במסוף Google Cloud, לוחצים על סמל התפריט > IAM & Admin > Service Accounts (חשבונות שירות).

    לדף Service accounts

    שאר השלבים יופיעו במסוף Google Cloud.

  2. בוחרים פרויקט ב-Google Cloud.
  3. לוחצים על כתובת האימייל של חשבון השירות שעבורו רוצים ליצור מפתח.
  4. לוחצים על הכרטיסייה Keys.
  5. לוחצים על התפריט הנפתח Add key ובוחרים באפשרות Create new key.
  6. בוחרים באפשרות JSON בתור Key type ולוחצים על Create.

    זוג המפתחות הציבורי/פרטי החדש נוצר ומורד למחשב שלכם כקובץ מפתח של חשבון שירות. שומרים את קובץ ה-JSON שהורדתם בשם credentials.json בספריית העבודה. הקובץ הזה הוא העותק היחיד של המפתח. אחרי שמורידים את קובץ המפתח, אי אפשר להוריד אותו שוב. מידע על אחסון מאובטח של המפתח זמין במאמר שיטות מומלצות לניהול מפתחות של חשבונות שירות.

הקצאת תפקיד אדמין ב-Google Workspace לחשבון שירות

אפשר להקצות לחשבון שירות כל תפקיד מוגדר מראש או תפקיד בהתאמה אישית ב-Google Workspace, חוץ מהתפקיד סופר-אדמין.

  1. במסוף Google Admin, נכנסים לתפריט > חשבון > תפקידי אדמין.

    מעבר אל תפקידי אדמין

    כדי לבצע את המשימה הזו אתם צריכים להיות מחוברים לחשבון בתור סופר-אדמינים.

    שאר השלבים יופיעו במסוף Google Admin.

  2. מצביעים על התפקיד שרוצים להקצות, לוחצים על התפריט הנפתח Actions ובוחרים באפשרות הקצאת אדמין.

  3. לוחצים על בחירת חשבונות שירות לתפקיד.

  4. מזינים את כתובת האימייל של חשבון השירות.

  5. לוחצים על הוספה > הקצאת תפקיד.

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

משתמשים בהענקת הרשאה ברמת הדומיין כשהאפליקציה צריכה לגשת לנתוני Google Workspace בשם כמה משתמשים בארגון (למשל, שליחת אימיילים באמצעות Gmail API) בלי לבקש הסכמה מכל משתמש בנפרד. כדי לקרוא ל-API בשם משתמשים בארגון Google Workspace, צריך להעניק לחשבון השירות הרשאות גישה ברמת הדומיין במסוף Google Admin באמצעות חשבון סופר-אדמין. מידע נוסף מופיע במאמר בנושא הענקת הרשאה ברמת הדומיין לחשבון השירות.

כדי להגדיר הענקת הרשאות ברמת הדומיין לחשבון שירות:

  1. במסוף Google Cloud, לוחצים על סמל התפריט > IAM & Admin > Service Accounts (חשבונות שירות).

    לדף Service accounts

  2. בוחרים פרויקט ב-Google Cloud.
  3. לוחצים על כתובת האימייל של חשבון השירות שרוצים להגדיר לו הענקת גישה ברמת הדומיין.
  4. לוחצים על הצגת הגדרות מתקדמות.
  5. בקטע 'הענקת גישה ברמת הדומיין', מחפשים את 'מזהה הלקוח' של חשבון השירות.
  6. לוחצים על סמל ההעתקה כדי להעתיק את הערך של מזהה הלקוח ללוח.
  7. אם יש לכם גישת סופר-אדמין לחשבון Google Workspace הרלוונטי, לוחצים על View Google Workspace Admin Console (צפייה במסוף Google Admin), נכנסים באמצעות חשבון המשתמש שלכם כסופר-אדמין וממשיכים לבצע את השלבים האלה.

    אם אין לכם גישת סופר-אדמין לחשבון Google Workspace הרלוונטי, פנו לסופר-אדמין בחשבון. שולחים להם את מזהה הלקוח של חשבון השירות ואת רשימת היקפי ה-OAuth שנדרשים לאפליקציה, כדי שהם יוכלו לבצע את השלבים הבאים במסוף Google Admin.

    1. במסוף Google Admin, נכנסים לתפריט > אבטחה > שליטה בגישה ובנתונים > אמצעי בקרה לממשקי API.

      לאמצעי הבקרה לממשקי API

    2. לוחצים על ניהול של הענקת גישה ברמת הדומיין.
    3. לוחצים על הוספת חדש.
    4. בשדה Client ID (מזהה הלקוח), מדביקים את מזהה הלקוח שהעתקתם קודם.
    5. בשדה OAuth Scopes (היקפי הרשאות OAuth), מזינים רשימה של היקפי ההרשאות שהאפליקציה דורשת, מופרדים באמצעות פסיקים. זו אותה קבוצת היקפי הרשאות שהגדרתם כשקבעתם את מסך ההסכמה ל-OAuth.
    6. לוחצים על Authorize.

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

השלב הבא

הכל מוכן לפיתוח ב-Google Workspace! כדאי לעיין ברשימת מוצרי הפיתוח של Google Workspace ובמאמר בנושא איך למצוא עזרה.