מה זה Keycloak ? (סקירה כללית)
|
Getting your Trinity Audio player ready...
|

במאמר הבא אתן סקירה כללית על Keycloak , תכונות מרכזיות, יתרונות השימוש בו, use cases נפוצים והדגמה קצרה.
הסקירה מבוססת בין השאר ידע מצטבר שלנו כחברה המספקת תמיכה למוצר (פירוט נוסף בסוף המאמר).
מהו Keycloak?
Keycloak הוא פתרון לניהול זהויות וגישה (IAM) , מבוסס קוד פתוח, המיועד לאבטחת יישומים ושירותים מודרניים באמצעות מנגנוני אימות והרשאות.
Keycloak פועל כשרת אימות והרשאות מרכזי, המפשט את תהליך אבטחת היישומים והשירותים: במקום שכל יישום ינהל מסד נתונים משלו של משתמשים ולוגיקת אימות, Keycloak מספק פלטפורמה מאוחדת שבה משתמשים מאמתים את זהותם פעם אחת ומקבלים גישה למספר יישומים מחוברים – תפיסה הידועה בשם "SSO" כלומר Single Sign on.
המוצר נמצא בשימוש של אלפי ארגונים, גדולים וקטנים, ובשנים האחרונות מידת הפופולריות שלו עלתה, ובשנה האחרונה הוא נחשב למעין סטנדרט דה-פקטו לפתרון SSO שהוא Self-hosted ומבוסס קוד-פתוח.
תכונות עיקריות של Keycloak :
Keycloak מציע סט חזק של תכונות שהופכות אותו למתאים למגוון רחב של צרכים ארגוניים:
- Single Sign on (SSO): משתמשים מתחברים פעם אחת ומקבלים גישה לכל היישומים המחוברים ללא צורך להזין מחדש את פרטי ההתחברות.
- איחוד משתמשים (User Federation): מאפשר אינטגרציה עם ספריות משתמשים קיימות כגון LDAP ו-Active Directory (ונוספים), ובכך מפחית את הצורך בניהול משתמשים כפול.
- תיווך זהויות (Identity Brokering): מאפשר אימות דרך ספקי זהויות חיצוניים
(לדוגמה, Google, Facebook, Azure AD) ותומך בתיווך בין סביבות אימות זהות שונות. - אימות דו-שלבי או רב-שלבי (MFA): תומך בשכבות אבטחה נוספות כגון סיסמה חד-פעמית (OTP), אימות באמצעות Email , SMS או אימות ביומטרי.
- בקרת גישה מבוססת תפקידים (RBAC): מאפשרת ניהול גישה פרטני על ידי הקצאת תפקידים והרשאות למשתמשים או לקבוצות.
- פרוטוקולים סטנדרטיים: בנוי על תקנים תעשייתיים כולל OpenID Connect, OAuth 2.0 ו-SAML,
מה שמבטיח תאימות עם מגוון רחב של יישומים ושירותים. - ממשקי משתמש ניתנים להתאמה אישית: מספק דפי התחברות, הרשמה וניהול חשבון הניתנים להתאמה אישית כדי להתאים למיתוג הארגוני.
- קונסולות ניהול וחשבון: ניהול מרכזי של משתמשים, תפקידים, לקוחות ותצורות, וכן ניהול חשבון בשירות עצמי עבור משתמשים.
- התחברות באמצעות רשתות חברתיות (Social Login): אינטגרציה קלה עם חשבונות מדיה חברתית לאימות משתמשים.
- התאמה אישית של טוקנים (Token Customization): יכולת למפות תכונות משתמש ותפקידים לתוך טוקנים לצורך הרשאות גמישות.
יתרונות השימוש ב- Keycloak :
- אבטחה מרכזית: מפשט את ניהול האבטחה על ידי ריכוז לוגיקת האימות וההרשאות, מה שמפחית את הסיכון לפגיעויות ביישומים בודדים.
- חווית משתמש יעילה: משתמשים צריכים לאמת את זהותם פעם אחת בלבד, מה שמשפר את הנוחות והפרודוקטיביות.
- הפחתת מאמצי פיתוח: מפתחים יכולים להתמקד בתכונות היישום במקום לבנות ולתחזק מודולי אימות מותאמים אישית.
- אינטגרציה גמישה: תומך באינטגרציה עם מגוון רחב של מערכות ופרוטוקולים חיצוניים,
מה שהופך אותו למתאים לסביבות IT מגוונות. - אבטחה משופרת: מציע תכונות אבטחה מובנות כגון מדיניות סיסמאות, זיהוי התקפות "Brute force" ואימות של מספר גורמים.
- תמיכה בסקייל גדול (Scalability): מתאים לארגונים בכל הגדלים, החל מסטארט-אפים קטנים ועד לתאגידים גדולים.
Use Cases נפוצים לשימוש ב- Keycloak :
- כניסה (login) מאובטחת לארגונים (Enterprise SSO): מאפשר לעובדים לגשת למספר יישומים פנימיים באמצעות נקודת התחברות יחידה ומאושרת.
- ניהול זהויות וגישה של לקוחות (CIAM): מנהל אימות והרשאות עבור משתמשים חיצוניים, ותומך בתרחישי B2B ו-B2B2C.
- אבטחת API: מאבטח ממשקי API על ידי מתן אימות מבוסס טוקנים ומדיניות הרשאות פרטנית.
- אינטגרציה עם ספקי זהויות חיצוניים: מאפשר למשתמשים לאמת את זהותם באמצעות אישורים קיימים מ-Azure AD, Google או ספקים אחרים.
- Self-service למשתמשים: במידת הצורך – ניתן לאפשר למשתמשי-קצה לנהל את החשבונות שלהם, לאפס סיסמאות ולעדכן פרטי פרופיל.
חברות וארגונים המשתמשים ב-Keycloak
Keycloak מאומץ באופן נרחב ע"י אלפי חברות (מעל 4000), במגוון תעשיות (פיננסי, IT, Telco, ריטייל, תעשיות בטחוניות ועוד).
כמה מהחברות שידוע שמשתמשות ב-Keycloak כוללות את:
- Vodafone
- Thoughtworks
- Roche Pharmaceuticals
- Hitachi
- SoftServe
- Ericsson
- OpenTalk
- Petrobras
- Wayfair
- Macquarie Group
- CommScope
- IMMO Mousquetaires
- PicPay
- GoDaddy Inc
- EPAM Systems Inc
- Globant
- SAP SE
סיפורי לקוח שהתפרסמו:
- Hitachi משתמשת ב- Keycloak כדי לשפר את רמת האבטחה הפיננסית שלה (כספקית פתרונות לבנקים)
- OpenTalk (ספקית Video conference גרמנית) משיגה אימות משתמשים משוכלל באמצעות Keycloak
הדגמה של Keycloak :
בהדגמה ניתן לראות שימוש ב- Keycloak ל- login וכיצד זה עובד מאחורי הקלעים
(הסרטון קופץ לזמן הספציפי של ההדגמה עצמה).
לסיכום:
Keycloak התבסס בשנים האחרונות כפתרון IAM גמיש, מאובטח ותומך בגדילה ובסקייל גדול, המפשט את תהליכי האימות וההרשאות עבור יישומים ושירותים מודרניים.