אימות והרשאה הם מנגנונים שמשמשים לאימות זהות גישה למשאבים, בהתאמה. במסמך הזה מתוארים תהליך האימות פועלות למתן הרשאה לאפליקציות ל-Chat ולבקשות API ל-Chat.
סקירה כללית על התהליך
בתרשים הבא מוצגים שלבי האימות הכלליים הרשאה ל-Google Chat:
להגדיר פרויקט ב-Google Cloud, להפעיל את Chat API ולהגדיר אפליקציית Chat: במהלך הפיתוח, אתם יוצרים פרויקט ב-Google Cloud. בפרויקט ב-Google Cloud מפעילים את Chat API, להגדיר את אפליקציית Chat ולהגדיר אימות. מידע נוסף זמין במאמר הבא: פיתוח ב-Google Workspace וליצור אפליקציה ל-Chat.
Call Chat API: כשהאפליקציה שולחת קריאה Chat API, הוא שולח פרטי כניסה לאימות Chat API. אם המיקום האפליקציה מבצעת אימות באמצעות חשבון שירות, פרטי הכניסה נשלחים כ- חלק מקוד האפליקציה. אם באפליקציה נדרשת קריאה ל-Chat API באמצעות אימות של משתמש שעדיין לא הוענק, היא תשלח המשתמש צריך להיכנס.
בקשת משאבים: האפליקציה מבקשת גישה באמצעות היקפי הרשאות שתציינו במהלך הגדרת האימות.
לבקש הסכמה: אם האפליקציה שלכם מבצעת אימות כמשתמש, Google מציגה מסך הסכמה ל-OAuth כדי שהמשתמשים יוכלו להחליט אם לאשר את האפליקציה גישה לנתונים המבוקשים. אימות באמצעות חשבון שירות לא נדרשות הסכמה מהמשתמשים.
שליחת בקשה שאושרה למשאבים: אם המשתמש מסכים ל היקפי ההרשאות, ה-App Bundle כולל את פרטי הכניסה ואת פרטי הכניסה שאושרו על ידי המשתמשים את היקפים לבקשה. הבקשה נשלחת לשרת ההרשאות של Google כדי לקבל אסימון גישה.
Google מחזירה אסימון גישה: אסימון הגישה מכיל רשימה של היקפים שהוקצו להם. אם רשימת ההיקפים שמוחזרת מגבילה יותר את היקפי ההרשאות הנדרשים, האפליקציה שלך משביתה את כל התכונות שמוגבלות על ידי האסימון.
גישה למשאבים המבוקשים: האפליקציה משתמשת באסימון הגישה מ-Google כדי להפעיל את Chat API ולגשת למשאבי Chat API.
קבלת אסימון רענון (אופציונלי): אם האפליקציה חייבת לגשת אחרי משך החיים של אסימון גישה יחיד, Google Chat API יכול לקבל אסימון הרענון. מידע נוסף זמין במאמר הבא: שימוש ב-OAuth 2.0 כדי לגשת ל-Google APIs.
מבקשים משאבים נוספים: אם האפליקציה צריכה עוד הרשאות גישה, המשתמשים יתבקשו לעשות זאת כדי להעניק היקפים חדשים, וכתוצאה מכך נוצרת בקשה חדשה לקבלת אסימון גישה (שלבים 3-6).
מתי צריך לבצע אימות באפליקציות ל-Chat
אפליקציות צ'אט יכולות לשלוח הודעות בתגובה לאינטראקציה של משתמשים, או באופן אסינכרוני. הם יכולים גם לבצע משימות בשמו של משתמש, כמו יצירת מרחב ב-Chat או הצגת רשימה של אנשים מרחב ב-Chat.
אפליקציות ל-Chat לא דורשות אימות כדי להגיב לאינטראקציה של המשתמשים, אלא אם אפליקציית Chat להשתמש ב-Chat API או ב-Google API אחר בזמן בתהליך עיבוד תשובה.
כדי לשלוח הודעות אסינכרוניות או לבצע משימות בשמו של משתמש, אפליקציות צ'אט שולחות בקשות RESTful Chat API, שמחייבים אימות והרשאה.
התגובות לאינטראקציות של משתמשים לא מחייבות אימות
אפליקציות ל-Google Chat לא צריכות לעבור אימות כמשתמש או אפליקציית Chat שצריך לקבל ולהשיב אליה באופן סינכרוני אירועי אינטראקציה.
אפליקציות של Google Chat מקבלות אירועי אינטראקציה בכל פעם שמשתמש יוצר אינטראקציה, או הפעלה של אפליקציית Chat, כולל:
- משתמש שולח הודעה לאפליקציית Chat.
- משתמש מוסיף אזכור ( @mention) של אפליקציית Chat.
- משתמש מפעיל את אחת מהאפליקציות של Chat פקודות דרך שורת הפקודות.
התרשים הבא מציג רצף בקשה-תגובה בין משתמש ואפליקציית Chat:
- המשתמש שולח הודעה לאפליקציית Chat ב- Google Chat.
- ההודעה תועבר מ-Google Chat לאפליקציה.
- האפליקציה מקבלת את ההודעה, מעבדת אותה ומחזירה תשובה Google Chat.
- Google Chat מעבד את התשובה של המשתמש או במרחב משותף.
הרצף הזה חוזר על עצמו בכל אינטראקציה עם אפליקציית Chat אירוע.
הודעות אסינכרוניות מחייבות אימות
הודעות אסינכרוניות מתרחשות כשאפליקציית Chat יוצרת בקשה ל Chat API, שדורש אימות והרשאה.
קריאה ל-Chat API מאפשרת לאפליקציות Chat לפרסם הודעות להיכנס ל-Google Chat או להשלים משימות ולגשת לנתונים בשמו של משתמש. עבור לדוגמה, אחרי זיהוי הפסקה זמנית בשירות לשרת, אפליקציית Chat יכולה להתקשר Chat API אל:
- ליצור מרחב משותף ב-Chat שנועד לבדוק ולתקן את הבעיה הפסקה זמנית בשירות.
- להוסיף אנשים למרחב המשותף ב-Chat.
- אפשר לפרסם הודעה במרחב ב-Chat כדי לספק פרטים על הפסקה זמנית בשירות.
בתרשים הבא מוצג רצף הודעות אסינכרוני בין אפליקציית Chat ומרחב משותף ב-Chat:
- אפליקציית Chat יוצרת הודעה באמצעות קריאה
Chat API באמצעות
spaces.messages.create
method, והוא כולל את פרטי הכניסה של המשתמש בבקשת ה-HTTP. - אפליקציית Google Chat מאמתת את אפליקציית Chat באמצעות של חשבון שירות או של פרטי כניסה של משתמש.
- המערכת של Google Chat מעבדת את ההודעה מהאפליקציה ל-Chat שצוין המרחב המשותף.
היקפי ההרשאות של Chat API
הגדרת מסך ההסכמה של OAuth ובחירת היקפים כדי להגדיר איזה מידע יוצג למשתמשים ולבודקי אפליקציות, ולרשום את האפליקציה כדי שאפשר יהיה לפרסם אותה מאוחר יותר.
כדי להגדיר את רמת הגישה שמוענקת לאפליקציה שלך, עליך לזהות להצהיר על היקפי ההרשאות. היקף ההרשאה הוא URI של OAuth 2.0 מחרוזת שמכילה את השם של אפליקציית Google Workspace ואת סוג הנתונים הרשאות הגישה ורמת הגישה.
היקפים לא רגישים
קוד היקף ההרשאות | תיאור |
---|---|
https://www.googleapis.com/auth/chat.bot
|
ההיקף ההרשאה הזו מאפשרת לאפליקציות Chat לראות את הצ'אטים ולשלוח הודעות. נותן גישה לכל התכונות שזמינות לאפליקציות Chat. |
היקפים רגישים
קוד היקף ההרשאות | תיאור |
---|---|
https://www.googleapis.com/auth/chat.spaces
|
ליצור שיחות ומרחבים, לקרוא או לערוך מטא-נתונים (כולל הגדרות ההיסטוריה והגדרות הגישה) ב-Chat. |
https://www.googleapis.com/auth/chat.spaces.create
|
ליצור שיחות חדשות ב-Chat. |
https://www.googleapis.com/auth/chat.spaces.readonly
|
צפייה בצ'אט ובמרחבים המשותפים ב-Chat. |
https://www.googleapis.com/auth/chat.memberships
|
ראייה, הוספה, עדכון והסרה של משתתפים בשיחות ב-Chat. |
https://www.googleapis.com/auth/chat.memberships.app
|
להוסיף ולהסיר את עצמו בשיחות ב-Google Chat. |
https://www.googleapis.com/auth/chat.memberships.readonly
|
לראות את המשתתפים בשיחות ב-Chat. |
https://www.googleapis.com/auth/chat.messages.create
|
לכתוב ולשלוח הודעות ב-Chat. |
https://www.googleapis.com/auth/chat.messages.reactions
|
לראות, להוסיף ולמחוק תגובות להודעות ב-Chat. |
https://www.googleapis.com/auth/chat.messages.reactions.create
|
להוסיף תגובות להודעות ב-Chat. |
https://www.googleapis.com/auth/chat.messages.reactions.readonly
|
לראות תגובות להודעות ב-Chat. |
https://www.googleapis.com/auth/chat.users.readstate
|
הצגה ושינוי של מועד הקריאה האחרון בשיחות ב-Chat. |
https://www.googleapis.com/auth/chat.users.readstate.readonly
|
הצגת מועד הקריאה האחרון בשיחות ב-Chat. |
https://www.googleapis.com/auth/chat.admin.spaces.readonly
|
צפייה בצ'אט ובמרחבים המשותפים שבבעלות הדומיין של האדמין ב-Chat. |
https://www.googleapis.com/auth/chat.admin.spaces
|
קריאה או עריכה של הצ'אט והמרחבים המשותפים שבבעלות הדומיין של האדמין ב-Chat. |
https://www.googleapis.com/auth/chat.admin.memberships.readonly
|
צפייה בחברים ובמנהלים בשיחות שבבעלות הדומיין של האדמין ב-Chat. |
https://www.googleapis.com/auth/chat.admin.memberships
|
צפייה, הוספה, עדכון והסרה של חברים ומנהלים בשיחות שבבעלות הדומיין של האדמין ב-Chat. |
היקפים מוגבלים
קוד היקף ההרשאות | תיאור |
---|---|
https://www.googleapis.com/auth/chat.delete
|
מחיקת השיחות והמרחבים המשותפים, והסרת הגישה לקבצים המשויכים ב-Chat. |
https://www.googleapis.com/auth/chat.import
|
ייבוא מרחבים, הודעות ומינויים אל Chat. עבור מידע נוסף: איך נותנים הרשאה לאפליקציות ל-Chat לייבא נתונים |
https://www.googleapis.com/auth/chat.messages
|
הצגה, כתיבה, שליחה, עדכון ומחיקה של הודעות, והוספה, הצגה ומחיקה של הודעות למחוק תגובות להודעות באמצעות אמוג'י. |
https://www.googleapis.com/auth/chat.messages.readonly
|
לראות את ההודעות והתגובות ב-Chat. |
https://www.googleapis.com/auth/chat.admin.delete
|
מחיקת השיחות והמרחבים שבבעלות הדומיין של האדמין, והסרת הגישה לקבצים המשויכים ב-Chat. |
ההיקפים בטבלאות שלמעלה מציינים את הרגישות שלהם, לפי ההגדרות הבאות:
לא רגיש – ההיקפים האלה מספקים את הטווח הקטן ביותר גישה להרשאה ולחייב רק אימות בסיסי של האפליקציה. עבור מידע על הדרישה הזו זמין במאמר השלבים שצריך לבצע כדי להתכונן לקראת אימות.
רגיש – היקפי ההרשאות האלה נותנים לאפליקציה גישה נתוני Google של המשתמש אחרי קבלת הרשאה מהמשתמש. הוא מחייב תצטרכו להשלים תהליך אימות נוסף של האפליקציה. למידע בנושא כדי לעמוד בדרישות, אפשר לעיין בשלבים לאפליקציות שמבקשות מידע רגיש היקפים.
מוגבלת – ההיקפים האלה מספקים גישה רחבה לנתוני המשתמשים ב-Google והם יצטרכו לעבור את תהליך האימות בהיקף מוגבל. עבור מידע על הדרישה הזו זמין במאמר שירותי Google API: נתוני משתמש מדיניות ודרישות נוספות ל-API ספציפי היקפים. מומלץ לעיין גם בשלבים לאפליקציות שמבקשות הגבלות היקפים.
אם לאפליקציה נדרשת גישה לממשקי Google API אחרים, אפשר להוסיף את היקפי ההרשאות האלה וגם. מידע נוסף על היקפים של Google API זמין במאמר שימוש ב-OAuth 2.0 כדי גישה ל-Google APIs.
למידע נוסף על היקפי ההרשאות לממשקי API של Google Workspace: מגדירים את מסך ההסכמה של OAuth ובוחרים היקפים.
סוגי האימות הנדרש
יש שתי דרכים שבהן אפליקציות צ'אט יכולות לבצע אימות ואישור באמצעות Chat API: פרטי כניסה של משתמשים או חשבונות שירות.
בעזרת פרטי הכניסה של המשתמש, אפליקציית Chat יכולה גישה לנתוני משתמש וביצוע פעולות בשמו. היקפי ההרשאות של OAuth מציינים את הפעולות והנתונים המורשים.
באמצעות הרשאה לאפליקציה, אפליקציית Chat מקבלת גישה
את ה-API כאפליקציה שמשתמשת בפרטי כניסה של חשבון שירות. הרשאה לאפליקציה תמיד
משתמש בהיקף ההרשאה chat.bot
.
כשאתם מחליטים באיזה סוג של פרטי כניסה להשתמש עבור בקשת API מסוימת, חשוב לזכור ששיטות API מסוימות תומכות רק בסוג מסוים של פרטי כניסה לחשבון. אם שיטת API תומכת בשני פרטי הכניסה, סוג פרטי הכניסה בשימוש בשיחה משפיע על התוצאה שמוחזרת:
- ב'הרשאה לאפליקציה', השיטות מחזירות רק משאבים שהאפליקציה יכולה גישה.
- בהרשאת משתמש, השיטות מחזירות רק משאבים שהמשתמש יכולים לגשת אליו בממשק המשתמש של Chat.
לדוגמה, קריאה ל-method ListSpaces
עם הרשאת אפליקציה תחזיר את הערך של
רשימה של המרחבים המשותפים שהאפליקציה חברה בהם. התקשרות אל ListSpaces
עם המשתמש/ת
הרשאה מחזירה את רשימת המרחבים המשותפים שבהם המשתמש חבר. לחשבון
האפליקציה עשויה להשתמש בשני סוגי ההרשאות בזמן קריאה
Chat API, בהתאם לפונקציונליות הרצויה.
לקריאות אסינכרוניות של Chat API
בטבלה הבאה מפורטות השיטות של Chat API והשיטות הנתמכות שלהן היקפי הרשאות:
שיטה | תמיכה באימות משתמשים | תמיכה באימות אפליקציות | היקפי ההרשאות הנתמכים | |
---|---|---|---|---|
מרחבים משותפים | ||||
איך יוצרים מרחבים משותפים | — |
באמצעות אימות משתמש:
|
||
איך מגדירים מרחב משותף | — |
באמצעות אימות משתמש:
|
||
ליצירת מרחב |
באמצעות אימות משתמש:
|
|||
הצגת רשימת המרחבים המשותפים |
באמצעות אימות משתמש:
|
|||
חיפוש מרחבים |
כשמשתמשים באימות משתמש באמצעות הרשאות אדמין:
|
|||
איך משנים את המרחב המשותף | — |
באמצעות אימות משתמש:
|
||
איך מוחקים מרחבים משותפים | — |
באמצעות אימות משתמש:
|
||
השלמת תהליך הייבוא של מרחב משותף | — |
באמצעות אימות משתמש:
|
||
איך מחפשים צ'אטים אישיים |
באמצעות אימות משתמש:
|
|||
חברים | ||||
איך יוצרים חברי מועדון | — |
באמצעות אימות משתמש:
|
||
הצטרפות למועדון החברים |
באמצעות אימות משתמש:
|
|||
חברים ברשימה |
באמצעות אימות משתמש:
|
|||
מחיקת חבר | — |
באמצעות אימות משתמש:
|
||
עדכון חברי מועדון | — |
באמצעות אימות משתמש:
|
||
הודעות | ||||
איך יוצרים הודעות |
באמצעות אימות משתמש:
|
|||
קבלת הודעה |
באמצעות אימות משתמש:
|
|||
רשימת ההודעות | — |
באמצעות אימות משתמש:
|
||
איך מעדכנים הודעות |
באמצעות אימות משתמש:
|
|||
איך מוחקים הודעות? |
באמצעות אימות משתמש:
|
|||
תגובות | ||||
יצירת תגובה באמוג'י | — |
באמצעות אימות משתמש:
|
||
הצגת רשימה של תגובות | — |
באמצעות אימות משתמש:
|
||
מחיקת תגובה באמוג'י | — |
באמצעות אימות משתמש:
|
||
מדיה קבצים מצורפים | ||||
העלאת מדיה כקובץ מצורף | — |
באמצעות אימות משתמש:
|
||
הורדת המדיה |
באמצעות אימות משתמש:
|
|||
קבלת קובץ מצורף של הודעה | — |
באמצעות אימות אפליקציות:
|
||
מצבי קריאה של משתמשים | ||||
קבלת מצב קריאת מרחב של משתמש | — |
באמצעות אימות משתמש:
|
||
עדכון מצב הקריאה של מרחב משתמש | — |
באמצעות אימות משתמש:
|
||
קבלת מצב קריאת השרשור של משתמש | — |
באמצעות אימות משתמש:
|
||
אירועים במרחב המשותף | ||||
קבלת אירועים בחלל | — |
באמצעות אימות משתמשים,
צריך להשתמש בהיקף שמבוסס על
סוג האירוע:
|
||
הצגת רשימה של אירועים במרחב המשותף | — |
באמצעות אימות משתמשים,
צריך להגדיר היקף לכל
סוג האירוע שכלול בבקשה:
|
באירועי אינטראקציה של אפליקציית Chat
בטבלה הבאה מפורטות הדרכים הנפוצות שבהן משתמשים יכולים לקיים אינטראקציה עם אפליקציות צ'אט, והאם נדרש או נתמך אימות:
תרחיש | לא נדרש אימות | תמיכה באימות משתמשים | תמיכה באימות אפליקציות | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
קבלת הודעות מ: |
|
|||||||||||||||
איך עונים להודעות: |
|
|||||||||||||||
שליחת הודעות חדשות: |
|
נושאים קשורים
- לסקירה כללית של אימות והרשאה ב-Google Workspace: לראות מידע על אימות ו .
- במאמר הזה תוכלו לקרוא סקירה כללית על אימות והרשאה ב-Google Cloud. סקירה כללית על אימות
- למידע נוסף על חשבונות שירות: חשבונות שירות.
- מידע נוסף על האופן שבו ממשקי Google API משתמשים ב-OAuth 2.0 זמין בכתובת שימוש ב-OAuth 2.0 כדי לגשת ל-Google APIs.
- הגדרת אימות והרשאה באמצעות פרטי הכניסה של המשתמש או חשבון שירות.