מהו OIDC?
למד אודות OpenID Connect (OIDC), פרוטוקול אימות המאמת זהויות משתמשים כאשר הם נכנסים כדי לגשת למשאבים דיגיטליים.
OpenID Connect (OIDC) מוגדר
OpenID Connect (OIDC) הוא פרוטוקול אימות זהות שהוא הרחבה של הרשאה פתוחה (OAuth) 2.0 כדי לתקנן את התהליך לאימות והרשאה של משתמשים כאשר הם נכנסים כדי לגשת לשירותים דיגיטליים. OIDC מספק אימות, כלומר אימות שמשתמשים הם מי שהם אומרים שהם. OAuth 2.0 מאשר לאילו מערכות משתמשים אלה מורשים לגשת. OAuth 2.0 משמש בדרך כלל כדי לאפשר לשני יישומים לא קשורים לשתף מידע מבלי לפגוע בנתוני המשתמש. לדוגמה, אנשים רבים משתמשים בחשבונות הדואר האלקטרוני או המדיה החברתית שלהם כדי להיכנס לאתר של ספק חיצוני במקום ליצור שם משתמש וסיסמה חדשים. OIDC משמש גם כדי לספק כניסה יחידה. ארגונים יכולים להשתמש במערכת מאובטחת לניהול זהויות וגישה (IAM) כגון Microsoft Entra ID (לשעבר Azure Active Directory) כמאמת הראשי של זהויות ולאחר מכן להשתמש ב- OIDC כדי להעביר אימות זה לאפליקציות אחרות. כך המשתמשים צריכים להיכנס פעם אחת בלבד באמצעות שם משתמש וסיסמה אחד כדי לגשת לאפליקציות מרובות.
רכיבים עיקריים של OIDC
קיימים שישה רכיבים עיקריים ב- OIDC:
- אימות הוא תהליך האימות של המשתמש שהוא מי שהוא אומר שהוא.
- לקוח הוא התוכנה, כגון אתר אינטרנט או יישום, המבקשת אסימונים המשמשים לאימות משתמש או גישה למשאב.
- צדדים מסתמכים הם האפליקציות שמשתמשות בספקי OpenID כדי לאמת משתמשים.
- אסימוני זהות מכילים נתוני זהות, כולל התוצאה של תהליך האימות, מזהה עבור המשתמש ומידע על האופן והמועד שבו המשתמש מאומת.
- ספקי OpenID הם היישומים שעבורם למשתמש כבר יש חשבון. תפקידם ב- OIDC הוא לאמת את המשתמש ולהעביר מידע זה לצד המסתמך עליו.
- משתמשים הם אנשים או שירותים המבקשים לגשת ליישום מבלי ליצור חשבון חדש או לספק שם משתמש וסיסמה.
כיצד פועל אימות OIDC?
אימות OIDC פועל על-ידי מתן אפשרות למשתמשים להיכנס ליישום אחד ולקבל גישה ליישום אחר. לדוגמה, אם משתמש מעוניין ליצור חשבון באתר חדשות, ייתכן שיש לו אפשרות להשתמש ב- Facebook כדי ליצור את החשבון שלו במקום ליצור חשבון חדש. אם הם בוחרים ב- Facebook, הם משתמשים באימות OIDC. Facebook, שמכונה 'ספק OpenID', מטפל בתהליך האימות, והוא מקבל את הסכמת המשתמש לספק מידע ספציפי, כגון פרופיל משתמש, לאתר החדשות, שהוא הצד הנתון.
אסימוני מזהה
ספק OpenID משתמש באסימוני מזהה כדי לשדר תוצאות אימות וכל מידע רלוונטי לצד המסתמך. דוגמאות לסוג הנתונים הנשלחים כוללות מזהה, כתובת דואר אלקטרוני ושם.
טווחים
טווחים מגדירים מה המשתמש יכול לעשות עם הגישה שלו. OIDC מספק טווחים סטנדרטיים, המגדירים דברים כגון עבור איזה צד מסתמך נוצר האסימון, מתי האסימון נוצר, מתי יפוג תוקפו של האסימון ועוצמת ההצפנה המשמשת לאימות המשתמש.
תהליך אימות טיפוסי של OIDC כולל את השלבים הבאים:
- משתמש עובר לאפליקציה שברצונך לגשת אליה (הצד המסתמך).
- המשתמש מקליד את שם המשתמש והסיסמה שלו.
- הצד המסתמך שולח בקשה לספק OpenID.
- ספק OpenID מאמת את אישורי המשתמש ומקבל הרשאה.
- ספק OpenID שולח אסימון זהות ולעתים קרובות אסימון גישה לצד המסתמך.
- הצד המסתמך שולח את אסימון הגישה למכשיר של המשתמש.
- למשתמש תינתן גישה בהתבסס על המידע שסופק באסימון הגישה ובצד המסתמך.
מהן זרימות OIDC?
זרימות OIDC מגדירות כיצד אסימונים נדרשים ונמסרים לצד המסתמך. כמה דוגמאות:
זרימות אימות OIDC: ספק OpenID שולח קוד ייחודי ל- Relying Party. לאחר מכן, ה- Relying Party שולח את הקוד הייחודי בחזרה לספק OpenID בתשלום עבור האסימון. שיטה זו משמשת כדי שספק OpenID יוכל לאמת את הצד המסתמך לפני שליחת האסימון. הדפדפן אינו יכול לראות את האסימון בשיטה זו, דבר המסייע לשמור על אבטחתו.
זרימות אימות OIDC עם הרחבת PKCE: זרימה זו זהה לזרימת ההרשאה של OIDC, למעט שהיא משתמשת במפתח ציבורי עבור הרחבת חילופי קוד (PKCE) לשליחת תקשורת כקוד Hash. זה מקטין את הסיכויים כי האסימון ייורט.
פרטי כניסה של לקוח: זרימה זו מספקת גישה לממשקי API באינטרנט באמצעות זהות היישום עצמו. הוא משמש בדרך כלל לתקשורת שרת-לשרת ולקובצי Script אוטומטיים שאינם דורשים אינטראקציה עם המשתמש.
קוד מכשיר: זרימה זו מאפשרת למשתמשים להיכנס ולגשת לממשקי API מבוססי אינטרנט במכשירים המחוברים לאינטרנט שאין להם דפדפנים או שיש להם חוויית מקלדת גרועה, כגון טלוויזיה חכמה.
זרימות נוספות, כגון זרימה משתמעת של OIDC, המיועדת ליישומים מבוססי דפדפן, אינן מומלצות מכיוון שהן מהוות סיכון אבטחה.
OIDC לעומת OAuth 2.0
OIDC נבנה מעל OAuth 2.0 כדי להוסיף אימות. פרוטוקול OAuth 2.0 פותח תחילה ולאחר מכן OIDC נוסף כדי לשפר את היכולות שלו. ההבדל בין שתי האפשרויות הוא ש- OAuth 2.0 מספק הרשאה, בעוד ש- OIDC מספק אימות. OAuth 2.0 מאפשר למשתמשים לקבל גישה לצד מסתמך, באמצעות החשבון שלהם עם ספק OpenID, ו- OIDC מאפשר לספק OpenID להעביר פרופיל משתמש לצד המסתמך. OIDC גם מאפשר לארגונים להציע למשתמשים שלהם כניסה יחידה.
היתרונות של אימות OIDC
על-ידי הפחתת מספר החשבונות שהמשתמשים צריכים לגשת לאפליקציות, OIDC מציע כמה יתרונות הן לאנשים והן לארגונים:
מפחית את הסיכון לגניבת סיסמאות
כאשר אנשים צריכים להשתמש בסיסמאות מרובות כדי לגשת לאפליקציות הדרושות להם לעבודה ולחיים האישיים שלהם, הם בוחרים לעתים קרובות בסיסמאות קלות לשנן, כגון Password1234!, ומשתמשים באותה סיסמה בכמה חשבונות. פעולה זו מגדילה את הסיכון שגורם רע ינחש את הסיסמה. ברגע שהם יידעו את הסיסמה לחשבון אחד, ייתכן שהם יוכלו לגשת גם לחשבונות אחרים. על-ידי הפחתת מספר הסיסמאות שמישהו צריך לזכור, הוא מגדיל את הסיכויים שהוא ישתמש בסיסמה חזקה ומאובטחת יותר.
שיפור פקדי האבטחה
על-ידי ריכוז האימות ביישום אחד, ארגונים יכולים גם להגן על הגישה בין מספר אפליקציות באמצעות בקרות גישה חזקות. OIDC תומך באימות דו-גורמי ורב-גורמי, המחייבים אנשים לאמת את זהותם באמצעות לפחות שניים מהאפשרויות הבאות:
משהו שהמשתמש יודע, לרוב זאת תהיה סיסמה.
משהו שיש להם, כגון מכשיר או אסימון מהימן שלא ניתן לשכפל בקלות.
משהו פיזי של המשתמש, כגון סריקה של טביעת אצבע או פנים.
אימות רב-גורמי הוא שיטה מוכחת להפחתת הסכנה בחשבון. ארגונים יכולים גם להשתמש ב- OIDC כדי להחיל אמצעי אבטחה אחרים, כגון ניהול גישה מורשית, הגנה באמצעות סיסמה, אבטחת כניסה, או הגנה על זהות, באפליקציות מרובות.
מפשט את חוויית המשתמש
כניסה לחשבונות מרובים לאורך היום עשויה לצרוך זמן ותסכול עבור אנשים. בנוסף, אם הם יאבדו או ישכחו סיסמה, איפוס שלה עלול לשבש עוד יותר את הפרודוקטיביות. עסקים המשתמשים ב- OIDC כדי לספק לעובדים שלהם כניסה יחידה עוזרים להבטיח שכוח העבודה שלהם מקדיש זמן רב יותר לעבודה פרודוקטיבית במקום לנסות לקבל גישה לאפליקציות. ארגונים גם מאפשרים ללקוחות להירשם לשירותים שלהם ולהשתמש בהם אם הם מאפשרים לאנשים להשתמש בחשבון Microsoft, Facebook או Google שלהם כדי להיכנס.
תיקנון אימות
קרן OpenID, הכוללת מותגים בעלי פרופיל גבוה כמו Microsoft ו- Google, בנתה את OIDC. הוא תוכנן לאפשר פעולה הדדית ותומך בפלטפורמות ובספריות רבות, כולל iOS, Android, Microsoft Windows וספקי זהויות וענן העיקריים.
ייעול ניהול זהויות
ארגונים המשתמשים ב- OIDC כדי לספק כניסה יחידה לעובדים ולשותפים שלהם יכולים להפחית את מספר פתרונות ניהול הזהויות שהם צריכים לנהל. הדבר מקל על מעקב אחר הרשאות משתנות ומאפשר למנהלי מערכת להשתמש בממשק אחד כדי להחיל מדיניות גישה וכללים על יישומים מרובים. חברות המשתמשות ב-OIDC כדי לאפשר לאנשים להיכנס לאפליקציות שלהם באמצעות ספק OpenID מפחיתות את מספר הזהויות שהם צריכים לנהל בכלל.
דוגמאות ומקרי שימוש של OIDC
ארגונים רבים משתמשים ב- OIDC כדי לאפשר אימות מאובטח בין אפליקציות אינטרנט ומכשירים ניידים. הנה כמה דוגמאות:
כאשר משתמש נרשם לחשבון Spotify, מוצעות לו שלוש אפשרויות: להירשם באמצעות Facebook, להירשם באמצעות Google, להירשם באמצעות כתובת האימייל. משתמשים שבחרו להירשם ל- Facebook או ל- Google משתמשים ב- OIDC כדי ליצור חשבון. הם ינותבו מחדש לספק OpenID שהם בחרו (Google או Facebook) ולאחר שהם ייכנסו, ספק OpenID ישלח את פרטי הפרופיל הבסיסיים של Spotify. המשתמש אינו חייב ליצור חשבון חדש עבור Spotify והסיסמאות שלו יישארו מוגנות.
LinkedIn מספק גם דרך למשתמשים ליצור חשבון באמצעות חשבון Google שלהם במקום ליצור חשבון נפרד עבור LinkedIn.
חברה רוצה לספק כניסה יחידה לעובדים שיצטרכו לגשת אל Microsoft Office 365, Salesforce, Box ו- Workday כדי לבצע את עבודתם. במקום לדרוש מהעובדים ליצור חשבון נפרד עבור כל אחת מאפליקציות אלה, החברה משתמשת ב- OIDC כדי לספק גישה לכל ארבעת היישומים. עובדים יוצרים חשבון אחד, וכל פעם שהם ייכנסו, הם מקבלים גישה לכל היישומים הדרושים להם לעבודה.
יישום OIDC לאימות מאובטח
OIDC מספק פרוטוקול אימות לפישוט חוויות הכניסה עבור משתמשים ולשיפור האבטחה. זהו פתרון נהדר לעסקים המעוניינים לעודד לקוחות להירשם לשירותים שלהם ללא הטרחה של ניהול חשבונות. הוא גם מאפשר לארגונים להציע לעובדים שלהם ולמשתמשים אחרים כניסה יחידה מאובטחת לאפליקציות מרובות. ארגונים יכולים להשתמש בפתרונות זהות וגישה התומכים ב- OIDC, כגון Microsoft Entra, כדי לנהל את כל הזהויות ומדיניות אבטחת האימות שלהם במקום אחד.
קבל מידע נוסף על האבטחה של Microsoft
-
מזהה Microsoft Entra
חבר באופן מאובטח עובדים, לקוחות ושותפים לאפליקציות, למכשירים ולנתונים שלהם באמצעות פתרון לניהול זהויות וגישה בענן.
-
ניהול מזהה Microsoft Entra
ודא אוטומטית שלאנשים המתאימים יש את הגישה המתאימה לאפליקציות ולשירותים המתאימים.
-
מזהה מאומת ב- Microsoft Entra
ספק ביזור לזהויות באמצעות שירות אישורים מנוהלים הניתנים לאימות שמבוסס על תקנים פתוחים.
-
זהות עומסי עבודה של Microsoft Entra
נהל ואבטח את הזהויות שמוענקות לאפליקציות ולשירותים.
-
שאלות נפוצות
-
OIDC הוא פרוטוקול אימות זהות הפועל עם OAuth 2.0 כדי לתקנן את התהליך לאימות והרשאה של משתמשים כאשר הם נכנסים כדי לגשת לשירותים דיגיטליים. OIDC מספק אימות, כלומר אימות שמשתמשים הם מי שהם אומרים שהם. OAuth 2.0 מאשר לאילו מערכות משתמשים אלה מורשים לגשת. OIDC ו- OAuth 2.0 משמשים בדרך כלל כדי לאפשר לשני יישומים לא קשורים לשתף מידע מבלי לפגוע בנתוני המשתמש.
-
גם OIDC וגם שפת סימון הצהרת אבטחה (SAML) הם פרוטוקולי אימות זהות המאפשרים למשתמשים להיכנס באופן מאובטח פעם אחת ולגשת למספר יישומים. SAML הוא פרוטוקול ישן יותר שאומץ באופן נרחב עבור כניסה יחידה. הוא משדר נתונים באמצעות תבנית XML. OIDC הוא פרוטוקול חדש יותר המשתמש בתבנית JSON כדי לשדר נתוני משתמש. OIDC צובר פופולריות מכיוון שהוא קל יותר ליישום מאשר SAML ועובד טוב יותר עם יישומים למכשירים ניידים.
-
OIDC מייצג פרוטוקול OpenID Connect, שהוא פרוטוקול אימות זהות המשמש כדי לאפשר לשני יישומים לא קשורים לשתף פרטי פרופיל משתמש מבלי לפגוע באישורי משתמש.
-
OIDC נבנה מעל OAuth 2.0 כדי להוסיף אימות. פרוטוקול OAuth 2.0 פותח תחילה ולאחר מכן OIDC נוסף כדי לשפר את היכולות שלו. ההבדל בין שתי האפשרויות הוא ש- OAuth 2.0 מספק הרשאה, בעוד ש- OIDC מספק אימות. OAuth 2.0 מאפשר למשתמשים לקבל גישה לצד מסתמך, באמצעות החשבון שלהם עם ספק OpenID, ו- OIDC מאפשר לספק OpenID להעביר פרופיל משתמש לצד המסתמך. פונקציונליות זו גם מאפשרת לארגונים להציע למשתמשים שלהם כניסה יחידה. זרימות OAuth 2.0 ו- OIDC דומות, אך הן משתמשות במונחים מעט שונים.
זרימה אופיינית של OAuth 2.0 כוללת את השלבים הבאים:
- משתמש עובר ליישום אליו ברצונו לגשת (שרת המשאבים).
- שרת המשאבים מנתב מחדש את המשתמש ליישום שבו יש לו חשבון (הלקוח).
- המשתמש נכנס באמצעות האישורים שלו עבור הלקוח.
- הלקוח מאמת את הגישה של המשתמש.
- הלקוח שולח אסימון גישה לשרת המשאבים.
- שרת המשאבים מעניק למשתמש גישה.
זרימת OIDC אופיינית כוללת את השלבים הבאים:
- משתמש עובר לאפליקציה שברצונך לגשת אליה (הצד המסתמך).
- המשתמש מקליד את שם המשתמש והסיסמה שלו.
- הצד המסתמך שולח בקשה לספק OpenID.
- ספק OpenID מאמת את אישורי המשתמש ומקבל הרשאה.
- ספק OpenID שולח אסימון זהות ולעתים קרובות אסימון גישה לצד המסתמך.
- הצד המסתמך שולח את אסימון הגישה למכשיר של המשתמש.
- למשתמש תינתן גישה בהתבסס על המידע שסופק באסימון הגישה ובצד המסתמך.
-
ספק OpenID משתמש באסימוני זיהוי כדי לשדר תוצאות אימות וכל מידע רלוונטי ליישום הצד המסתמך עליו. דוגמאות לסוג הנתונים הנשלחים כוללות מזהה, כתובת דואר אלקטרוני ושם.
עקוב אחר 'האבטחה של Microsoft'