פרטי כניסה לסשן לפי מכשיר (DBSC) מחזקים את האימות על ידי הוספת אבטחת סשן שמגובה בחומרה.
מבוא
אתרים רבים מסתמכים על קובצי Cookie לטווח ארוך לצורך אימות משתמשים, אבל הם פגיעים לחטיפת סשנים. פרטי כניסה לסשן לפי מכשיר (DBSC) מוסיפים שכבת אבטחה שמגובה בחומרה כדי לצמצם את הסיכון הזה, וכך מוודאים שהסשנים מקושרים למכשירים ספציפיים.
המדריך הזה מיועד למפתחים שמנהלים תהליכי אימות באפליקציות אינטרנט. במאמר הזה מוסבר איך DBSC עובד ואיך לשלב אותו באתר.
איך DBSC עובד
ברמה גבוהה, DBSC מציג צמד מפתחות קריפטוגרפיים שמשויכים למכשיר של המשתמש. מערכת Chrome יוצרת את זוג המפתחות הזה במהלך ההתחברות ומאחסנת את המפתח הפרטי בחומרה מאובטחת, כמו Trusted Platform Module (TPM), אם הוא זמין. בסשנים נעשה שימוש בקובצי Cookie לזמן קצר. כשפג התוקף של אחד מקובצי ה-Cookie האלה, Chrome מוכיח שהוא מחזיק במפתח הפרטי לפני שהוא מרענן אותם. במהלך התהליך הזה, המשכיות הסשן מקושרת למכשיר המקורי.
אם המכשיר של המשתמש לא תומך באחסון מאובטח של מפתחות, תכונת DBSC חוזרת להתנהגות רגילה בלי לשבש את תהליך האימות.
סקירה כללית על ההטמעה
כדי לשלב את DBSC באפליקציה, צריך לבצע את השינויים הבאים:
- משנים את תהליך הכניסה כך שיכלול כותרת
Secure-Session-Registration. - מוסיפים נקודת קצה לרישום סשן:
- משייך מפתח ציבורי לסשן של המשתמש.
- השירות הזה מגיש הגדרות של סשנים.
- מעבר לשימוש בקובצי Cookie לטווח קצר.
- מוסיפים נקודת קצה לרענון כדי לטפל בחידוש של קובצי Cookie ובאימות של בעלות על מפתח.
ברוב נקודות הקצה הקיימות שלכם לא נדרשים שינויים. ה-DBSC נועד להיות תוסף ולא להפריע.
כשקובץ Cookie נדרש לזמן קצר חסר או שתוקפו פג, Chrome משהה את הבקשה ומנסה לרענן את קובץ ה-Cookie. כך האפליקציה יכולה להמשיך להשתמש בבדיקות הרגילות של קובצי ה-Cookie של הסשן כדי לוודא שהמשתמש מחובר. מכיוון שהשיטה הזו תואמת לתהליכי אימות רגילים, DBSC פועל עם שינויים מינימליים בלוגיקת הכניסה שלכם.
שלבי ההטמעה
בקטע הזה מוסבר איך לבצע את השינויים הנדרשים במערכת האימות, כולל איך לשנות את תהליך הכניסה, לטפל ברישום של סשנים ולנהל רענונים של קובצי Cookie לזמן קצר. כל שלב נועד להשתלב בצורה חלקה עם התשתית הקיימת שלכם.
שלבי ההטמעה מתבססים על התהליך הרגיל שמשתמש מחובר עובר כשהתכונה DBSC פעילה: הרשמה בכניסה, ואחריה רענון קבוע של קובצי Cookie קצרים. אפשר לבדוק ולהטמיע כל שלב בנפרד, בהתאם לרמת הרגישות של הסשן באפליקציה.