סקירה כללית של אימות IDP חיצוני (ממשק משתמש חדש של Edge)

ממשק המשתמש של Edge ו-Edge Management API פועלים על ידי שליחת בקשות ל-Edge Management Server, שבו שרת הניהול תומך בסוגי האימות הבאים:

  • אימות בסיסי: מתחברים לממשק המשתמש של Edge או שולחים בקשות ל-Edge Management API על ידי העברת שם המשתמש והסיסמה.
  • OAuth2: מחליפים את פרטי הכניסה של Edge Basic Auth באסימון גישה ובטוקן רענון של OAuth2. כדי לשלוח קריאות ל-API לניהול Edge, צריך להעביר את אסימון הגישה של OAuth2 בכותרת Bearer של קריאה ל-API.

‫Edge תומך בשימוש בספקי הזהויות החיצוניים הבאים לאימות:

  • Security Assertion Markup Language ‏ (SAML) 2.0: יצירת גישת OAuth מטענות נכוֹנוּת של SAML שמוחזרות על ידי ספק זהויות של SAML.
  • Lightweight Directory Access Protocol (LDAP): אפשר להשתמש בשיטות האימות של LDAP לחיפוש, לקישור או לקישור פשוט כדי ליצור אסימוני גישה מסוג OAuth.

ספקי הזהויות (IdP) ב-SAML וב-LDAP תומכים בסביבת כניסה יחידה (SSO). אם משתמשים בספק זהויות חיצוני (IdP) עם Edge, אפשר לתמוך ב-SSO לממשק המשתמש ול-API של Edge, בנוסף לכל שירות אחר שאתם מספקים ושגם תומך בספק הזהויות החיצוני שלכם.

ההוראות בקטע הזה להפעלת תמיכה בספק זהויות חיצוני שונות מההוראות שבקטע אימות חיצוני בדרכים הבאות:

  • בקטע הזה מוספת תמיכה ב-SSO
  • הקטע הזה מיועד למשתמשים בממשק המשתמש של Edge (לא בממשק המשתמש הקלאסי)
  • הקטע הזה נתמך רק בגרסה 4.19.06 ואילך

מידע על Apigee SSO

כדי לתמוך ב-SAML או ב-LDAP ב-Edge, צריך להתקין את apigee-sso, מודול ה-SSO של Apigee. בתמונה הבאה מוצג Apigee SSO בהתקנה של Edge for Private Cloud:

שימוש ביציאות ב-Apigee SSO

אפשר להתקין את מודול ה-SSO של Apigee באותו צומת כמו ממשק המשתמש של Edge ושרת הניהול, או בצומת משלו. מוודאים של-Apigee SSO יש גישה לשרת הניהול ביציאה 8080.

היציאה 9099 צריכה להיות פתוחה בצומת Apigee SSO כדי לתמוך בגישה ל-Apigee SSO מדפדפן, מ-SAML או מ-LDAP IDP חיצוניים, ומשרת הניהול וממשק המשתמש של Edge. במסגרת ההגדרה של Apigee SSO, אפשר לציין שהחיבור החיצוני ישתמש בפרוטוקול HTTP או בפרוטוקול HTTPS המוצפן.

ב-Apigee SSO נעשה שימוש במסד נתונים של Postgres שאפשר לגשת אליו ביציאה 5432 בצומת Postgres. בדרך כלל אפשר להשתמש באותו שרת Postgres שהתקנתם עם Edge, בין אם זה שרת Postgres עצמאי או שני שרתי Postgres שהוגדרו במצב ראשי/המתנה. אם העומס על שרת Postgres גבוה, אפשר גם ליצור צומת Postgres נפרד רק בשביל Apigee SSO.

נוספה תמיכה ב-OAuth2 ל-Edge for Private Cloud

כמו שצוין למעלה, הטמעת SAML ב-Edge מסתמכת על אסימוני גישה של OAuth2.לכן, נוספה תמיכה ב-OAuth2 ל-Edge for Private Cloud. מידע נוסף זמין במאמר מבוא ל-OAuth 2.0.

מידע על SAML

לאימות SAML יש כמה יתרונות. באמצעות SAML אתם יכולים:

  • שליטה מלאה בניהול המשתמשים. כשמשתמשים עוזבים את הארגון וההקצאה שלהם מבוטלת באופן מרכזי, הגישה שלהם ל-Edge נחסמת אוטומטית.
  • קובעים איך המשתמשים מאומתים כדי לגשת ל-Edge. אפשר לבחור סוגי אימות שונים לארגונים שונים ב-Edge.
  • שליטה במדיניות האימות. יכול להיות שספק ה-SAML שלכם תומך במדיניות אימות שתואמת יותר לסטנדרטים של הארגון.
  • אתם יכולים לעקוב אחרי התחברויות, היציאות מהחשבון, ניסיונות התחברות שנכשלו ופעילויות בסיכון גבוה בפריסת Edge.

