ממשק המשתמש של Edge ו-Edge Management API פועלים על ידי שליחת בקשות ל-Edge Management Server, שבו שרת הניהול תומך בסוגי האימות הבאים:
- אימות בסיסי: כדי להתחבר לממשק המשתמש של Edge או לשלוח בקשות ל-Edge Management API, צריך להעביר את שם המשתמש והסיסמה.
- OAuth2: מחליפים את פרטי הכניסה של Edge Basic Auth באסימון גישה ובאסימון רענון מסוג OAuth2. שולחים קריאות ל-Edge Management API על ידי העברת טוקן הגישה מסוג 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:
אפשר להתקין את מודול ה-SSO של Apigee באותו צומת כמו ממשק המשתמש של Edge ושרת הניהול, או בצומת משלו. מוודאים של-Apigee SSO יש גישה לשרת הניהול דרך יציאה 8080.
היציאה 9099 צריכה להיות פתוחה בצומת Apigee SSO כדי לתמוך בגישה ל-Apigee SSO מדפדפן, מ-IdP חיצוני של SAML או LDAP, ומשרת הניהול וממשק המשתמש של 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 של ממשק המשתמש ושל ה-API ב-Edge
כתובת ה-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 Developer Services (או בקיצור, הפורטל). הפורטל תומך באימות SAML ו-LDAP כששולחים בקשות ל-Edge. הערה: זה שונה מאימות SAML ו-LDAP לכניסת מפתחים לפורטל. אתם מגדירים בנפרד אימות של ספק זהויות חיצוני להתחברות של מפתחים. מידע נוסף זמין במאמר בנושא הגדרת הפורטל לשימוש בספקי זהויות.
במסגרת הגדרת הפורטל, צריך לציין את כתובת ה-URL של מודול Apigee SSO שהתקנתם באמצעות Edge:
