מפתחות הגישה נועדו לשנות את חוויית הכניסה לחשבון, ולהציע חלופה פשוטה, מהירה ומאובטחת יותר לסיסמאות. רשימת המשימות הזו תעזור לכם להבין את ההיבטים העיקריים של הטמעת מפתחות גישה כדי להשיג תוצאות אופטימיות של חוויית משתמש (UX).
איך משתמשים ברשימת המשימות הזו
רשימת המשימות הזו מיועדת למפתחים ולצוותי מוצרים שמטמיעים מפתחות גישה בתהליכי האימות שלהם. אפשר להשתמש בשיטה הזו כדי:
- מומלץ לוודא שההטמעה שלכם תואמת לשיטות המומלצות המודרניות לשיפור חוויית השימוש במפתחות גישה, שמפורטות במאמרים הבאים.
- זיהוי רכיבים נדרשים ורכיבים אופציונליים שמשפרים את נוחות השימוש, האבטחה והתאימות.
- כדאי לבדוק את ההטמעה במהלך הפיתוח ולפני הפריסה.
- התאמה לשיטות מומלצות שתומכות בהטמעה על ידי משתמשים וביכולת הפעולה ההדדית של מערכות.
כך תוכלו לספק חוויה חלקה ומאובטחת למשתמשי הקצה.
רישום מפתחות גישה
כדי לבצע מעבר חלק מסיסמאות למפתחות גישה באתר, חשוב מאוד שתהיה לכם יכולת מתקדמת לרשום מפתחות גישה. כדי ליצור תכונה של רישום מפתח גישה באתר, פועלים לפי ההוראות שמפורטות במאמר יצירת מפתח גישה לכניסות ללא סיסמה. בנוסף לתכונות הבסיסיות של רישום מפתחות גישה, כדאי לבדוק את הדברים הבאים:
✅ מציינים את "platform"
כערך הקובץ המצורף של מאמת הזהות שרוצים להעביר אל navigator.credentials.create()
ליצירת מפתח גישה מקודם.
- לספק תהליך יצירת מפתח גישה מותאם וחלק למי שיוצרים מפתח גישה באופן תגובתי.
✅ לפני שמאפשרים למשתמש ליצור מפתח גישה, צריך לאמת אותו באמצעות שיטת האימות החזקה ביותר שזמינה לו.
- חשוב לעשות זאת כדי למנוע מתקפה שבה תוקף יוצר מפתח גישה בחשבון שנפרץ.
✅ מניעת יצירת מפתחות גישה כפולים לאותו ספק מפתחות גישה באמצעות excludeCredentials
.
- ספקי מפתחות גישה רבים מאפשרים להשתמש רק במפתח גישה אחד לכל חשבון ומזהה RP. הימנעו משימוש בכפילויות.
✅ משתמשים ב-AAGUID כדי לזהות את ספק מפתח הגישה ולתת שם לפרטי הכניסה של המשתמש.
- שיוך של מפתח גישה לספק שלו הוא דרך אינטואיטיבית להציג פרטי כניסה כשהדבר אפשרי.
✅ איתות אם ניסיון לרשום מפתח גישה נכשל עם PublicKeyCredential.signalUnknownCredential()
.
- מפתחות גישה מיותרים עלולים לגרום לבלבול. אם לא הצלחתם לרשום מפתח גישה בשרת, עליכם להודיע על כך לספק מפתח הגישה.
✅ שליחת התראה למשתמש אחרי יצירת מפתח גישה לחשבון שלו ורישום שלו.
- חשוב לוודא שהמשתמש יודע שמפתח גישה נוצר, במיוחד אם מישהו אחר יוצר אותו.
אימות מפתחות גישה
יכול להיות מאתגר להתאים את השירות גם למשתמשים עם סיסמה וגם למשתמשים עם מפתח גישה, בלי שתהיה להם בעיה. כדי ליצור באתר תכונה של מילוי אוטומטי של טפסים באמצעות מפתח גישה, פועלים לפי ההוראות שמפורטות במאמר כניסה באמצעות מפתח גישה באמצעות מילוי אוטומטי של טפסים. בנוסף לתכונות הבסיסיות של אימות מפתחות גישה, כדאי לבדוק את הדברים הבאים:
✅ מאפשרים למשתמשים להיכנס באמצעות מפתח גישה באמצעות מילוי אוטומטי של טפסים.
- אם האתר שלכם עובר משימוש בסיסמה לשימוש במפתח גישה, הדרך הטובה ביותר להתאים את האתר לשני סוגי המשתמשים היא להשתמש בתכונה של מילוי אוטומטי של טפסים בדפדפן.
✅ איתות כשפרטי הכניסה התואמים של מפתח הגישה לא נמצאים בקצה העורפי באמצעות PublicKeyCredential.signalUnknownCredential()
.
- מפתחות גישה מיותרים עלולים לגרום לבלבול. עליכם להודיע לספק מפתח הגישה איזה מפתח גישה לא ניתן להשתמש בו, כדי שהספק יוכל למחוק אותו.
✅ מבקשים מהמשתמשים ליצור מפתח גישה באופן ידני אם הם לא יצרו מפתח כזה אחרי שנכנסו לחשבון.
- אם המשתמש עדיין לא יצר מפתח גישה, כדאי לעודד אותו ליצור מפתח.
✅ יצירה אוטומטית של מפתח גישה (יצירה מותנית) אחרי שהמשתמש נכנס לחשבון באמצעות סיסמה (וגורם אימות שני).
- לזרז את אימוץ מפתחות הגישה על ידי המשתמשים.
✅ מבקשים ליצור מפתח גישה מקומי אם המשתמש נכנס באמצעות מפתח גישה לשימוש במכשירים שונים.
- יצירת מפתח גישה מקומי עוזרת למשתמש להיכנס לחשבון בפעם הבאה בלי לסרוק קוד QR.
✅ לשלוח לספק אחרי הכניסה לחשבון את רשימת מפתחות הגישה הזמינים ואת פרטי המשתמש המעודכנים (שם המשתמש, שם התצוגה)
- כדי לשפר את חוויית המשתמש, חשוב לשמור על סנכרון בין רשימת מפתחות הגישה לבין פרטי המשתמשים בין השרת לבין ספק מפתחות הגישה.
ניהול מפתחות הגישה
אם המשתמשים יבינו את הנושא של מפתחות הגישה, הם יוכלו להבין טוב יותר את התמונה הכוללת ולשלוט טוב יותר במפתחות הגישה. כדי ליצור תכונה לניהול מפתחות גישה באתר, פועלים לפי ההוראות שמפורטות במאמר עזרה למשתמשים לנהל מפתחות גישה בצורה יעילה. אלה הדברים שכדאי לבדוק:
✅ לאפשר למשתמשים לנהל מפתחות גישה בדף ניהול של מפתחות גישה.
- ליצור מקום מרכזי שבו המשתמשים יוכלו לנהל את מפתחות הגישה שלהם.
✅ תמיכה ברישום של כמה מפתחות גישה.
- היכולת לרשום כמה מפתחות גישה עוזרת למשתמשים למנוע נעילה ללא צורך בשימוש בשיטת אימות חלשה יותר.
✅ המשתמשים יכולים להוסיף סוגי מפתחות גישה חדשים וגמישים בדף הניהול.
✅ מציגים את שם מפתח הגישה.
- לתת שמות למפתחות הגישה על סמך ה-AAGUID ולספק תמונה מוחשית של מפתחות הגישה של המשתמש.
✅ מציינים אם מפתח הגישה ניתן לסנכרון או לא.
- להודיע למשתמש כשמפתח גישה לא מסתנכרן.
✅ לאפשר למשתמשים להסיר מפתח ציבורי מהשרת.
✅ לשלוח אות לרשימת מפתחות הגישה כשמפתח ציבורי משויך מוסר מהשרת.
- סנכרון של רשימת מפתחות הגישה בין השרת לבין ספק מפתחות הגישה משפר את חוויית המשתמש.

שיקולים נוספים
✅ לשלוח אות על פרטי המשתמש המעודכנים (שם משתמש, שם תצוגה) כשהמשתמש מעדכן אותם.
✅ יוצרים מפתח גישה במקום סיסמה חדשה כשהמשתמש 'שכח את הסיסמה'.