כש-SAML מופעל, הגישה לממשק המשתמש של Edge ול-Edge Management API מתבצעת באמצעות אסימוני גישה מסוג OAuth2. האסימונים האלה נוצרים על ידי מודול Apigee SSO שמקבל טענות נכוֹנוּת (assertions) של SAML שמוחזרות על ידי ספק הזהויות.

אחרי שהוא נוצר מטענת נכוֹנוּת (assertion) של SAML, אסימון ה-OAuth תקף ל-30 דקות ואסימון הרענון תקף ל-24 שעות. יכול להיות שסביבת הפיתוח שלכם תומכת באוטומציה של משימות פיתוח נפוצות, כמו אוטומציה של בדיקות או אינטגרציה רציפה/פריסה רציפה (CI/CD), שדורשות טוקנים עם משך זמן ארוך יותר. במאמר שימוש ב-SAML עם משימות אוטומטיות מוסבר איך ליצור טוקנים מיוחדים למשימות אוטומטיות.

מידע על LDAP

‫Lightweight Directory Access Protocol (LDAP)‎ הוא פרוטוקול אפליקציה פתוח, בתקן התעשייה, לגישה לשירותי מידע בספריות מבוזרות ולתחזוקה שלהם. שירותי ספרייה עשויים לספק כל קבוצה מאורגנת של רשומות, לרוב עם מבנה היררכי, כמו ספריית אימייל של חברה.

אימות LDAP ב-Apigee SSO משתמש במודול LDAP של Spring Security. כתוצאה מכך, שיטות האימות ואפשרויות ההגדרה לתמיכה ב-LDAP ב-Apigee SSO קשורות ישירות לאלה שנמצאות ב-Spring Security LDAP.

‫LDAP עם Edge for the Private Cloud תומך בשיטות האימות הבאות מול שרת שתואם ל-LDAP:

  • חיפוש וקישור (קישור עקיף)
  • כריכה פשוטה (כריכה ישירה)

מערכת Apigee SSO מנסה לאחזר את כתובת האימייל של המשתמש ולעדכן איתה את רשומת המשתמש הפנימית, כדי שתהיה כתובת אימייל עדכנית בקובץ, כי מערכת Edge משתמשת באימייל הזה למטרות הרשאה.

כתובות URL של Edge API ושל ממשק המשתמש

כתובת ה-URL שבה אתם משתמשים כדי לגשת לממשק המשתמש של Edge ול-Edge Management API היא אותה כתובת שבה השתמשתם לפני שהפעלתם SAML או LDAP. בממשק המשתמש של Edge:

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

כאשר edge_UI_IP_DNS היא כתובת ה-IP או שם ה-DNS של המכונה שמארחת את ממשק המשתמש של Edge. במסגרת ההגדרה של Edge UI, אפשר לציין שהחיבור ישתמש בפרוטוקול HTTP או בפרוטוקול HTTPS המוצפן.

‫Edge management API:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

ms_IP_DNS היא כתובת ה-IP או שם ה-DNS של שרת הניהול. במסגרת הגדרת ה-API, אפשר לציין שהחיבור ישתמש ב-HTTP או בפרוטוקול ה-HTTPS המוצפן.

הגדרת TLS ב-Apigee SSO

כברירת מחדל, החיבור ל-Apigee SSO משתמש ב-HTTP ביציאה 9099 בצומת שמארח את apigee-sso, מודול Apigee SSO. ב-apigee-sso יש מופע של Tomcat שמטפל בבקשות HTTP ו-HTTPS.

ב-Apigee SSO וב-Tomcat יש תמיכה בשלושה מצבי חיבור:

  • ברירת מחדל: הגדרת ברירת המחדל תומכת בבקשות HTTP ביציאה 9099.
  • SSL_TERMINATION: מאפשר גישת TLS ל-Apigee SSO ביציאה שתבחרו. במצב הזה צריך לציין מפתח ואישור TLS.
  • SSL_PROXY: מגדיר את Apigee SSO במצב proxy, כלומר התקנתם מאזן עומסים לפני apigee-sso וסיימתם את TLS במאזן העומסים. אפשר לציין את היציאה שמשמשת ב-apigee-sso לבקשות ממאזן העומסים.

הפעלת תמיכה ב-IdP חיצוני בפורטל

אחרי שמפעילים תמיכה בספק זהויות חיצוני ב-Edge, אפשר להפעיל אותה גם בפורטל שירותי הפיתוח של Apigee (או בקיצור, הפורטל). הפורטל תומך באימות SAML ו-LDAP כששולחים בקשות ל-Edge. שימו לב שהאימות הזה שונה מאימות SAML ו-LDAP לכניסה של מפתחים לפורטל. אתם מגדירים בנפרד אימות חיצוני של ספק זהויות (IdP) לכניסה של מפתחים. מידע נוסף זמין במאמר בנושא הגדרת הפורטל לשימוש בספקי זהויות.

במסגרת הגדרת הפורטל, צריך לציין את כתובת ה-URL של מודול Apigee SSO שהתקנתם באמצעות Edge:

תהליך הבקשה והתגובה עם טוקנים