מה זה OAuth בשפה פשוטה? מדריך לא טכני לבעלי עסקים: איך התחברות עם ׳התחבר עם Google׳ עובדת, למה זה בטוח יותר מסיסמאות, מה זה אומר לאפליקציה שלך, ופרטי הפרטיות.
OAuth היא הטכנולוגיה שמאחורי כפתורי ׳התחבר עם Google׳ ו׳התחבר עם Apple׳ שאתה רואה בכל מקום. היא מאפשרת לך להתחבר לאפליקציה אחת באמצעות חשבון שכבר יש לך במקום אחר, בלי שהאפליקציה הזו תראה אי פעם את הסיסמה שלך. אפשר לחשוב על זה כמו כרטיס מגנטי של מלון: הקבלה מאמתת מי אתה פעם אחת, ואז נותנת לך כרטיס שפותח רק את החדר שלך ורק למשך השהות שלך. המלון לעולם לא נותן לצוות הניקיון את מפתחות הבית שלך. במדריך הזה אסביר מה זה OAuth בשפה פשוטה, למה זה באמת בטוח יותר מסיסמאות, מה משמעות ההצעה שלו לאפליקציה שלך, ואת שאלות הפרטיות ששווה להבין.
אז מה זה OAuth באמת?
בדרך כלל, כדי להשתמש באפליקציה אתה יוצר חשבון: אתה בוחר סיסמה, האפליקציה שומרת אותה, ובכל פעם שאתה חוזר אתה מקליד אותה. זה עובד, אבל זה אומר שכל אפליקציה שאתה משתמש בה מחזיקה סיסמה, ואתה אחראי לשמור על כל אחת ייחודית ובטוחה. רוב האנשים משתמשים שוב באותן סיסמאות, וזו בדיוק הדרך שבה דליפה אחת הופכת לעשרה פריצות.
OAuth מציע עסקה שונה. במקום ליצור עוד סיסמה, אתה אומר לאפליקציה החדשה ׳תן לי להתחבר עם חשבון הגוגל שלי׳. האפליקציה שולחת אותך לגוגל, גוגל בודקת שזה באמת אתה, עם הסיסמה הקיימת שלך וכנראה גורם שני, ואז גוגל אומרת לאפליקציה ׳כן, זה אדם מאומת, הנה אסימון שמאשר את זה׳. החלק הקריטי: האפליקציה החדשה לעולם לא רואה את סיסמת הגוגל שלך. היא מקבלת רק אסימון מוגבל וניתן לביטול שאומר שאתה מי שאתה טוען שאתה.
המילה OAuth היא ראשי תיבות של ׳open authorization׳ (הרשאה פתוחה), והמילה השנייה חשובה. OAuth הוא באמת על מתן הרשאה מוגבלת. כשאפליקציה מבקשת ׳להתחבר עם Google׳, היא יכולה גם לבקש הרשאות מסוימות, כמו קריאת היומן או אנשי הקשר שלך, ואתה יכול לאשר או לדחות כל אחת. אתה מוסר מפתח צר ומוגדר, לא את מפתח האב לכל החשבון שלך.
הדימוי של הכרטיס המגנטי של המלון
כשאתה נכנס למלון, אתה מוכיח את הזהות שלך פעם אחת בקבלה. בתמורה אתה מקבל כרטיס מגנטי. הכרטיס פותח את החדר שלך ואולי את חדר הכושר, אבל לא את החדרים של אורחים אחרים, לא את הכספת, לא את משרד המנהל. הוא עובד רק למשך השהות שלך, וברגע שאתה עוזב, הוא מפסיק לעבוד. המלון לעולם לא מעתיק את מפתחות הבית שלך ולא לומד את כתובת הבית שלך רק כדי לתת לך להיכנס לחדר.
OAuth עובד באותו אופן. גוגל היא הקבלה שכבר מכירה אותך. האסימון שהיא מנפיקה הוא הכרטיס המגנטי: מוגבל לדברים מסוימים, תקף לזמן מוגבל, וניתן לביטול. האפליקציה שהתחברת אליה מקבלת בדיוק את הגישה שאישרת ולא יותר. אם אי פעם תרצה לנתק אותה, אתה חוזר לחשבון הגוגל שלך, מוצא את האפליקציה ברשימת השירותים המחוברים שלך, ומבטל את הכרטיס. האפליקציה ננעלת בחוץ מיד, ולעולם לא היית צריך לשנות את הסיסמה האמיתית שלך.
למה OAuth בטוח יותר מסיסמאות
זה החלק שמפתיע בעלי עסקים. לתת לגוגל או לאפל לטפל בהתחברות הוא בדרך כלל בטוח יותר מלבנות מערכת סיסמאות משלך. הנה למה, זה מול זה.
| דאגה | התחברות עם סיסמה מסורתית | OAuth (התחבר עם Google) |
|---|---|---|
| איפה הסיסמה שלך חיה | נשמרת על ידי כל אפליקציה שאתה משתמש בה | רק אצל גוגל; האפליקציה לעולם לא רואה אותה |
| אם האפליקציה נפרצת | הסיסמה שלך יכולה לדלוף | אין סיסמה לדלוף; רק אסימון ניתן לביטול |
| אבטחה נוספת כמו אימות דו-שלבי | רק אם כל אפליקציה בונה אותה | אתה מקבל את ההגנה החזקה של גוגל אוטומטית |
| סיסמאות בשימוש חוזר | דליפה אחת מסכנת חשבונות רבים | אין מה לעשות בו שימוש חוזר, אז אין מה להפיץ |
| ביטול גישה | שנה סיסמאות אפליקציה אחר אפליקציה | לחיצה אחת בחשבון הגוגל שלך |
התובנה המרכזית היא שפחות עותקים של הסיסמה שלך משמעם פחות דרכים שהיא תדלוף. עם OAuth, רק ספק מהימן אחד מחזיק את האישורים שלך, והספק הזה משקיע עצומות באבטחה, זיהוי הונאות והגנה דו-שלבית שאפליקציה קטנה תתקשה להשתוות אליהן. אתה יורש את כל זה בחינם. כמובן, זה גם אומר שחשבון הגוגל או האפל שלך הופך למפתח חשוב יחיד, אז להגן על החשבון האחד הזה היטב חשוב יותר מתמיד.
מה משמעות ההצעה של OAuth לאפליקציה שלך
אם אתה מפעיל אפליקציה או מתכנן לבנות אחת, הצעת ׳התחבר עם Google׳ היא אחד הפיצ׳רים בעלי הערך הגבוה והחיכוך הנמוך ביותר שאתה יכול להוסיף. הנה מה שזה עושה לך ולמשתמשים שלך.
- הרשמה מהירה יותר. הקשה אחת במקום מילוי טופס והמצאת סיסמה. פחות חיכוך משמעו שיותר אנשים באמת מסיימים להירשם.
- פחות סיסמאות שנשכחות. המשתמשים שלך לעולם לא צריכים לזכור סיסמה חדשה לאפליקציה שלך, אז אתה מטפל בהרבה פחות בקשות ׳אפס לי את הסיסמה׳.
- פחות נטל אבטחה עליך. אתה לא שומר סיסמאות, אז אתה לא המקום שבו דליפת סיסמה קורית. זה מסיר קטגוריה שלמה של סיכון ואחריות.
- רושם ראשוני אמין. כפתור התחברות מוכר ורשמי מסמן שהאפליקציה שלך בנויה כראוי, מה שבונה בשקט ביטחון.
זה לא הכל יתרונות, ואני כן עם לקוחות לגבי הפשרות. אתה תלוי בכך שהספק יהיה זמין, חלק מהמשתמשים מעדיפים לא לקשר חשבונות, ובדרך כלל כדאי שעדיין תציע התחברות רגילה עם מייל לצדו עבור מי שרוצה אותה. אבל לרוב האפליקציות, הוספת OAuth לצד התחברות סטנדרטית היא ניצחון ברור. זה מתחבר לתמונה הרחבה של איך אפליקציות מדברות עם שירותים דרך API, מאחר ש-OAuth הוא הדרך הסטנדרטית שבה שירות אחד נותן לאחר באופן מאובטח הרשאה לפעול בשם משתמש.
שאלות הפרטיות ששווה להבין
דאגה הוגנת היא: אם אני מתחבר עם גוגל, מה האפליקציה לומדת עליי, ומה גוגל לומדת על איפה אני מתחבר? שתיהן סבירות, והתשובות הכנות מרגיעות ברגע שאתה יודע איך זה עובד.
כשאתה משתמש ב׳התחבר עם Google׳, האפליקציה מקבלת רק את המידע הספציפי שאתה מאשר במסך ההסכמה, בדרך כלל השם והמייל שלך, ורק את ההרשאות הנוספות שאתה מעניק במפורש. היא לא מקבלת את הסיסמה שלך, את שאר נתוני הגוגל שלך, או כל דבר שלא אישרת. אתה תמיד יכול לסקור ולבטל את ההרשאות האלה מאוחר יותר בהגדרות חשבון הגוגל שלך, ואפליקציה בנויה היטב מבקשת את המינימום שהיא צריכה במקום לחטוף הכל.
מהצד העסקי, אם אתה מציע OAuth באפליקציה שלך, אתה לוקח על עצמך גם אחריות פרטיות: בקש רק את ההרשאות שאתה באמת צריך, הסבר למה, וטפל בנתונים שאתה מקבל בזהירות. בקשת יותר גישה ממה שהאפליקציה שלך משתמשת בה היא גם דגל אדום של פרטיות למשתמשים וגם נטל אבטחה עבורך. הגישה הנקייה ביותר, וזו שאני תמיד בונה לקראתה, היא לבקש את המינימום, להיות שקוף לגביו, ולהקל על משתמשים להתנתק.
אז האם צריך לאכפת לך מ-OAuth?
אם יש לך אפליקציה, או אתה בונה אחת, אז כן. אתה לא צריך להבין את לחיצת היד הטכנית יותר משאתה צריך לדעת איך מלון מתכנת כרטיס מגנטי. אתה רק צריך לדעת ש-OAuth מאפשר לאנשים להתחבר בבטחה באמצעות חשבון שהם כבר סומכים עליו, שהוא חוסך ממך שמירת סיסמאות, ושבדרך כלל הוא הופך את האפליקציה שלך גם לקלה יותר להצטרפות וגם לקשה יותר לפריצה. עבור המשתמשים שלך, זה אומר סיסמה אחת פחות להמציא ודרך של לחיצה אחת לבטל גישה מתי שהם רוצים.
אם אתה בונה אפליקציה ורוצה התחברות שהיא מאובטחת, חלקה ומכבדת פרטיות, זה בדיוק סוג הדבר שאני מגדיר נכון, כולל הרשאות ההסכמה, התחברות המייל החלופית, ופרטי האבטחה שקל לטעות בהם. קבע שיחה ותספר לי מה אתה בונה, ואני אמליץ על גישת ההתחברות הנכונה למשתמשים שלך. אפשר גם להגיע אליי דרך טופס יצירת הקשר. כדי להבין את הטכנולוגיה שעומדת בבסיס האופן שבו שירותים מתחברים באופן מאובטח, קרא את המדריך שלי על מה זה API.
שאלות נפוצות
מה זה OAuth במילים פשוטות?
OAuth היא הטכנולוגיה שמאחורי ׳התחבר עם Google׳ וכפתורים דומים. היא מאפשרת לך להתחבר לאפליקציה באמצעות חשבון שכבר יש לך, בלי שהאפליקציה תראה אי פעם את הסיסמה שלך. זה עובד כמו כרטיס מגנטי של מלון: ספק מהימן מאמת אותך פעם אחת ומנפיק אסימון מוגבל וניתן לביטול שנותן רק את הגישה שאישרת.
האם ׳התחבר עם Google׳ בטוח יותר מסיסמה?
בדרך כלל כן. הסיסמה שלך חיה רק אצל גוגל, לא אצל כל אפליקציה, אז אם אפליקציה נפרצת אין סיסמה לדלוף, רק אסימון ניתן לביטול. אתה גם יורש את ההגנה הדו-שלבית החזקה של גוגל אוטומטית. הסייג העיקרי הוא שחשבון הגוגל שלך הופך למפתח חשוב אחד, אז להגן עליו היטב חשוב יותר.
האם האפליקציה שלי צריכה להציע ׳התחבר עם Google׳?
לרוב האפליקציות, כן, לצד התחברות מייל סטנדרטית. זה מזרז הרשמה, מקצץ בקשות סיסמה שנשכחה, ומסיר את הנטל והסיכון של שמירת סיסמאות בעצמך. הפשרות הן תלות בזמינות הספק ושחלק מהמשתמשים מעדיפים לא לקשר חשבונות, ולכן חכם לשמור גם אפשרות מייל.
מה אפליקציה לומדת עליי כשאני מתחבר עם Google?
רק את המידע הספציפי שאתה מאשר במסך ההסכמה, בדרך כלל השם והמייל שלך, בתוספת כל הרשאה נוספת שאתה מעניק במפורש. היא לעולם לא מקבלת את הסיסמה שלך או נתוני גוגל אחרים שלא אישרת. אתה יכול לסקור ולבטל את ההרשאות האלה בכל עת בהגדרות חשבון הגוגל שלך, ואפליקציות טובות מבקשות רק את המינימום שהן צריכות.
איך אני מבטל גישה של אפליקציה אחרי שימוש ב-OAuth?
היכנס לאפליקציות המחוברות או הגדרות האבטחה של חשבון הגוגל או האפל שלך, מצא את האפליקציה ברשימה, והסר את הגישה שלה. האפליקציה ננעלת בחוץ מיד, כמו ביטול כרטיס מגנטי של מלון, ולעולם לא צריך לשנות את הסיסמה האמיתית שלך. ביטול בלחיצה אחת הוא אחד היתרונות הגדולים של OAuth על פני התחברויות מסורתיות.
להמשך קריאה
על הכותב
יהונתן סעדיה
מהנדס פרילנסר לאוטומציה, אתרים ו-MVP
אני יהונתן סעדיה, מהנדס בכיר שבונה אוטומציה עסקית, אתרים מותאמים ומוצרי MVP לעסקים קטנים ובינוניים בארה"ב, אירופה וישראל. המדריכים האלה נכתבים מתוך עבודה אמיתית עם לקוחות, לא מתיאוריה.
בוא נעבוד יחדיש לך פרויקט דומה?
ספר לי מה אתה מנסה להפוך לאוטומטי או לבנות, ואומר לך מהי הדרך המהירה והאמינה ביותר ליישם את זה.
