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

בהגדרה הזו, אתם סומכים על החיבור ממאזן העומסים למודול SSO ב-Apigee, ולכן אין צורך להשתמש ב-TLS בחיבור הזה. עם זאת, ישויות חיצוניות, כמו ה-IDP, צריכות עכשיו לגשת למודול SSO ב-Apigee דרך יציאה 443, ולא דרך היציאה הלא מוגנת 9099.
הסיבה להגדרת מודול ה-SSO ב-Apigee במצב SSL_PROXY היא שמודול ה-SSO ב-Apigee יוצר באופן אוטומטי כתובות URL להפניה אוטומטית שמשמשות באופן חיצוני את ספק הזהויות כחלק מתהליך האימות. לכן, כתובות ה-URL האלה להפניה אוטומטית צריכות להכיל את מספר היציאה החיצונית במאזן העומסים, 443 בדוגמה הזו, ולא את היציאה הפנימית במודול SSO ב-Apigee, 9099.
כדי להגדיר את מודול ה-SSO ב-Apigee למצב SSL_PROXY:
- מוסיפים את ההגדרות הבאות לקובץ התצורה:
# Enable SSL_PROXY mode. SSO_TOMCAT_PROFILE=SSL_PROXY # Specify the apigee-sso port, typically between 1025 and 65535. # Typically ports 1024 and below require root access by apigee-sso. # The default is 9099. SSO_TOMCAT_PORT=9099 # Specify the port number on the load balancer for terminating TLS. # This port number is necessary for apigee-sso to auto-generate redirect URLs. SSO_TOMCAT_PROXY_PORT=443 SSO_PUBLIC_URL_PORT=443 # Set public access scheme of apigee-sso to https. SSO_PUBLIC_URL_SCHEME=https
- מגדירים את מודול ה-SSO ב-Apigee:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- מעדכנים את ההגדרות של ספק הזהויות כדי לשלוח בקשת HTTPS ביציאה 443 של מאזן העומסים, כדי לגשת ל-SSO ב-Apigee. מידע נוסף זמין במאמרים הבאים:
- כדי לעדכן את ההגדרה של ממשק המשתמש של Edge ל-HTTPS, מגדירים את המאפיינים הבאים בקובץ התצורה:
SSO_PUBLIC_URL_PORT=443 SSO_PUBLIC_URL_SCHEME=https
ואז מעדכנים את ממשק המשתמש של Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile
צריך להשתמש ברכיב
edge-uiבממשק המשתמש הקלאסי. - אם התקנתם את פורטל שירותי הפיתוח של Apigee (או פשוט הפורטל), עדכנו אותו כך שישתמש ב-HTTPS כדי לגשת למודול SSO ב-Apigee. מידע נוסף זמין במאמר הגדרת הפורטל לשימוש בספקי זהויות חיצוניים.
מידע נוסף זמין במאמר הפעלת ספק זהויות חיצוני בממשק המשתמש של Edge.
הפעלת מצב SSL_TERMINATION
כדי להשתמש במצב SSL_TERMINATION, צריך:
- יוצרים אישור ומפתח TLS ושומרים אותם בקובץ מאגר מפתחות. אי אפשר להשתמש באישור עם חתימה עצמית. צריך ליצור אישור מרשות אישורים (CA).
- עדכון הגדרות התצורה של
apigee-sso.
כדי ליצור קובץ מאגר מפתחות מהאישור ומהמפתח:
- יוצרים ספרייה לקובץ ה-JKS:
sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- עוברים לספרייה החדשה:
cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
- יוצרים קובץ JKS שמכיל את האישור והמפתח. במצב הזה צריך לציין מאגר מפתחות שמכיל אישור שחתום על ידי רשות אישורים (CA). אי אפשר להשתמש באישור עם חתימה עצמית. דוגמה ליצירת קובץ JKS מופיעה במאמר הגדרת TLS/SSL ל-Edge On Premises.
- מגדירים את קובץ ה-JKS כך שיהיה בבעלות המשתמש apigee:
sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl
כדי להגדיר את מודול ה-SSO ב-Apigee:
- מוסיפים את ההגדרות הבאות לקובץ התצורה:
# Enable SSL_TERMINATION mode. SSO_TOMCAT_PROFILE=SSL_TERMINATION # Specify the path to the keystore file. SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks SSO_TOMCAT_KEYSTORE_ALIAS=sso # The password specified when you created the keystore. SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword # Specify the HTTPS port number between 1025 and 65535. # Typically ports 1024 and below require root access by apigee-sso. # The default is 9099. SSO_TOMCAT_PORT=9443 SSO_PUBLIC_URL_PORT=9443 # Set public access scheme of apigee-sso to https. SSO_PUBLIC_URL_SCHEME=https
- מגדירים את מודול ה-SSO ב-Apigee:
/opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
- מעדכנים את ההגדרות של ספק הזהויות כדי לשלוח בקשת HTTPS ביציאה 9443 של מאזן העומסים, כדי לגשת ל-SSO ב-Apigee. חשוב לוודא שאף שירות אחר לא משתמש ביציאה הזו.
למידע נוסף, קראו את המאמרים הבאים:
- כדי לעדכן את ההגדרה של ממשק המשתמש של Edge ל-HTTPS, מגדירים את המאפיינים הבאים:
SSO_PUBLIC_URL_PORT=9443 SSO_PUBLIC_URL_SCHEME=https
- אם התקנתם את פורטל שירותי המפתחים, עדכנו אותו כך שישתמש ב-HTTPS כדי לגשת למודול SSO ב-Apigee. מידע נוסף זמין במאמר הגדרת הפורטל לשימוש בספקי זהויות חיצוניים.
הגדרת SSO_TOMCAT_PROXY_PORT כשמשתמשים במצב SSL_TERMINATION
יכול להיות שיש לכם מאזן עומסים לפני מודול SSO ב-Apigee, שסוגר את ה-TLS במאזן העומסים אבל גם מפעיל את ה-TLS בין מאזן העומסים לבין מודול SSO ב-Apigee. באיור שלמעלה, במצב SSL_PROXY, המשמעות היא שהחיבור ממאזן העומסים ל-Apigee SSO משתמש ב-TLS.
בתרחיש הזה, מגדירים TLS במודול SSO ב-Apigee בדיוק כמו שהגדרתם למעלה למצב SSL_TERMINATION. עם זאת, אם מאזן העומסים משתמש במספר יציאת TLS שונה מזה שבו משתמש מודול SSO ב-Apigee, אז צריך לציין גם את המאפיין SSO_TOMCAT_PROXY_PORT בקובץ התצורה. לדוגמה:
- מאזן העומסים סוגר את ה-TLS ביציאה 443
- מודול ה-SSO ב-Apigee מסיים את ה-TLS ביציאה 9443
חשוב לכלול את ההגדרה הבאה בקובץ התצורה:
# Specify the port number on the load balancer for terminating TLS. # This port number is necessary for apigee-sso to generate redirect URLs. SSO_TOMCAT_PROXY_PORT=443 SSO_PUBLIC_URL_PORT=443
מגדירים את ה-IDP ואת ממשק המשתמש של Edge כדי לשלוח בקשות HTTPS ביציאה 443.