ממשק המשתמש של Edge ו-Edge Management API פועלים על ידי שליחת בקשות לשרת הניהול של Edge, שבו שרת הניהול תומך בסוגי האימות הבאים:
- אימות בסיסי: מתחברים לממשק המשתמש של Edge או שולחים בקשות ל-Edge management API על ידי העברת שם המשתמש והסיסמה.
- OAuth2: החלפת פרטי הכניסה של Edge Basic Auth באסימון גישה ובאסימון רענון של OAuth2. אפשר לבצע קריאות ל-Edge management API על ידי העברת אסימון הגישה מסוג OAuth2 בכותרת נושא הקריאות ל-API.
ב-Edge יש תמיכה בשימוש בספקי זהויות (IdPs) חיצוניים הבאים לצורך אימות:
- Security Assertion Markup Language (SAML) 2.0: יצירת הרשאות גישה ל-OAuth מטענות נכוֹנוּת (assertions) של SAML שמוחזרות על ידי ספק זהויות של SAML.
- Lightweight Directory Access Protocol (LDAP): שימוש בשיטות אימות מסוג חיפוש וקישור או אימות קישור פשוט של LDAP כדי ליצור אסימוני גישה ל-OAuth.
גם ספקי ה-IdP של SAML וגם ספקי ה-IdP של LDAP תומכים בסביבת כניסה יחידה (SSO). שימוש ב-IdP חיצוני עם Edge מאפשר לכם לתמוך ב-SSO בממשק המשתמש וב-API של Edge, בנוסף לכל שירות אחר שאתם מספקים שתומך גם ב-IdP החיצוני.
ההוראות בקטע הזה להפעלת תמיכה ב-IdP חיצוני שונות מההוראות לאימות חיצוני בדרכים הבאות:
- בקטע הזה נוספה תמיכה ב-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 מדפדפן, מ-SAML או מ-LDAP IDP חיצוני, ומשרת הניהול ומממשק המשתמש של Edge. כחלק מהגדרת Apigee SSO, אפשר לציין שהחיבור החיצוני ישתמש ב-HTTP או בפרוטוקול HTTPS המוצפן.
SSO ב-Apigee משתמש במסד נתונים של Postgres שאפשר לגשת אליו ביציאה 5432 בצומת Postgres. בדרך כלל אפשר להשתמש באותו שרת Postgres שהתקנתם עם Edge, בין שזה שרת Postgres עצמאי ובין שזה שני שרתי Postgres שמוגדרים במצב master/standby. אם העומס על שרת ה-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. האסימונים האלה נוצרים על ידי מודול ה-SSO של Apigee, שמקבל טענות נכוֹנוּת (assertions) של SAML שמוחזרות על ידי ה-IdP.
אחרי שיוצרים אסימון OAuth מטענת נכוֹנוּת (assertion) של SAML, הוא תקף למשך 30 דקות ואסימון הרענון תקף למשך 24 שעות. יכול להיות שסביבת הפיתוח תומכת באוטומציה של משימות פיתוח נפוצות, כמו אוטומציה של בדיקות או אינטגרציה רציפה/פריסה רציפה (CI/CD), שדורשות אסימונים עם משך זמן ארוך יותר. למידע על יצירת אסימונים מיוחדים למשימות אוטומטיות, ראו שימוש ב-SAML עם משימות אוטומטיות.
מידע על LDAP
פרוטוקול Lightweight Directory Access Protocol (LDAP) הוא פרוטוקול פתוח וסטנדרטי באפליקציות, לגישה ולתחזוקה של שירותי מידע של ספריות מבוזרות. שירותי ספרייה עשויים לספק כל קבוצה מאורגנת של רשומות, לרוב במבנה היררכי, כמו ספריית אימייל ארגונית.
האימות באמצעות LDAP ב-Apigee SSO מתבצע באמצעות מודול Spring Security LDAP. כתוצאה מכך, שיטות האימות ואפשרויות התצורה של תמיכת ה-LDAP של Apigee SSO תואמות ישירות לאלו שמופיעות ב-Spring Security LDAP.
LDAP with Edge לענן הפרטי תומך בשיטות האימות הבאות מול שרת תואם ל-LDAP:
- חיפוש ושיוך (קישור עקיף)
- Simple Bind (קישור ישיר)
שירות SSO של Apigee מנסה לאחזר את כתובת האימייל של המשתמש ולעדכן באמצעותה את רשומת המשתמש הפנימית שלו כך שתהיה כתובת אימייל עדכנית, כי Edge משתמש באימייל הזה למטרות הרשאה.
כתובות URL של ממשק משתמש ו-API של Edge
כתובת ה-URL שדרכה נכנסים לממשק המשתמש של Edge ול-Edge management API זהה לכתובת ה-URL שהשתמשתם בה לפני שהפעלתם את 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
כברירת מחדל, החיבור ל-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 חיצוני בפורטל
אחרי שמפעילים תמיכה ב-IDP חיצוני ב-Edge, אפשר להפעיל אותה גם בפורטל של Apigee Developer Services (או פשוט הפורטל). הפורטל תומך באימות SAML ו-LDAP כששולחים בקשות ל-Edge. חשוב לזכור שהאימות הזה שונה מאימות SAML ו-LDAP לכניסה של מפתחים לפורטל. צריך להגדיר אימות IdP חיצוני לכניסה של מפתחים בנפרד. מידע נוסף זמין במאמר הגדרת הפורטל לשימוש ב-IdP.
כחלק מהגדרת הפורטל, צריך לציין את כתובת ה-URL של מודול ה-SSO של Apigee שהתקנתם עם Edge: