בדף העיון הזה מוסבר על ה-API של מאפייני הנתונים ב-HTML של 'כניסה באמצעות חשבון Google', שמשמש להצגת הלחצן 'כניסה באמצעות חשבון Google' או ההנחיה 'הצטרפות בלחיצה אחת' בדפי אינטרנט.
רכיב עם המזהה g_id_onload
אפשר להוסיף מאפייני נתונים של 'כניסה באמצעות חשבון Google' לכל רכיב גלוי או מוסתר, כמו <div> ו-<span>. הדרישה היחידה היא שהמזהה של הרכיב
מוגדר ל-g_id_onload. אל תציבו את המזהה הזה בכמה רכיבים.
מאפייני נתונים
בטבלה הבאה מפורטים מאפייני הנתונים והתיאורים שלהם:
| מאפיין | |
|---|---|
data-client_id |
מזהה הלקוח של האפליקציה |
data-color_scheme |
ערכת הצבעים שמוחלת על ההנחיה לאישור בלחיצה אחת. |
data-auto_prompt |
הצגת סמל Google One. |
data-auto_select |
ההגדרה מאפשרת בחירה אוטומטית ב-Google One Tap. |
data-login_uri |
כתובת ה-URL של נקודת הקצה להתחברות |
data-callback |
שם הפונקציה של ה-handler של טוקן המזהה של JavaScript |
data-native_login_uri |
כתובת ה-URL של נקודת הקצה של ה-handler של פרטי הכניסה עם הסיסמה |
data-native_callback |
שם הפונקציה לטיפול בפרטי הכניסה של הסיסמה ב-JavaScript |
data-native_id_param |
שם הפרמטר של הערך credential.id |
data-native_password_param |
שם הפרמטר של הערך credential.password |
data-cancel_on_tap_outside |
המדיניות קובעת אם לבטל את ההנחיה אם המשתמש לוחץ מחוץ להנחיה. |
data-prompt_parent_id |
מזהה ה-DOM של רכיב מאגר ההודעות של התכונה 'הצטרפות בלחיצה אחת' |
data-skip_prompt_cookie |
המערכת מדלגת על One Tap אם לקובץ ה-Cookie שצוין יש ערך לא ריק. |
data-nonce |
מחרוזת אקראית לאסימוני מזהה |
data-context |
הכותרת והמילים בהודעה של הכניסה בהקשה אחת |
data-moment_callback |
שם הפונקציה של מאזין ההתראות על סטטוס ממשק המשתמש של ההנחיה |
data-state_cookie_domain |
אם אתם צריכים להפעיל את One Tap בדומיין הראשי ובתת-הדומיינים שלו, צריך להעביר את הדומיין הראשי למאפיין הזה כדי להשתמש בקובץ Cookie משותף יחיד. |
data-ux_mode |
תהליך חוויית המשתמש של הכפתור לכניסה באמצעות חשבון Google |
data-allowed_parent_origin |
המקורות שמורשים להטמיע את ה-iframe של הביניים. אם המאפיין הזה קיים, התכונה 'הצטרפות בלחיצה אחת' פועלת במצב iframe ביניים. |
data-intermediate_iframe_close_callback |
המדיניות הזו מבטלת את התנהגות ברירת המחדל של iframe ביניים כשמשתמשים סוגרים ידנית את One Tap. |
data-itp_support |
ההגדרה הזו מאפשרת לשדרג את חוויית המשתמש של התכונה 'כניסה בלחיצה אחת' בדפדפנים עם ITP. |
data-login_hint |
דילוג על בחירת החשבון על ידי מתן רמז למשתמש. |
data-hd |
הגבלת בחירת החשבון לפי דומיין. |
data-use_fedcm_for_prompt |
מאפשרים לדפדפן לשלוט בהנחיות לכניסה לחשבון ולנהל את תהליך הכניסה בין האתר שלכם לבין Google. |
data-use_fedcm_for_button |
השדה הזה קובע אם צריך להשתמש בממשק משתמש של לחצן FedCM ב-Chrome (במחשב M125 ומעלה וב-Android M128 ומעלה). ברירת המחדל היא false. |
data-button_auto_select |
האם להפעיל את האפשרות בחירה אוטומטית בתהליך של לחצן FedCM. אם האפשרות הזו מופעלת, משתמשים חוזרים עם סשן פעיל ב-Google יתחברו באופן אוטומטי, בלי שתופיע להם ההנחיה לבחירת חשבון. ערך ברירת המחדל הוא false. |
סוגי מאפיינים
בקטעים הבאים מפורטים סוגי המאפיינים ומוצגות דוגמאות.
data-client_id
המאפיין הזה הוא מזהה הלקוח של האפליקציה, שאפשר למצוא וליצור אותו במסוף Google Cloud. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | כן | data-client_id="CLIENT_ID.apps.googleusercontent.com" |
data-color_scheme
השדה הזה מייצג את ערכת הצבעים שמוחלת על ההנחיה של אישור בלחיצה אחת. מידע נוסף זמין בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי. ברירת המחדל היא ערכת הצבעים שמוגדרת כברירת מחדל במערכת של המשתמשים. | data-color_scheme="dark" |
בטבלה הבאה מפורטות ערכות הצבעים הזמינות והתיאורים שלהן.
| ערכת צבעים | |
|---|---|
default |
החלת ערכת הצבעים שמוגדרת כברירת מחדל במערכת של המשתמש, בהתאם להעדפות המשתמש (בהיר או כהה). |
light |
החלת ערכת צבעים בהירה. |
dark |
החלת ערכת צבעים כהה. |
data-auto_prompt
המאפיין הזה קובע אם להציג את התכונה 'הצטרפות בהקשה אחת' או לא. ערך ברירת המחדל הוא true. האפשרות 'הצטרפות בלחיצה אחת ל-Google One' לא מוצגת כשהערך הוא false. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | אופציונלי | data-auto_prompt="true" |
data-auto_select
המאפיין הזה קובע אם להחזיר טוקן מזהה באופן אוטומטי, ללא פעילות של המשתמש, אם רק סשן אחד ב-Google אישר את האפליקציה. ערך ברירת המחדל הוא false. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | אופציונלי | data-auto_select="true" |
data-login_uri
המאפיין הזה הוא ה-URI של נקודת הקצה של ההתחברות.
הערך צריך להיות זהה לאחד מכתובות ה-URI המורשות להפניה אוטומטית של לקוח OAuth 2.0, שהגדרתם בפלטפורמת האימות של Google, והוא צריך לעמוד בדרישות כללי האימות של כתובות ה-URI להפניה אוטומטית.
אפשר להשמיט את המאפיין הזה אם הדף הנוכחי הוא דף ההתחברות שלכם. במקרה כזה, פרטי הכניסה נשלחים לדף הזה כברירת מחדל.
תגובת פרטי הכניסה של אסימון ה-ID מתפרסמת בנקודת הקצה של ההתחברות אם לא מוגדרת פונקציית קריאה חוזרת והמשתמש לוחץ על הכפתורים 'כניסה באמצעות חשבון Google' או 'לחיצה אחת', או אם מתבצעת כניסה אוטומטית.
נקודת הקצה להתחברות צריכה לטפל בבקשות POST שמכילות פרמטר credential עם ערך של טוקן מזהה בגוף הבקשה.
מידע נוסף מופיע בטבלה הבאה:
| סוג | אופציונלי | דוגמה |
|---|---|---|
| כתובת URL | ברירת המחדל היא ה-URI של הדף הנוכחי, או הערך שאתם מציינים. המערכת מתעלמת מההגדרה הזו אם מוגדרים data-ux_mode="popup" ו-data-callback. |
data-login_uri="https://www.example.com/login" |
data-callback
המאפיין הזה הוא השם של פונקציית JavaScript שמטפלת בטוקן המזהה שמוחזר. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | חובה אם לא מוגדר הערך data-login_uri. |
data-callback="handleToken" |
יכול להיות שנעשה שימוש באחד מהמאפיינים data-login_uri ו-data-callback. זה תלוי בהגדרות של רכיב UX ובמצב UX:
המאפיין
data-login_uriנדרש למצב חוויית המשתמש של הלחצןredirect'כניסה באמצעות חשבון Google', שמתעלם מהמאפייןdata-callback.צריך להגדיר אחד משני המאפיינים האלה כדי להשתמש בשיטת הכניסה 'לחיצה אחת' של Google ובכפתור הכניסה של Google
popupבמצב UX. אם שני המאפיינים מוגדרים, למאפייןdata-callbackיש עדיפות גבוהה יותר.
פונקציות JavaScript בתוך מרחב שמות לא נתמכות על ידי HTML API.
במקום זאת, צריך להשתמש בפונקציית JavaScript גלובלית ללא מרחב שמות. לדוגמה, צריך להשתמש ב-mylibCallback במקום ב-mylib.callback.
data-native_login_uri
כתובת ה-URL של נקודת הקצה של ה-handler של פרטי הכניסה לסיסמה. אם מגדירים את המאפיין data-native_login_uri או את המאפיין data-native_callback, ספריית JavaScript חוזרת למנהל האישורים המובנה כשאין סשן ב-Google. אסור להגדיר גם את המאפיין data-native_callback וגם את המאפיין data-native_login_uri. מידע נוסף מפורט בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-login_uri="https://www.example.com/password_login" |
data-native_callback
המאפיין הזה הוא השם של פונקציית JavaScript שמטפלת בפרטי הכניסה של הסיסמה שמוחזרים ממנהל פרטי הכניסה המובנה של הדפדפן. אם מגדירים את המאפיין data-native_login_uri או את המאפיין data-native_callback, ספריית JavaScript חוזרת למנהל האישורים המובנה כשאין סשן Google. אין לך אפשרות להגדיר גם את data-native_callback וגם את data-native_login_uri. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-native_callback="handlePasswordCredential" |
פונקציות JavaScript בתוך מרחב שמות לא נתמכות על ידי HTML API.
במקום זאת, צריך להשתמש בפונקציית JavaScript גלובלית ללא מרחב שמות. לדוגמה, צריך להשתמש ב-mylibCallback במקום ב-mylib.callback.
data-native_id_param
כששולחים את פרטי הכניסה של הסיסמה לנקודת הקצה של המטפל בפרטי הכניסה של הסיסמה, אפשר לציין את שם הפרמטר בשדה credential.id. שם ברירת המחדל הוא email. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| כתובת URL | אופציונלי | data-native_id_param="user_id" |
data-native_password_param
כששולחים את פרטי הכניסה של הסיסמה לנקודת הקצה של המטפל בפרטי הכניסה של הסיסמה, אפשר לציין את שם הפרמטר של הערך credential.password. שם ברירת המחדל הוא password. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| כתובת URL | אופציונלי | data-native_password_param="pwd" |
data-cancel_on_tap_outside
במאפיין הזה מגדירים אם לבטל את הבקשה להצטרפות בלחיצה אחת אם המשתמש לוחץ מחוץ להנחיה. ערך ברירת המחדל הוא true. כדי להשבית את ההגדרה, צריך להגדיר את הערך false. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | אופציונלי | data-cancel_on_tap_outside="false" |
data-prompt_parent_id
במאפיין הזה מגדירים את מזהה ה-DOM של רכיב מאגר התגים. אם הוא לא מוגדר, ההנחיה לאישור בלחיצה אחת מוצגת בפינה השמאלית העליונה של החלון. מידע נוסף זמין בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-prompt_parent_id="parent_id" |
data-skip_prompt_cookie
הכלי משתמש בקובץ Cookie כדי לשלוט בהצגה של ההנחיה 'הצטרפות בלחיצה אחת'. אם לקובץ ה-Cookie שצוין במאפיין הזה יש ערך לא ריק, ההודעה לא תוצג. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-skip_prompt_cookie="SID" |
data-nonce
המאפיין הזה הוא מחרוזת אקראית שמשמשת את אסימון המזהה כדי למנוע מתקפות שידור חוזר. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-nonce="biaqbm70g23" |
אורך ה-nonce מוגבל לגודל המקסימלי של JWT שנתמך בסביבה שלכם, ולמגבלות הגודל של HTTP בדפדפן ובשרת.
data-context
השדה הזה משנה את הטקסט של הכותרת וההודעות שמוצגות בהנחיה של One Tap, אבל הוא לא משפיע על דפדפני ITP. ברירת המחדל היא signin.
מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-context="use" |
בטבלה הבאה מפורטים כל ההקשרים הזמינים והתיאורים שלהם:
| הקשר | |
|---|---|
signin |
"Sign in to" (כניסה לחשבון) |
signup |
"Sign up to" (הרשמה ל) |
use |
"שימוש" |
data-moment_callback
המאפיין הזה הוא שם הפונקציה של מאזין ההתראות על סטטוס ממשק המשתמש של ההנחיה. מידע נוסף זמין במאמר על סוג הנתונים PromptMomentNotification.
מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-moment_callback="logMomentNotification" |
פונקציות JavaScript בתוך מרחב שמות לא נתמכות על ידי HTML API.
במקום זאת, צריך להשתמש בפונקציית JavaScript גלובלית ללא מרחב שמות. לדוגמה, צריך להשתמש ב-mylibCallback במקום ב-mylib.callback.
data-state_cookie_domain
אם אתם צריכים להציג את התכונה 'הצטרפות בלחיצה אחת' בדומיין ראשי ובתת-הדומיינים שלו, צריך להעביר את הדומיין הראשי למאפיין הזה כדי להשתמש בקובץ Cookie יחיד של מצב משותף. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-state_cookie_domain="example.com" |
data-ux_mode
במאפיין הזה מגדירים את תהליך חוויית המשתמש שמוגדר ללחצן 'כניסה באמצעות חשבון Google'. ערך ברירת המחדל הוא popup. לתכונה הזו אין השפעה על חוויית המשתמש של הכניסה בלחיצה אחת. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-ux_mode="redirect" |
בטבלה הבאה מפורטים מצבי חוויית המשתמש הזמינים ותיאורים שלהם.
| מצב UX | |
|---|---|
popup |
מבצע תהליך UX לכניסה לחשבון בחלון קופץ. |
redirect |
מבצע תהליך UX לכניסה באמצעות הפניה לדף מלא. |
data-allowed_parent_origin
המקורות שמורשים להטמיע את ה-iframe של הביניים. התכונה 'הצטרפות בלחיצה אחת' פועלת במצב ביניים של iframe אם המאפיין הזה קיים. מידע נוסף מפורט בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת או מערך מחרוזות | אופציונלי | data-allowed_parent_origin="https://example.com" |
בטבלה הבאה מפורטים סוגי הערכים הנתמכים והתיאורים שלהם.
| סוגי ערכים | ||
|---|---|---|
string |
URI של דומיין יחיד. | "https://example.com" |
string array |
רשימה של כתובות URI של דומיינים, מופרדות בפסיקים. | "https://news.example.com,https://local.example.com" |
אם הערך של מאפיין data-allowed_parent_origin לא תקין, האתחול של מצב הביניים של iframe בתהליך ההרשמה בלחיצה אחת ייכשל וייפסק.
יש תמיכה גם בקידומות של תווים כלליים לחיפוש. לדוגמה, "https://*.example.com"
מתאים ל-example.com ולתת-הדומיינים שלו בכל הרמות (למשל news.example.com, login.news.example.com). דברים שחשוב לזכור כשמשתמשים בתווים כלליים:
- מחרוזות של תבניות לא יכולות להיות מורכבות רק מתו כללי לחיפוש ומדומיין ברמה העליונה. לדוגמה,
https://.comו-https://.co.ukהם לא תקינים כי"https://.example.com"תואם ל-example.comולכל הדומיינים המשניים שלו. כדי לייצג שני דומיינים שונים, משתמשים ברשימה שבה הדומיינים מופרדים בפסיקים. לדוגמה, הביטוי"https://example1.com,https://.example2.com"תואם לדומייניםexample1.comו-example2.comולתת-הדומיינים שלexample2.com - דומיינים עם תווים כלליים חייבים להתחיל בסכימה מאובטחת https:// , ולכן
"*.example.com"נחשב לא תקין.
data-intermediate_iframe_close_callback
המדיניות הזו מבטלת את התנהגות ברירת המחדל של ה-iframe הביניים כשמשתמשים סוגרים ידנית את One Tap על ידי הקשה על הלחצן 'X' בממשק המשתמש של One Tap. התנהגות ברירת המחדל היא להסיר את ה-iframe הביניים מה-DOM באופן מיידי.
השדה data-intermediate_iframe_close_callback תקף רק במצב ביניים של iframe. והיא משפיעה רק על ה-iframe הביניים, ולא על ה-iframe של האימות בלחיצה אחת. ממשק המשתמש של One Tap מוסר לפני שהקריאה החוזרת מופעלת.
| סוג | נדרש | דוגמה |
|---|---|---|
| פונקציה | אופציונלי | data-intermediate_iframe_close_callback="logBeforeClose" |
פונקציות JavaScript בתוך מרחב שמות לא נתמכות על ידי HTML API.
במקום זאת, צריך להשתמש בפונקציית JavaScript גלובלית ללא מרחב שמות. לדוגמה, צריך להשתמש ב-mylibCallback במקום ב-mylib.callback.
data-itp_support
השדה הזה קובע אם להפעיל בדפדפנים שתומכים ב-ITP (מניעת מעקב חכמה) את
ממשק המשתמש המשודרג של One Tap.
ערך ברירת המחדל הוא false. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | אופציונלי | data-itp_support="true" |
data-login_hint
אם האפליקציה יודעת מראש איזה משתמש צריך להיכנס לחשבון, היא יכולה לספק ל-Google רמז להתחברות. אם הפעולה מצליחה, המערכת מדלגת על בחירת החשבון. הערכים הקבילים הם: כתובת אימייל או טוקן מזהה השדה sub.
מידע נוסף זמין במאמרי העזרה בנושא OpenID Connect ל-
login_hint.
| סוג | נדרש | דוגמה |
|---|---|---|
מחרוזת. יכול להיות כתובת אימייל או ערך השדה sub מאסימון המזהה. |
אופציונלי | data-login_hint="elisa.beckett@gmail.com" |
data-hd
אם למשתמש יש כמה חשבונות והוא צריך להיכנס רק לחשבון Workspace שלו, אפשר להשתמש בהגדרה הזו כדי לספק ל-Google רמז לגבי שם הדומיין. אם הפעולה מצליחה, חשבונות המשתמשים שמוצגים במהלך בחירת החשבון מוגבלים לדומיין שצוין.
ערך של wildcard: * מציע למשתמש רק חשבונות Workspace ומוציא מכלל אפשרות חשבונות לשימוש אישי (user@gmail.com) במהלך בחירת החשבון.
מידע נוסף זמין במאמרי העזרה בנושא OpenID Connect ל-
hd.
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת. שם דומיין שמוגדר במלואו או *. | אופציונלי | data-hd="*" |
data-use_fedcm_for_prompt
ההגדרה הזו מאפשרת לדפדפן לשלוט בהנחיות למשתמשים להיכנס לחשבון ולנהל את תהליך הכניסה בין האתר שלכם לבין Google. ברירת המחדל היא False. מידע נוסף זמין בדף מעבר ל-FedCM.
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | הוצא משימוש | data-use_fedcm_for_prompt="true" |
data-use_fedcm_for_button
השדה הזה קובע אם צריך להשתמש בממשק משתמש של לחצן FedCM ב-Chrome (במחשב M125+ וב-Android M128+). ברירת המחדל היא false. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | אופציונלי | data-use_fedcm_for_button="true" |
data-button_auto_select
השדה הזה קובע אם להפעיל את האפשרות בחירה אוטומטית בתהליך של לחצן FedCM. אם האפשרות הזו מופעלת, משתמשים חוזרים עם סשן פעיל ב-Google יתחברו אוטומטית, בלי שתופיע ההנחיה לבחירת חשבון. ברירת המחדל היא false. צריך להפעיל באופן מפורש את הכניסה האוטומטית באמצעות לחצן במהלך ההשקה של ההצטרפות. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| בוליאני | אופציונלי | data-button_auto_select="true" |
רכיב עם המחלקה g_id_signin
אם מוסיפים את g_id_signin למאפיין class של רכיב, הרכיב מוצג כלחצן 'כניסה באמצעות חשבון Google'.
אפשר להציג כמה לחצנים של 'כניסה באמצעות חשבון Google' באותו דף. לכל כפתור יכולות להיות הגדרות ויזואליות משלו. ההגדרות מוגדרות באמצעות מאפייני הנתונים הבאים.
מאפיינים של נתונים חזותיים
בטבלה הבאה מפורטים מאפייני נתונים חזותיים והתיאורים שלהם:
| מאפיין | |
|---|---|
data-type |
סוג הלחצן: סמל או לחצן רגיל. |
data-theme |
העיצוב של הלחצן. לדוגמה, filled_blue או filled_black. |
data-size |
גודל הכפתור. לדוגמה, קטן או גדול. |
data-text |
הטקסט של הכפתור. לדוגמה, "כניסה באמצעות חשבון Google" או "הרשמה באמצעות Google". |
data-shape |
צורת הכפתור. לדוגמה, מלבני או עגול. |
data-logo_alignment |
היישור של הלוגו של Google: לשמאל או למרכז. |
data-width |
רוחב הכפתור, בפיקסלים. |
data-locale |
הטקסט שיוצג בכפתור מוצג בשפה שמוגדרת במאפיין הזה. |
data-click_listener |
אם מציינים פונקציה, היא מופעלת כשלוחצים על הלחצן 'כניסה באמצעות חשבון Google'. |
data-state |
אם ההגדרה הזו מוגדרת, המחרוזת הזו מוחזרת עם טוקן ה-ID. |
סוגי מאפיינים
בקטעים הבאים מפורטים סוגי המאפיינים ומוצגות דוגמאות.
data-type
סוג הכפתור. ערך ברירת המחדל הוא standard. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | כן | data-type="icon" |
בטבלה הבאה מפורטים כל סוגי הלחצנים הזמינים והתיאורים שלהם:
| סוג | |
|---|---|
standard |
|
icon |
|
data-theme
העיצוב של הלחצן. ערך ברירת המחדל הוא outline. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-theme="filled_blue" |
בטבלה הבאה מפורטים העיצובים שזמינים ותיאורים שלהם:
| עיצוב | |
|---|---|
outline |
|
filled_blue |
|
filled_black |
|
data-size
גודל הכפתור. ערך ברירת המחדל הוא large. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-size="small" |
בטבלה הבאה מפורטים הגדלים הזמינים של הלחצנים והתיאורים שלהם.
| גודל | |
|---|---|
large |
|
medium |
|
small |
|
data-text
הטקסט של הכפתור. ערך ברירת המחדל הוא signin_with. אין הבדלים חזותיים בטקסט של כפתורי סמלים עם מאפייני data-text שונים. החריג היחיד הוא כשקוראים את הטקסט לצורך נגישות למסך.
מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-text="signup_with" |
בטבלה הבאה מפורטים הטקסטים הזמינים ללחצנים והתיאורים שלהם:
| טקסט | |
|---|---|
signin_with |
|
signup_with |
|
continue_with |
|
signin |
|
data-shape
הצורה של הכפתור. ערך ברירת המחדל הוא rectangular. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-shape="rectangular" |
בטבלה הבאה מפורטים הצורות הזמינות של הלחצנים והתיאורים שלהן:
| צורה | |
|---|---|
rectangular |
icon, הוא זהה ל-square.
|
pill |
icon, הוא זהה ל-circle.
|
circle |
standard, הוא זהה ל-pill.
|
square |
standard, הוא זהה ל-rectangular.
|
data-logo_alignment
המיקום של הלוגו של Google. ערך ברירת המחדל הוא left. המאפיין הזה רלוונטי רק לסוג הלחצן standard. מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-logo_alignment="center" |
בטבלה הבאה מפורטים סוגי היישור הזמינים והתיאורים שלהם:
| logo_alignment | |
|---|---|
left |
|
center |
|
data-width
הרוחב המינימלי של הלחצן, בפיקסלים. הרוחב המקסימלי האפשרי הוא 400 פיקסלים.
מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-width=400 |
data-locale
אופציונלי. הצגת טקסט הלחצן באמצעות הלוקאל שצוין, אחרת ברירת המחדל היא הגדרות חשבון Google או הדפדפן של המשתמשים. כשמטעינים את הספרייה, מוסיפים את הפרמטר hl ואת קוד השפה להוראה src, למשל:
gsi/client?hl=<iso-639-code>.
אם לא מגדירים את ההעדפה הזו, המערכת משתמשת באזור ברירת המחדל של הדפדפן או בהעדפה של המשתמש בסשן Google. לכן, יכול להיות שמשתמשים שונים יראו גרסאות שונות של לחצנים מותאמים לשפה המקומית, ואולי גם בגדלים שונים.
מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-locale="zh_CN" |
data-click_listener
אפשר להגדיר פונקציית JavaScript שתופעל כשלוחצים על הלחצן 'כניסה באמצעות חשבון Google' באמצעות המאפיין data-click_listener.
<script>
function onClickHandler(){
console.log("Sign in with Google button clicked...")
}
</script>
.....
<div class="g_id_signin"
data-size="large"
data-theme="outline"
data-click_listener="onClickHandler">
</div>בדוגמה הזו, ההודעה Sign in with Google button clicked... נרשמת ביומן במסוף כשלוחצים על הכפתור 'כניסה באמצעות חשבון Google'.
data-state
אופציונלי. אפשר להציג כמה לחצנים של 'כניסה באמצעות חשבון Google' באותו דף, ולכן אפשר להקצות לכל לחצן מחרוזת ייחודית. אותו מחרוזת תוחזר יחד עם אסימון ה-ID, כך שתוכלו לזהות על איזה לחצן המשתמש לחץ כדי להיכנס.
מידע נוסף מופיע בטבלה הבאה:
| סוג | נדרש | דוגמה |
|---|---|---|
| מחרוזת | אופציונלי | data-state="button 1" |
שילוב בצד השרת
נקודות הקצה בצד השרת צריכות לטפל בבקשות HTTP POST הבאות.
נקודת הקצה של ה-handler של אסימון המזהה
נקודת הקצה של ה-handler של האסימון המזהה מעבדת את האסימון המזהה. בהתאם לסטטוס של החשבון המתאים, תוכלו להכניס את המשתמש לחשבון ולהפנות אותו לדף הרשמה או לדף קישור חשבון לקבלת מידע נוסף. הלקוחות חייבים להתעלם מפרמטרים של תגובה שלא מזוהים.
דוגמה לבקשה לנקודת הקצה להתחברות:
POST /login HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Cookie: g_csrf_token=<RANDOM_STRING>
Host: www.example.com
credential=<JWT_ENCODED_ID_TOKEN>&g_csrf_token=<RANDOM_STRING>
בקשת ה-HTTP POST מכילה את הפרטים הבאים:
| פורמט | שם | תיאור |
|---|---|---|
| קובץ Cookie | g_csrf_token |
מחרוזת אקראית שמשתנה עם כל בקשה לנקודת הכניסה שצוינה על ידי data-login_uri, חייבת להתאים לערך בפרמטר הבקשה g_csrf_token. |
| פרמטר של בקשה | g_csrf_token |
מחרוזת אקראית שמשתנה עם כל בקשה לנקודת הקצה של הכניסה שצוינה על ידי data-login_uri, חייבת להתאים לערך של קובץ ה-Cookie g_csrf_token. |
| פרמטר של בקשה | credential |
אסימון מזהה JWT מקודד ש-Google מנפיקה. |
| פרמטר של בקשה | select_by |
איך המשתמש נכנס לחשבון. |
| פרמטר של בקשה | state |
הפרמטר הזה מוגדר רק כשהמשתמש לוחץ על לחצן 'כניסה באמצעות חשבון Google' כדי להיכנס, והמאפיין state של הלחצן מצוין. |
מסמך לאימות
כשמבצעים פענוח, אסימון הזהות נראה כמו בדוגמה הבאה:
header { "alg": "RS256", "kid": "f05415b13acb9590f70df862765c655f5a7a019e", // JWT signature "typ": "JWT" } payload { "iss": "https://accounts.google.com", // The JWT's issuer "nbf": 161803398874, "aud": "314159265-pi.apps.googleusercontent.com", // Your server's client ID "sub": "3141592653589793238", // The unique ID of the user's Google Account "hd": "gmail.com", // If present, the host domain of the user's GSuite email address "email": "elisa.g.beckett@gmail.com", // The user's email address "email_verified": true, // true, if Google has verified the email address "azp": "314159265-pi.apps.googleusercontent.com", "name": "Elisa Beckett", // If present, a URL to user's profile picture "picture": "https://lh3.googleusercontent.com/a-/e2718281828459045235360uler", "given_name": "Eliza", "family_name": "Beckett", "iat": 1596474000, // Unix timestamp of the assertion's creation time "exp": 1596477600, // Unix timestamp of the assertion's expiration time "jti": "abc161803398874def" }
הלקוחות חייבים להתעלם ממידע לא מזוהה מ-JWT.
השדה sub הוא מזהה ייחודי גלובלי של חשבון Google. רק השדה sub יכול לשמש כמזהה של המשתמש, כי הוא ייחודי בין כל חשבונות Google ולא נעשה בו שימוש חוזר.
בעזרת השדות email, email_verified ו-hd אפשר לקבוע אם Google מארחת כתובת אימייל ומוגדרת כסמכותית לגביה. במקרים שבהם Google היא הסמכותית, המשתמש מאומת כבעלים הלגיטימי של החשבון.
מקרים שבהם Google היא הרשות המוסמכת:
-
emailיש סיומת@gmail.com, זה חשבון Gmail. - אם התנאי
email_verifiedמתקיים והערך שלhdמוגדר, מדובר בחשבון Google Workspace.
משתמשים יכולים להירשם לחשבונות Google בלי להשתמש ב-Gmail או ב-Google Workspace.
אם email לא מכיל את הסיומת @gmail.com ו-hd לא קיים, Google לא מהימנה ומומלץ להשתמש בסיסמה או בשיטות אחרות לאימות כדי לאמת את המשתמש. email_verified יכול להיות שזה נכון כי Google אימתה את המשתמש בהתחלה כשנוצר חשבון Google, אבל יכול להיות שהבעלות על חשבון האימייל של הצד השלישי השתנתה מאז.
בשדה exp מוצג תאריך התפוגה של האסימון, שעד אליו צריך לאמת את האסימון בצד השרת. שעה אחת לאסימון המזהה שמתקבל מ'כניסה באמצעות חשבון Google'. צריך לאמת את הטוקן לפני תאריך התפוגה. אל תשתמשו ב-exp לניהול סשנים. תוקף של טוקן מזהה שפג לא אומר שהמשתמש יצא מהחשבון. האפליקציה אחראית לניהול הסשנים של המשתמשים.
g_csrf_token
טוקן מצב למניעת זיוף. זהו טוקן של זיוף בקשות בין אתרים (CSRF) שנוצר על ידי הספרייה gsi/client. ערך אקראי נכלל גם כקובץ Cookie וגם כפרמטר בקשה בגוף המטען הייעודי (payload) של בקשת ה-POST. אם שני הערכים האלה לא תואמים כשמעבדים את הבקשה בשרת, צריך להתייחס לבקשה כאל בקשה לא חוקית.
select_by
בטבלה הבאה מפורטים הערכים האפשריים בשדה select_by. סוג הכפתור שבו נעשה שימוש, יחד עם הסשן ומצב ההסכמה, משמשים להגדרת הערך.
המשתמש לחץ על הלחצן 'כניסה בלחיצה אחת' או על הלחצן 'כניסה באמצעות חשבון Google', או השתמש בתהליך הכניסה האוטומטי ללא מגע.
נמצאה סשן קיים, או שהמשתמש בחר חשבון Google ונכנס אליו כדי ליצור סשן חדש.
לפני שמשתפים את פרטי הכניסה של טוקן ה-ID עם האפליקציה, המשתמש צריך
- לחצו על כפתור האישור כדי להביע את הסכמתם לשיתוף פרטי הכניסה, או
- הענקתם בעבר הסכמה והשתמשתם באפשרות 'בחירת חשבון' כדי לבחור חשבון Google.
הערך של השדה הזה מוגדר לאחד מהסוגים הבאים:
| ערך | תיאור |
|---|---|
auto |
כניסה אוטומטית של משתמש עם סשן קיים שבעבר הסכים לשיתוף פרטי הכניסה. ההגדרה רלוונטית רק לדפדפנים שלא תומכים ב-FedCM. |
user |
משתמש עם סשן קיים שנתן בעבר הסכמה, לחץ על הלחצן 'המשך בתור' של אישור בלחיצה אחת כדי לשתף את פרטי הכניסה. ההגדרה רלוונטית רק לדפדפנים שלא תומכים ב-FedCM. |
fedcm |
משתמש לחץ על הלחצן 'המשך בתור' של One Tap כדי לשתף פרטי כניסה באמצעות FedCM. ההגדרה חלה רק על דפדפנים שנתמכים על ידי FedCM. |
fedcm_auto |
כניסה אוטומטית של משתמש עם סשן קיים שבעבר הסכים לשיתוף פרטי הכניסה באמצעות FedCM One Tap. ההגדרה חלה רק על דפדפנים עם תמיכה ב-FedCM. |
user_1tap |
משתמש עם סשן קיים לחץ על הכפתור 'המשך בתור' של One Tap כדי להעניק הסכמה ולשתף את פרטי הכניסה. רלוונטי רק ל-Chrome מגרסה 75 ואילך. |
user_2tap |
משתמש בלי סשן קיים לחץ על הלחצן 'המשך בתור' של One Tap כדי לבחור חשבון, ואז לחץ על הלחצן 'אישור' בחלון קופץ כדי לתת הסכמה ולשתף את פרטי הכניסה. רלוונטי לדפדפנים שלא מבוססים על Chromium. |
itp |
משתמש שהעניק בעבר הסכמה, לחץ על 'הסכמה בלחיצה אחת' בדפדפנים עם ITP. |
itp_confirm |
משתמש שלא העניק הסכמה לחץ על One Tap בדפדפני ITP ולחץ על הלחצן 'המשך' כדי להעניק הסכמה ולשתף את פרטי הכניסה. |
btn |
משתמש שנתן בעבר הסכמה, לחץ על הלחצן 'כניסה באמצעות חשבון Google' ובחר חשבון Google מתוך 'בחירת חשבון' כדי לשתף את פרטי הכניסה. |
btn_confirm |
משתמש שלא העניק הסכמה לחץ על הלחצן 'כניסה באמצעות חשבון Google' ואז על הלחצן 'המשך' כדי להעניק הסכמה ולשתף את פרטי הכניסה. |
הסמוי הסופי
הפרמטר הזה מוגדר רק כשמשתמש לוחץ על לחצן 'כניסה באמצעות חשבון Google' כדי להיכנס, והמאפיין data-state של הלחצן שלחצו עליו מצוין. הערך של השדה הזה זהה לערך שציינתם במאפיין data-state של הלחצן.
אפשר להציג כמה לחצנים של 'כניסה באמצעות חשבון Google' באותו דף, ולכן אפשר להקצות לכל לחצן מחרוזת ייחודית. לכן, אתם יכולים להשתמש בפרמטר state
כדי לזהות על איזה לחצן המשתמש לחץ כדי להיכנס לחשבון.
נקודת הקצה (endpoint) של אמצעי הטיפול בפרטי הכניסה של הסיסמה
נקודת הקצה של ה-handler של פרטי הכניסה לסיסמה מעבדת פרטי כניסה לסיסמה שמאוחזרים על ידי מנהל פרטי הכניסה המובנה.
בקשת ה-HTTP POST מכילה את הפרטים הבאים:
| פורמט | שם | תיאור |
|---|---|---|
| קובץ Cookie | g_csrf_token |
מחרוזת אקראית שמשתנה עם כל בקשה לנקודת הכניסה שצוינה על ידי data-native_login_uri, חייבת להתאים לערך בפרמטר הבקשה g_csrf_token. |
| פרמטר של בקשה | g_csrf_token |
מחרוזת אקראית שמשתנה עם כל בקשה לנקודת הקצה של הכניסה שצוינה על ידי data-native_login_uri, חייבת להתאים לערך של קובץ ה-Cookie g_csrf_token. |
| פרמטר של בקשה | email |
אסימון ה-ID ש-Google מנפיקה. |
| פרמטר של בקשה | password |
איך פרטי הכניסה נבחרים. |