הגדרת apigee-sso לגישה ל-HTTPS

Edge for Private Cloud גרסה 4.18.05

במאמר התקנה והגדרה של Edge SSO מוסבר איך להתקין ולהגדיר את מודול ה-SSO של Edge לשימוש ב-HTTP ביציאה 9099, כפי שצוין על ידי את המאפיין הבא בקובץ התצורה:

SSO_TOMCAT_PROFILE=DEFAULT

לחלופין, אפשר להגדיר את SSO_TOMCAT_PROFILE לאחת מהאפשרויות הבאות כדי לאפשר גישת HTTPS:

  • SSL_PROXY – מגדיר את apigee-sso במצב שרת proxy, כלומר התקין מאזן עומסים לפני apigee-sso ו-TLS הופסק בעומס איזון. לאחר מכן צריך לציין את היציאה שבה נעשה שימוש ב-apigee-sso לבקשות מהעומס איזון.
  • SSL_TERMINATION – מופעלת גישת TLS אל apigee-sso, מודול ה-SSO של Edge, יציאה לבחירתך. במצב הזה צריך לציין מאגר מפתחות שמכיל אישור חתום CA. לא ניתן להשתמש באישור בחתימה עצמית.

אפשר להפעיל HTTPS בזמן ההתקנה הראשונית וההגדרה apigee-sso. אפשר גם להפעיל אותה מאוחר יותר.

הפעלת גישת HTTPS ל-apigee-sso באמצעות אחד המצבים תשבית את HTTP גישה. כלומר, אי אפשר לגשת ל-apigee-sso באמצעות HTTP וגם HTTPS בו-זמנית.

הפעלת מצב SSL_PROXY

במצב SSL_PROXY, המערכת משתמש במאזן עומסים מול מודול Edge SSO ומסיים את פרוטוקול TLS במאזן העומסים. לחשבון לפי הנתון הבא, מאזן העומסים מסיים את השימוש ב-TLS ביציאה 443, ולאחר מכן מעביר את הבקשות מודול Edge SSO ביציאה 9099:

בהגדרה הזו, אפשר לסמוך על החיבור ממאזן העומסים למודול Edge SSO כך שאין צורך להשתמש ב-TLS לחיבור הזה. אבל ישויות חיצוניות כמו SAML ה-IdP, עכשיו צריך לגשת למודול ה-SSO של Edge ביציאה 443, לא ביציאה הלא מוגנת של 9099.

הסיבה להגדרה של מודול Edge SSO במצב SSL_PROXY היא שמודול Edge SSO יוצרת באופן אוטומטי כתובות URL להפניה אוטומטית שמשמשות את ה-IdP באופן חיצוני כחלק מתהליך האימות. לכן, כתובות ה-URL להפניה אוטומטית חייבות להכיל את מספר היציאה החיצוני במאזן העומסים, 443 אינץ' בדוגמה הזו, ולא היציאה הפנימית במודול ה-SSO של Edge, 9099.

הערה: לא צריך ליצור אישור ומפתח TLS עבור מצב SSL_PROXY כי החיבור ממאזן העומסים למודול Edge SSO משתמשת ב-HTTP.

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

    לאחר מכן, מעדכנים את ממשק המשתמש של Edge:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-sso -f configFile

    מידע נוסף זמין במאמר הפעלת SAML בממשק המשתמש של Edge.

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

  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 SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. צריך לעדכן את ההגדרה של ה-IdP כדי לבצע עכשיו בקשת HTTPS ביציאה 9443 של העומס כדי לגשת ל-Edge SSO. מידע נוסף זמין בקטע הגדרת SAML IDP לקבלת יותר.
  4. מעדכנים את ההגדרות של ממשק המשתמש של Edge ל-HTTPS על ידי הגדרת המאפיינים הבאים:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https

    מידע נוסף זמין במאמר הפעלת SAML בממשק המשתמש של Edge.

  5. אם התקנת את פורטל השירותים למפתחים, עליך לעדכן אותו כך שישתמש ב-HTTPS כדי גישה ל-Ede SSO. למידע נוסף, ראו הגדרת פורטל השירותים למפתחים שאפשר להשתמש בו ב-SAML לתקשורת עם Edge.

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

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

בתרחיש הזה, מגדירים TLS ב-Edge SSO בדיוק כמו שעשיתם למעלה, מצב SSL_TERMINATION. אבל אם הטעינה במאזן נעשה שימוש במספר יציאת TLS שונה מזה שמשמש את Edge SSO ב-TLS, אז צריך גם לציין המאפיין SSO_TOMCAT_PROXY_PORT בקובץ התצורה. לדוגמה:

  • מאזן העומסים מסיים TLS ביציאה 443
  • שירות Edge SSO מסיים 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.