בהפניה הזו מתואר ממשק ה-API של ספריית JavaScript להרשאה של Google 3P, שאפשר להשתמש בו כדי לטעון קודי הרשאה או אסימוני גישה מ-Google.
שיטה: google.accounts.oauth2.initCodeClient
השיטה initCodeClient
מפעילה ומחזירה לקוח קוד, עם ההגדרות בפרמטר.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
סוג הנתונים: CodeClientConfig
בטבלה הבאה מפורטים המאפיינים של סוג הנתונים CodeClientConfig
.
תכונות | |
---|---|
client_id
|
חובה. מזהה הלקוח של האפליקציה. אפשר למצוא את הערך הזה במסוף API. |
scope
|
חובה. רשימת היקפים מופרדים ברווחים של היקפים שמזהים את המשאבים שהאפליקציה שלך יכולה לגשת אליהם בשם המשתמש. הערכים האלה מציינים את מסך ההסכמה ש-Google מציגה למשתמש. |
include_granted_scopes |
אופציונלי, ברירת המחדל היא true . ההרשאה הזו מאפשרת לאפליקציות להשתמש בהרשאה מצטברת כדי לבקש גישה להיקפים נוספים בהקשר. אם מגדירים
את הערך של הפרמטר הזה כ-false ובקשת ההרשאה מאושרת, אסימון הגישה החדש יכסה רק את כל ההיקפים שscope ביקש
בCodeClientConfig הזה.
|
redirect_uri
|
נדרש להפניות לכתובות URL אחרות. המדיניות הזו קובעת לאן שרת ה-API יפנה את המשתמש אוטומטית אחרי שהוא סיים את תהליך ההרשאה. הערך חייב להתאים במדויק לאחד ממזהי ה-URI המורשים להפניה מחדש בלקוח OAuth 2.0, שאותו הגדרת ב-API Console, ועליו להתאים לכללי האימות של URI להפניה אוטומטית. המערכת תתעלם מהנכס על ידי חוויית המשתמש הקופצת. |
callback |
נדרש עבור חוויית משתמש בחלון קופץ. הפונקציה של JavaScript שמטפלת בתגובת קוד שהוחזרה. ממשק המשתמש של ההפניה האוטומטית תתעלם מהנכס. |
state |
אפשרות. מומלץ להפניות לכתובות URL אחרות. מציינת כל ערך מחרוזת שבו האפליקציה משתמשת כדי לשמור על המצב בין בקשת ההרשאה לבין התגובה של שרת ההרשאות. |
enable_granular_consent |
אופציונלי, ברירת המחדל היא true . אם המדיניות מוגדרת לערך false , הרשאות מפורטות יותר לחשבון Google יושבתו למזהי לקוחות ב-OAuth שנוצרו לפני 2019. אם גם enable_granular_consent וגם enable_serial_consent מוגדרים, רק הערך enable_granular_consent
ייכנס לתוקף והמערכת תתעלם מהערך enable_serial_consent .אין השפעה על מזהים חדשים יותר של לקוחות OAuth, כי תמיד מופעלות עבורם הרשאות מפורטות יותר. |
enable_serial_consent |
הוצא משימוש. במקומה יש להשתמש במדיניות enable_granular_consent . יש
לכך אותה השפעה כמו enable_granular_consent . אפליקציות קיימות
שמשתמשות ב-enable_serial_consent יכולות להמשיך לעשות זאת, אבל כדאי לעדכן את הקוד כך שישתמש ב-enable_granular_consent
בעדכון הבא של האפליקציה.
|
login_hint |
אפשרות. אם האפליקציה שלך יודעת איזה משתמש צריך לאשר את הבקשה, היא יכולה להשתמש בנכס הזה כדי לספק ל-Google רמז להתחברות. כשהפעולה תושלם, המערכת תדלג על בחירת החשבון. ערך השדה sub של כתובת האימייל או של האסימון המזהה של משתמש היעד.
למידע נוסף, ניתן לעיין בשדה login_hint בתיעוד של OpenID Connect.
|
hd |
אפשרות. אם האפליקציה שלך יודעת מהו דומיין Workspace שהמשתמש שייך אליו, אפשר להשתמש במידע הזה כדי לתת רמז ל-Google. כשהפעולה תושלם, חשבונות המשתמשים יוגבלו לדומיין שצוין או נבחרו מראש לדומיין שצוין.
למידע נוסף, ניתן לעיין בשדה hd בתיעוד של OpenID Connect.
|
ux_mode |
אפשרות. מצב ה-UX לשימוש בתהליך ההרשאה. כברירת מחדל, תהליך ההסכמה ייפתח בחלון קופץ. הערכים החוקיים הם popup ו-redirect .
|
select_account |
אופציונלי, ברירת המחדל היא 'false'. ערך בוליאני כדי לבקש מהמשתמש לבחור חשבון. |
error_callback |
אפשרות. פונקציית ה-JavaScript שמטפלת בחלק מהשגיאות שאינן OAuth, כמו החלון הקופץ, לא מצליחה לפתוח; או שהיא נסגרת לפני שמוחזרת תגובת OAuth.
השדה 'סוג' של הפרמטר של הקלט מספק את הסיבה המפורטת.
|
סוג הנתונים: CodeClient
למחלקה יש רק requestCode אחד גלוי לכולם, ומתחיל את התהליך של חוויית המשתמש ב-OAuth 2.0.
interface CodeClient {
requestCode(): void;
}
סוג הנתונים: CodeResponse
אובייקט JavaScript מסוג CodeResponse
יועבר ל-method callback
בחלון הקופץ בחוויית המשתמש. בחוויית המשתמש של ההפניה האוטומטית, הפרמטר CodeResponse
יועבר כפרמטרים של כתובת אתר.
בטבלה הבאה מפורטים המאפיינים של סוג הנתונים CodeResponse
.
תכונות | |
---|---|
code |
קוד ההרשאה של תגובה מוצלחת של אסימון. |
scope |
רשימה מופרדת ברווחים של היקפים שאושרו על ידי המשתמש. |
state |
ערך המחרוזת שבו האפליקציה שלך משתמשת כדי לשמור על המצב בין בקשת ההרשאה שלך לבין התגובה. |
error |
קוד שגיאת ASCII יחיד. |
error_description |
טקסט ASCII קריא לאנשים שמספק מידע נוסף, המשמש לסיוע למפתח הלקוח להבין את השגיאה שאירעה. |
error_uri |
URI המזהה דף אינטרנט קריא (לבני אדם) ומידע על השגיאה, המשמש כדי לספק למפתח הלקוח מידע נוסף על השגיאה. |
שיטה: google.accounts.oauth2.initTokenClient
השיטה initTokenClient
מפעילה ומחזירה לקוח אסימון, עם ההגדרות
בפרמטר.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
סוג הנתונים: TokenClientConfig
בטבלה הבאה מפורטים המאפיינים של סוג הנתונים TokenClientConfig
.
תכונות | |
---|---|
client_id |
חובה. מזהה הלקוח של האפליקציה. אפשר למצוא את הערך הזה במסוף API. |
callback |
חובה. פונקציית ה-JavaScript שמטפלת בתגובת אסימון שהוחזרה. |
scope |
חובה. רשימת היקפים מופרדים ברווחים של היקפים שמזהים את המשאבים שהאפליקציה שלך יכולה לגשת אליהם בשם המשתמש. הערכים האלה מציינים את מסך ההסכמה ש-Google מציגה למשתמש. |
include_granted_scopes |
אופציונלי, ברירת המחדל היא true . ההרשאה הזו מאפשרת לאפליקציות להשתמש בהרשאה מצטברת כדי לבקש גישה להיקפים נוספים בהקשר. אם מגדירים
את הערך של הפרמטר הזה כ-false ובקשת ההרשאה מאושרת, אסימון הגישה החדש יכסה רק את כל ההיקפים שscope ביקש
בTokenClientConfig הזה.
|
prompt |
אופציונלי, ברירת המחדל היא 'select_account'. רשימה של הנחיות להצגת המשתמש שמופרדות ברווחים,
ותלויות אותיות רישיות. הערכים האפשריים הם:
|
enable_granular_consent |
אופציונלי, ברירת המחדל היא true . אם המדיניות מוגדרת לערך false , הרשאות מפורטות יותר לחשבון Google יושבתו למזהי לקוחות ב-OAuth שנוצרו לפני 2019. אם גם enable_granular_consent וגם enable_serial_consent מוגדרים, רק הערך enable_granular_consent
ייכנס לתוקף והמערכת תתעלם מהערך enable_serial_consent .אין השפעה על מזהים חדשים יותר של לקוחות OAuth, כי תמיד מופעלות עבורם הרשאות מפורטות יותר. |
enable_serial_consent |
הוצא משימוש. במקומה יש להשתמש במדיניות enable_granular_consent . יש
לכך אותה השפעה כמו enable_granular_consent . אפליקציות קיימות
שמשתמשות ב-enable_serial_consent יכולות להמשיך לעשות זאת, אבל כדאי לעדכן את הקוד כך שישתמש ב-enable_granular_consent
בעדכון הבא של האפליקציה.
|
login_hint |
אפשרות. אם האפליקציה שלך יודעת איזה משתמש צריך לאשר את הבקשה, היא יכולה להשתמש בנכס הזה כדי לספק ל-Google רמז להתחברות. כשהפעולה תושלם, המערכת תדלג על בחירת החשבון. ערך השדה sub של כתובת האימייל או של האסימון המזהה של משתמש היעד.
למידע נוסף, ניתן לעיין בשדה login_hint בתיעוד של OpenID Connect.
|
hd |
אפשרות. אם האפליקציה שלך יודעת מהו דומיין Workspace שהמשתמש שייך אליו, אפשר להשתמש במידע הזה כדי לתת רמז ל-Google. כשהפעולה תושלם, חשבונות המשתמשים יוגבלו לדומיין שצוין או נבחרו מראש לדומיין שצוין.
למידע נוסף, ניתן לעיין בשדה hd בתיעוד של OpenID Connect.
|
state |
אפשרות. לא מומלץ. מציינת כל ערך מחרוזת שבו האפליקציה משתמשת כדי לשמור על המצב בין בקשת ההרשאה לבין התגובה של שרת ההרשאות. |
error_callback |
אפשרות. פונקציית ה-JavaScript שמטפלת בחלק מהשגיאות שאינן OAuth, כמו החלון הקופץ, לא מצליחה לפתוח; או שהיא נסגרת לפני שמוחזרת תגובת OAuth.
השדה 'סוג' של הפרמטר של הקלט מספק את הסיבה המפורטת.
|
סוג הנתונים: TokenClient
לכיתה יש רק שיטה ציבורית אחת מסוג requestAccessToken
, שמתחילה את תהליך חוויית המשתמש של אסימון OAuth 2.0.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
ארגומנטים | ||
---|---|---|
overrideConfig |
OverridableTokenClientConfig | אפשרות. ההגדרות שיש לשנות בשיטה הזו. |
סוג הנתונים: OverridableTokenClientConfig
בטבלה הבאה מפורטים המאפיינים של סוג הנתונים OverridableTokenClientConfig
.
תכונות | |
---|---|
scope |
אפשרות. רשימת היקפים מופרדים ברווחים של היקפים שמזהים את המשאבים שהאפליקציה שלך יכולה לגשת אליהם בשם המשתמש. הערכים האלה מציינים את מסך ההסכמה ש-Google מציגה למשתמש. |
include_granted_scopes |
אופציונלי, ברירת המחדל היא true . ההרשאה הזו מאפשרת לאפליקציות להשתמש בהרשאה מצטברת כדי לבקש גישה להיקפים נוספים בהקשר. אם מגדירים
את הערך של הפרמטר הזה כ-false ובקשת ההרשאה מאושרת, אסימון הגישה החדש יכסה רק את כל ההיקפים שscope ביקש
בOverridableTokenClientConfig הזה.
|
prompt |
אפשרות. רשימת הנחיות להצגת המשתמש שמופרדת ברווחים ותלוית אותיות רישיות (case-sensitive). |
enable_granular_consent |
אופציונלי, ברירת המחדל היא true . אם המדיניות מוגדרת לערך false , הרשאות מפורטות יותר לחשבון Google יושבתו עבור מזהי לקוחות ב-OAuth שנוצרו לפני 2019.אם גם enable_granular_consent וגם enable_serial_consent יוגדרו, רק הערך של enable_granular_consent ייכנס לתוקף והמערכת תתעלם מהערך של enable_serial_consent .אין השפעה על מזהים חדשים יותר של לקוחות OAuth, כי תמיד מופעלות עבורם הרשאות מפורטות יותר. |
enable_serial_consent |
הוצא משימוש. במקומה יש להשתמש במדיניות enable_granular_consent . יש
לכך אותה השפעה כמו enable_granular_consent . אפליקציות קיימות
שמשתמשות ב-enable_serial_consent יכולות להמשיך לעשות זאת, אבל כדאי לעדכן את הקוד כך שישתמש ב-enable_granular_consent
בעדכון הבא של האפליקציה.
|
login_hint |
אפשרות. אם האפליקציה שלך יודעת איזה משתמש צריך לאשר את הבקשה, היא יכולה להשתמש בנכס הזה כדי לספק ל-Google רמז להתחברות. כשהפעולה תושלם, המערכת תדלג על בחירת החשבון. ערך השדה sub של כתובת האימייל או של האסימון המזהה של משתמש היעד.
למידע נוסף, ניתן לעיין בשדה login_hint בתיעוד של OpenID Connect.
|
state |
אפשרות. לא מומלץ. מציינת כל ערך מחרוזת שבו האפליקציה משתמשת כדי לשמור על המצב בין בקשת ההרשאה לבין התגובה של שרת ההרשאות. |
סוג הנתונים: TokenResponse
אובייקט JavaScript מסוג TokenResponse
יועבר אל שיטת הקריאה החוזרת (callback) בממשק המשתמש הקופץ.
בטבלה הבאה מפורטים המאפיינים של סוג הנתונים TokenResponse
.
תכונות | |
---|---|
access_token |
אסימון הגישה של תגובה מוצלחת של אסימון. |
expires_in |
משך החיים בשניות של אסימון הגישה. |
hd |
הדומיין המתארח שאליו שייך המשתמש המחובר. |
prompt |
ערך הבקשה ששימש מתוך רשימת הערכים האפשריים שצוינה על ידי TokenClientConfig או OverridableTokenClientConfig. |
token_type |
סוג האסימון שהונפק. |
scope |
רשימה מופרדת ברווחים של היקפים שאושרו על ידי המשתמש. |
state |
ערך המחרוזת שבו האפליקציה שלך משתמשת כדי לשמור על המצב בין בקשת ההרשאה שלך לבין התגובה. |
error |
קוד שגיאת ASCII יחיד. |
error_description |
טקסט ASCII קריא לאנשים שמספק מידע נוסף, המשמש לסיוע למפתח הלקוח להבין את השגיאה שאירעה. |
error_uri |
URI המזהה דף אינטרנט קריא (לבני אדם) ומידע על השגיאה, המשמש כדי לספק למפתח הלקוח מידע נוסף על השגיאה. |
שיטה: google.accounts.oauth2.hasGrantedAllScopes
הפונקציה בודקת אם המשתמש העניק למשתמש את כל ההיקפים או ההיקפים שצוינו.
google.accounts.oauth2.hasGrantedAllScopes(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
ארגומנטים | ||
---|---|---|
tokenResponse |
TokenResponse
|
חובה. אובייקט TokenResponse .
|
firstScope |
מחרוזת | חובה. ההיקף שצריך לבדוק. |
restScopes |
מחרוזת[] | אפשרות. היקפים נוספים לבדיקה. |
החזרות | |
---|---|
boolean | הערך הוא True אם כל ההיקפים הוענקו. |
שיטה: google.accounts.oauth2.hasGrantedAnyScope
הפונקציה בודקת אם המשתמש נתן הרשאה מההיקפים או מההיקפים שצוינו.
google.accounts.oauth2.hasGrantedAnyScope(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
ארגומנטים | ||
---|---|---|
tokenResponse |
TokenResponse
|
חובה. אובייקט TokenResponse .
|
firstScope |
מחרוזת | חובה. ההיקף שצריך לבדוק. |
restScopes |
מחרוזת[] | אפשרות. היקפים נוספים לבדיקה. |
החזרות | |
---|---|
boolean | הערך הוא True אם אחד מההיקפים הוענק. |
שיטה: google.accounts.oauth2.revoke
השיטה revoke
מבטלת את כל ההיקפים שהמשתמש העניק לאפליקציה.
נדרש אסימון גישה תקף כדי לבטל את ההרשאה.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
ארגומנטים | ||
---|---|---|
accessToken |
מחרוזת | חובה. אסימון גישה חוקי. |
callback |
פונקציה | אפשרות. handler של RevocationResponse. |
סוג הנתונים: RevocationResponse
אובייקט JavaScript מסוג RevocationResponse
יועבר לשיטת הקריאה החוזרת שלך.
בטבלה הבאה מפורטים המאפיינים של סוג הנתונים RevocationResponse
.
תכונות | |
---|---|
successful |
בוליאני. true ב- הצליחו, false בכישלון. |
error |
מחרוזת. הצלחה לא מוגדרת. קוד שגיאת ASCII יחיד. זה כולל, בין היתר, את קודי השגיאה הרגילים של OAuth 2.0. שגיאות נפוצות בשיטת revoke :
|
error_description |
מחרוזת. הצלחה לא מוגדרת. טקסט ASCII קריא לאנשים מספק מידע נוסף על
המאפיין error . המפתחים יכולים להשתמש בהגדרה הזו כדי להבין טוב יותר
את השגיאה שאירעה. המחרוזת error_description היא באנגלית בלבד.
לגבי השגיאות הנפוצות שרשומות ב-error , צריך לבצע את הפעולות הבאות ב-error_description :
|