ממשק המשתמש של Edge וה-Management API של Edge פועלים על ידי שליחת בקשות לשרת הניהול של Edge, שבו שרת הניהול תומך בסוגי האימות הבאים:
- אימות בסיסי: מתחברים לממשק המשתמש של Edge או שולחים בקשות ל-API לניהול של Edge באמצעות שם המשתמש והסיסמה.
- OAuth2: החלפת פרטי הכניסה של Edge Basic Auth בטוקן גישה ובטוקן רענון של OAuth2. שולחים קריאות ל-Edge management API על ידי העברת טוקן הגישה מסוג OAuth2 בכותרת Bearer של קריאה ל-API.
ב-Edge אפשר להשתמש בספקי הזהויות (IDP) החיצוניים הבאים לאימות:
- Security Assertion Markup Language (SAML) 2.0: יצירת אסימוני גישה של OAuth מטענות נכוֹנוּת (assertions) של SAML שמוחזרות על ידי ספק זהויות של SAML.
- Lightweight Directory Access Protocol (LDAP): משתמשים בשיטות האימות של LDAP, חיפוש וקישור או קישור פשוט, כדי ליצור אסימוני גישה מסוג OAuth.
גם ספקי זהויות ב-SAML וגם ספקי זהויות ב-LDAP תומכים בסביבת כניסה יחידה (SSO). כשמשתמשים בספק זהויות חיצוני עם Edge, אפשר לתמוך ב-SSO לממשק המשתמש ול-API של Edge, בנוסף לכל שירות אחר שאתם מספקים ושתומך גם בספק הזהויות החיצוני שלכם.
ההוראות בקטע הזה להפעלת תמיכה ב-IdP חיצוני שונות מההוראות לאימות חיצוני בדרכים הבאות:
- הקטע הזה מוסיף תמיכה ב-SSO
- הקטע הזה מיועד למשתמשים בממשק המשתמש של Edge (ולא בממשק המשתמש הקלאסי)
- הקטע הזה נתמך רק בגרסה 4.19.06 ואילך
מידע על מודול SSO ב-Apigee
כדי לתמוך ב-SAML או ב-LDAP ב-Edge, צריך להתקין את apigee-sso, מודול SSO ב-Apigee.
בתמונה הבאה מוצג מודול ה-SSO ב-Apigee בהתקנה של Edge for Private Cloud:
אפשר להתקין את מודול ה-SSO ב-Apigee באותו צומת שבו נמצאים ממשק המשתמש של Edge ושרת הניהול, או בצומת נפרד. מוודאים שלמודול ה-SSO ב-Apigee יש גישה לשרת הניהול דרך יציאה 8080.
יציאה 9099 צריכה להיות פתוחה בצומת מודול SSO ב-Apigee כדי לתמוך בגישה למודול SSO ב-Apigee מדפדפן, מ-SAML או מ-LDAP IDP חיצוניים, ומשרת הניהול ומממשק המשתמש של Edge. כחלק מהגדרת מודול SSO ב-Apigee, אתם יכולים לציין שהחיבור החיצוני משתמש ב-HTTP או בפרוטוקול HTTPS המוצפן.
מודול SSO ב-Apigee משתמש במסד נתונים של Postgres שאפשר לגשת אליו דרך יציאה 5432 בצומת של Postgres. בדרך כלל אפשר להשתמש באותו שרת Postgres שהתקנתם עם Edge, או בשרת Postgres עצמאי או בשני שרתי Postgres שהוגדרו במצב מאסטר/המתנה. אם העומס על שרת Postgres גבוה, אתם יכולים גם ליצור צומת Postgres נפרד רק עבור מודול SSO ב-Apigee.
נוספה תמיכה ב-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. האסימונים האלה נוצרים על ידי מודול ה-SSO ב-Apigee, שמקבל טענות נכוֹנוּת (assertions) של SAML שמוחזרות על ידי ספק הזהויות.
אחרי שיוצרים את אסימון ה-OAuth מטענת נכוֹנוּת (assertion) של SAML, הוא תקף למשך 30 דקות ואסימון הרענון תקף למשך 24 שעות. יכול להיות שסביבת הפיתוח שלכם תומכת באוטומציה של משימות פיתוח נפוצות, כמו אוטומציה של בדיקות או אינטגרציה רציפה/פריסה רציפה (CI/CD), שדורשות אסימונים עם משך זמן ארוך יותר. במאמר שימוש ב-SAML עם משימות אוטומטיות מוסבר איך ליצור אסימונים מיוחדים למשימות אוטומטיות.
מידע על LDAP
Lightweight Directory Access Protocol (LDAP) הוא פרוטוקול פתוח של אפליקציה, שנחשב לתקן בתחום, שמשמש לגישה לשירותי מידע של ספריות מבוזרות ולתחזוקה שלהם. שירותי ספריות יכולים לספק כל קבוצה מאורגנת של רשומות, לרוב עם מבנה היררכי, כמו ספריית אימייל של חברה.
אימות LDAP ב-SSO ב-Apigee משתמש במודול Spring Security LDAP. לכן, שיטות האימות ואפשרויות ההגדרה של תמיכת LDAP ב-SSO ב-Apigee קשורות ישירות לאלה שנמצאות ב-Spring Security LDAP.
LDAP עם Edge for the Private Cloud תומך בשיטות האימות הבאות מול שרת תואם LDAP:
- חיפוש ושיוך (שיוך עקיף)
- Simple Bind (קישור ישיר)
מודול ה-SSO ב-Apigee מנסה לאחזר את כתובת האימייל של המשתמש ולעדכן את רשומת המשתמש הפנימית שלו, כדי שתהיה כתובת אימייל עדכנית בקובץ, כי 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, אתם יכולים לציין שהחיבור ישתמש ב-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 במודול SSO ב-Apigee
כברירת מחדל, החיבור ל-SSO ב-Apigee משתמש ב-HTTP דרך יציאה 9099 בצומת שמארח את apigee-sso, מודול ה-SSO ב-Apigee. ב-apigee-sso מובנה מופע של Tomcat שמטפל בבקשות HTTP ו-HTTPS.
מודול ה-SSO ב-Apigee ו-Tomcat תומכים בשלושה מצבי חיבור:
- DEFAULT: הגדרת ברירת המחדל תומכת בבקשות HTTP ביציאה 9099.
- SSL_TERMINATION: הפעלת גישת TLS למודול SSO ב-Apigee ביציאה שבחרתם. במצב הזה צריך לציין מפתח ואישור TLS.
- SSL_PROXY: מגדיר את ה-SSO ב-Apigee במצב שרת proxy, כלומר התקנתם מאזן עומסים לפני
apigee-ssoוסיימתם את ה-TLS במאזן העומסים. אפשר לציין את היציאה שמשמשת אתapigee-ssoלבקשות ממאזן העומסים.
הפעלת תמיכה ב-IDP חיצוני בפורטל
אחרי שמפעילים תמיכה ב-IdP חיצוני ל-Edge, אפשר להפעיל אותה גם לפורטל Apigee Developer Services (או פשוט הפורטל). הפורטל תומך באימות SAML ו-LDAP כששולחים בקשות ל-Edge. שימו לב שזה שונה מאימות SAML ו-LDAP להתחברות של מפתחים לפורטל. אתם מגדירים בנפרד אימות של ספק זהויות חיצוני להתחברות של מפתחים. מידע נוסף זמין במאמר הגדרת הפורטל לשימוש בספקי זהויות.
כחלק מהגדרת הפורטל, צריך לציין את כתובת ה-URL של מודול ה-SSO ב-Apigee שהתקנתם עם Edge:
