הגדרת SSO של Apigee לגישת HTTPS

במאמר התקנה והגדרה של Apigee SSO מוסבר איך להתקין ולהגדיר את מודול ה-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 יציאה לבחירתך. במצב הזה צריך לציין מאגר מפתחות שמכיל אישור חתומה על ידי CA. לא ניתן להשתמש באישור עם חתימה עצמית.

אפשר להפעיל 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 המודול יוצר באופן אוטומטי כתובות אתרים להפניה מחדש שנמצאות בשימוש של ה-IdP כחלק מהאימות תהליך האימות. לכן, כתובות ה-URL להפניה אוטומטית חייבות להכיל את מספר היציאה החיצונית בטעינה הוא מאזן, 443 בדוגמה הזו, ולא היציאה הפנימית במודול ה-SSO של Apigee, 9099.

כדי להגדיר את מודול ה-SSO של Apigee למצב SSL_PROXY:

  1. מוסיפים את ההגדרות הבאות לקובץ התצורה:
    # 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
  2. מגדירים את מודול ה-SSO של Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. צריך לעדכן את ההגדרה של ה-IdP כדי לשלוח עכשיו בקשת HTTPS ביציאה 443 של העומס מאזן כדי לגשת ל-SSO של Apigee. מידע נוסף זמין במאמרים הבאים:
  4. מעדכנים את ההגדרות של ממשק המשתמש של 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 בממשק המשתמש הקלאסי.

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

מידע נוסף מופיע בקטע הפעלת IDP חיצוני בממשק המשתמש של Edge. מידע נוסף.

הפעלת מצב SSL_TERMINATION

במצב SSL_TERMINATION צריך:

  • ליצור אישור ומפתח TLS ולאחסן אותם בקובץ מאגר מפתחות. לא ניתן להשתמש עם חתימה עצמית. צריך ליצור אישור מ-CA.
  • עדכון ההגדרות האישיות של apigee-sso.

כדי ליצור קובץ מאגר מפתחות מהאישור ומהמפתח:

  1. יוצרים ספרייה לקובץ ה-JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. עוברים לספרייה החדשה:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. יוצרים קובץ JKS שמכיל את האישור והמפתח. צריך לציין מאגר מפתחות למצב הזה שמכיל אישור חתום על ידי CA. לא ניתן להשתמש באישור בחתימה עצמית. לדוגמה של ליצירת קובץ JKS, ראו הגדרת TLS/SSL עבור Edge בשטח.
  4. יוצרים קובץ JKS בבעלות ה-apigee משתמש:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

כדי להגדיר את מודול ה-SSO של Apigee:

  1. מוסיפים את ההגדרות הבאות לקובץ התצורה:
    # 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
  2. מגדירים את מודול ה-SSO של Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. צריך לעדכן את ההגדרה של ה-IdP כדי לבצע עכשיו בקשת HTTPS ביציאה 9443 של העומס מאזן כדי לגשת ל-SSO של Apigee. חשוב לוודא שאף שירות אחר לא משתמש ביציאה הזאת.

    למידע נוסף, קראו את המאמרים הבאים:

  4. מעדכנים את ההגדרות של ממשק המשתמש של Edge ל-HTTPS על ידי הגדרת המאפיינים הבאים:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. אם התקנת את פורטל השירותים למפתחים, עליך לעדכן אותו כך שישתמש ב-HTTPS כדי גישה ל-Apigee SSO. מידע נוסף זמין במאמר להגדיר את הפורטל לשימוש במזהים חיצוניים.

הגדרת SSO_TOMCAT_PROXY_PORT כשמשתמשים במצב SSL_TERMINATION

יכול להיות שיש מאזן עומסים לפני מודול ה-SSO של Apigee שמסיים את ה-TLS בעומס. אבל גם מאפשר TLS בין מאזן העומסים לבין SSO של Apigee. באיור שלמעלה במצב SSL_PROXY, פירוש הדבר הוא שהחיבור ממאזן העומסים לשימושי SSO ב-Apigee TLS (אבטחת שכבת התעבורה).

בתרחיש הזה, מגדירים TLS ב-Apigee SSO בדיוק כמו שעשיתם למעלה, מצב SSL_TERMINATION. אבל אם הטעינה המאזן משתמש במספר יציאת TLS שונה מזה שמשמש את Apigee SSO ל-TLS, אז צריך גם לציין המאפיין 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.