תוכן עניינים:
מכוניות יוקרה רבות מגיעות עם מפתח שירות. זהו מפתח מיוחד שאתה נותן לדייל החניה ובניגוד למפתח הרגיל שלך, יאפשר לנהוג במכונית למרחקים קצרים תוך חסימת הגישה לתא המטען ולפלאפון המשולב. בלי קשר למגבלות שמטיל מפתח השירות הוא הרעיון חכם מאוד. אתה נותן למישהו גישה מוגבלת לרכב שלך באמצעות מפתח מיוחד, תוך כדי שימוש במפתח אחר כדי לבטל את הנעילה של כל השאר. - המדריך הרשמי ל- OAuth 1.0
כך הסבירו הנחיות המפרט המבוססות על קהילה ב- OAuth כבר בשנת 2007. ולמרות ש- OAuth 2.0 הוא פרוטוקול חדש לחלוטין, אותו תיאור עדיין חל - OAuth נותרה דרך למשתמשים להעניק גישה לצד שלישי (וגישה מוגבלת) שלהם משאבים מבלי לשתף את הסיסמאות שלהם.
אם אתה נמצא באינטרנט באופן קבוע, רוב הסיכויים שנתקלת באתר המשתמש ב- OAuth. אחרי הכל, האתרים הגדולים בעולם, כמו פייסבוק, גוגל, מייספייס, טוויטר, פוטובוקוקט, יאהו, אברנוטה ווימייו משתמשים בתקן האימות הזה. המשך לקרוא כדי ללמוד עוד על תקן זה, ומדוע הדור הבא, OAuth 2.0, עדיין משמש באופן ניסיוני יחסית.
מה זה OAuth 2.0?
ראשית, עליכם לדעת מה OAuth, כפרוטוקול, עושה: הוא מאפשר הרשאת ממשק תכנות יישומים בין שני יישומי אינטרנט או שולחן עבודה. כתוצאה מכך אתרים מסוגלים לשתף משאבים מוגנים עם אתרים ושירותים אחרים.
לדוגמה, אם אתה משחק Scramble עם חברים באייפד שלך, אתה יכול להזין את אישורי הפייסבוק שלך, ולאפשר למשחק לעיין ברשימת החברים שלך כדי לראות מי מהם משחק את המשחק - ולהזמין אחרים להצטרף. או שתוכל להתחבר לחברים ב- Google+ על סמך מי שעוקב אחריך בטוויטר. יישומים מסוג זה הם שימושיים למשתמשים, אך הם כרוכים במתן אתר או תוכנית אחת למידע אודותיך באתר אחר.
OAuth 2.0 עובד ממש כמו הגלגול הראשון של OAuth, אך זהו סטנדרט חדש לחלוטין. המשמעות היא שהיא אינה תואמת לאחור עם OAuth 1.0. גרסה 2.0 ניקתה הרבה מהבעיות ב- OAuth המקורית וביצעה שיפורים.
תוך שמירה על הארכיטקטורה של הגירסה הראשונה, 2.0 השתפרה ב:
- אימות וחתימות. OAuth 2.0 הקל על מישהו בצד הלקוח ליישם את הפרוטוקול.
- חווית משתמש ודרכים חלופיות להוצאת אסימונים
- ביצועים, במיוחד עם אתרים ושירותים גדולים יותר
היתרונות של שימוש ב- OAuth 2.0
אחת הסיבות הטובות ביותר להשתמש ב- OAuth היא שהיא מקלה על שיתוף כל כך הרבה יותר. אנו כבר רגילים להעלות תמונות לאינסטגרם ולהעביר אותם באופן אוטומטי לטוויטר ופייסבוק. לאמיתו של דבר, מדובר בסוג קלות השימוש והקרוסאובר שממשיך להפוך את המדיה החברתית למושכת כל כך.
אבל זה לא הכל. עבור משתמשי קצה OAuth פירושו שאינכם חייבים ליצור פרופיל אחר. לדוגמה, אם ברצונך להשאיר תגובה למאמר, תוכל להשתמש בתעודות הפייסבוק או הטוויטר שלך לשם כך, במקום שתצטרך להירשם לחשבון באתר נתון. זה נהדר עבור אתרים שאתה בדרך כלל לא פעיל בהם או שאתה לא יכול לסמוך עליהם. זה יכול גם להועיל לאתרים בכך שהוא מבטיח למשתמשים זהות בפייסבוק, מה שהופך את הספאם לתגובות פחות סביר.
OAuth פירושו גם פחות סיסמאות לזכור. כדאי להשתמש בסיסמאות שונות לשירותי אתרים שונים. אז במקום לשנן סיסמה אחרת עבורכם, עליכם רק להשתמש בסיסמת הפייסבוק שלכם כדי לגשת לשירות., אגב, לא תראה את הסיסמה שלך.
אתה יכול גם להגביל לאילו משאבים ניגשים דרך OAuth שלך. לדוגמה, כשאתה משחק משחק בפייסבוק, אתה יכול לציין אם אתה רוצה שהמשחק יפורסם על הקיר שלך בשמך או לא.
עבור המפתח, OAuth 2.0 מספק קוד שפותח כבר לאימותים, תצוגת אינטראקציה חברתית ותצוגת פרופיל משתמש. המשמעות היא פחות באגים עבור מפתחים להתמודד איתם וסיכון נמוך יותר מכיוון שה- API כבר ניפץ באגים, נבדק והוכח. לבסוף, אתה נהנה גם מאחסון נתונים פחות בשרתים שלך.
איך הגיע OAuth 2.0 להיות
די ברור ש- OAuth היא תגובה לקריאה למחשוב מאובטח וקלות שימוש בשירותי אינטרנט שונים. לעומת זאת, OAuth 2.0 נבע מהצורך להפוך את OAuth למורכב פחות. אבל כל הרעיון לשניהם הגיע למעשה מ- OpenID.
OpenID הוא שירות המאפשר למשתמשים להתחבר לשירותים שונים באמצעות אישורי כניסה מאתר אחר. אבל OpenID היה מוגבל מאוד, ולכן קבוצה של אנשים שעבדו על פרוטוקולי הרשאה שונים לאתרים שלהם נפגשו. היישומים הראשונים של OAuth בוצעו בשנת 2007, והתיקון הראשון הגיע שנתיים לאחר מכן.
OAuth 2.0 הגיע למקום בשנת 2010. כוונתה הייתה להתמקד בפשטות של מפתח לקוחות ולהיות ניתן להרחבה בקלות יותר תוך שיפור חוויית המשתמש.
אתגרים קדימה?
למרות שגוגל, קלוט ושמות גדולים אחרים מיישמים את OAuth 2.0, ייתכן שעדיין יש דרך סלעית לפני הפרוטוקול הזה. יש ביקורת בקרב קהילת OAuth 2.0, כולל חששות לגבי אבטחת הפרוטוקול (רבים מאמינים שהוא פחות מאובטח מאשר OAuth 1.0).
לדברי האמר, אם משתמשים בו מתכנת מוסמך הבקיא היטב באבטחת רשת, OAuth 2.0 עובד. למרבה הצער, רק מיעוט קטן של מפתחים מתאים לחשבון זה.
בנוסף, קודי OAuth 2.0 אינם ניתנים לשימוש חוזר. לדוגמה, פרוטוקולים של OAuth 2.0 המשמשים את פייסבוק לא יוכלו להשתמש באתר אחר בקלות. מה שכן, הפרוטוקול החדש הוא למעשה הרבה יותר מורכב מהמקור.
אבל הבעיטה האמיתית עבור אנשים רבים היא ש- OAuth 2.0 לא נראה מציע שום יתרון או שיפור אמיתי לעומת 1.0. האמר כותב שאם אתה מיישם בהצלחה 1.0, אין שום סיבה לשדרג ל- 2.0.
עם זאת, OAuth 2.0 עדיין חי מאוד. אם הוא מתייחס לביקורות ולסוגיות המועלות, הוא עדיין עשוי למצוא מקום כפרוטוקול חזק מאוד. עם זאת, בעת כתיבת שורות אלה גרסת 1.0 עדיין נחשבת לגרסה הרשמית, היציבה והבדוקה של OAuth. עם זאת, עבור מפתחים שמטרתם לעבוד עם שמות גדולים בעולם המקוון, יישום פרוטוקול זה בצורה מאובטחת עשוי להפוך למיומנות מרכזית בעתיד הלא רחוק.