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

Edge for Private Cloud גרסה 4.17.09

במאמר התקנה והגדרה של SSO ב-Edge מוסבר איך להתקין ולהגדיר את מודול ה-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, המערכת משתמשת במאזן עומסים מול מודול ה-SSO של Edge ומסיים את TLS במאזן העומסים. באיור הבא, מאזן העומסים מסיים את ה-TLS ביציאה 443, ואז מעביר בקשות למודול ה-SSO של Edge ביציאה 9099:

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

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

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

כדי להגדיר מודול SSO של Edge למצב 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. מידע נוסף זמין במאמר הגדרת ה-IdP ב-SAML.
  4. מעדכנים את ההגדרה של ממשק משתמש Edge עבור HTTPS על ידי הגדרה של המאפיינים הבאים:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https


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

הפעלת מצב SSL_QUERYINATION

עבור מצב SSL_TERMINATION צריך:

  • יצרו אישור ומפתח TLS ושמרו אותם בקובץ Keystore. לא ניתן להשתמש באישור בחתימה עצמית. יש ליצור אישור מ-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 On Premises.
  4. יוצרים את קובץ ה-JKS בבעלות משתמש ה-"apigee":
    > sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

כך מגדירים מודול SSO של Edge:

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


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

הגדרת SSO_TOMCAT_PROXY_PORT בעת שימוש במצב SSL_QUERYINATION

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

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

  • מאזן העומסים מסיים את ה-TLS ביציאה 443
  • SSO באמצעות Edge מסיים את ה-TLS (אבטחת שכבת התעבורה) ביציאה 9443

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

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

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