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

Edge for Private Cloud גרסה 4.18.01

במאמר התקנה והגדרה של 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. מוסיפים את ההגדרות הבאות לקובץ התצורה:
    # הפעל את מצב SSL_PROXY.
    SSO_TOMCAT_PROFILE=SSL_PROXY

    # מציינים את יציאת ה-apigee-sso, בדרך כלל בין 1025 ל-65535.
    # בדרך כלל יציאות 1024 ומטה מחייבות גישה לרמה הבסיסית (root) של apigee-sso.
    ברירת המחדל היא 9099.
    SSO_TOMCAT_PORT=9099

    # צריך לציין את מספר היציאה במאזן העומסים לסיום ה-TLS.
    # מספר היציאה הזה נדרש כדי ש-apigee-sso ייצור באופן אוטומטי כתובות URL להפניה אוטומטית.
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443

    # מגדירים את סכמת הגישה הציבורית של apigee-sso ל-https.
    SSO_PUBLIC_URL_SCHEME=https
  2. הגדרת מודול ה-SSO ב-Edge:
    > /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


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

הפעלת מצב 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. מוסיפים את ההגדרות הבאות לקובץ התצורה:
    # הפעל את מצב SSL_TERMINATION.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION

    # מציינים את הנתיב לקובץ מאגר המפתחות.
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    SSO_TOMCAT_KEYSTORE_ALIAS=sso

    # הסיסמה שצוינה כשיצרת את מאגר המפתחות.
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword

    # מציינים את מספר יציאת ה-HTTPS בין 1025 ל-65535.
    # בדרך כלל יציאות 1024 ומטה מחייבות גישה לרמה הבסיסית (root) של apigee-sso.
    ברירת המחדל היא 9099.
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443

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

הגדרת 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

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

# ציון היציאה המספר במאזן העומסים לסיום ה-TLS.
# מספר היציאה הזה הוא לא צריך בשביל apigee-sso ל-geהפניה אוטומטית כתובות URL.
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

להגדיר את ה-IDP ואת ממשק המשתמש של Edge כך שיבצעו בקשות HTTPS ביציאה 443.