החל מגרסה OPDK 4.54.00, ארכיטקטורת ה-SSO עברה מודרניזציה. ה-identity broker (Dex) מוטמע עכשיו ישירות ברכיב apigee-openldap, כך שאין צורך להתקין מודול נפרד מדור קודם של apigee-sso.
כדי להפעיל ולהגדיר את מודול ה-SSO ב-Apigee, צריך לבצע את הפעולות הבאות:
- יצירת משתמש מכונה לממשק המשתמש החדש של Edge: יוצרים משתמש מכונה שנדרש לממשק המשתמש החדש של Edge כדי להפעיל ממשקי API לניהול.
- הגדרת מאפיינים בקובץ התצורה הנפוץ: יוצרים קובץ תצורה אחד שמכיל את המאפיינים שנדרשים גם לשירות OpenLDAP (SSO) וגם לממשק המשתמש החדש של Edge.
- יצירת מסד נתונים של SSO ב-Postgres: יוצרים מסד נתונים ל-SSO במכונה של Apigee PostgreSQL.
- החלת הגדרות ה-SSO ב-OpenLDAP: מפעילים את קובץ התצורה כדי להתחיל את ה-SSO המשולב של Apigee בצומת OpenLDAP.
- הגדרת ממשק המשתמש החדש של Edge: מעדכנים את המאפיינים של ממשק המשתמש החדש של Edge כדי להשתמש ב-SSO החדש של Apigee.
כל אחד מהשלבים האלה מתואר בקטעים הבאים.
יצירת משתמש מכונה לממשק המשתמש
ממשק המשתמש החדש של Edge דורש משתמש מכונה כדי להפעיל Management API בקצה העורפי עבור פעולות מסוימות. לשם כך, נעשה שימוש בסקריפט שמותקן מראש בצומת apigee-openldap.
מידע נוסף על הסקריפט ועל משתמשי המכונה זמין במאמר שימוש בסקריפט apigee-machine-user.
משתמשים בפקודה הבאה בצומת apigee-openldap כדי ליצור משתמש מכונה לממשק המשתמש החדש של Edge, ומוודאים שמשתמשים באותם פרטי כניסה בדיוק כשמגדירים את המאפיין בקובץ התצורה בשלב הבא.
/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh add -u ui-machine-user@apigee.com -p Secret123
הגדרת מאפיינים בקובץ התצורה הנפוץ
כדי להפעיל את מודול SSO ב-Apigee ואת ממשק המשתמש החדש של Edge, צריך להגדיר קובץ תצורה משותף (לדוגמה, /opt/silent.conf). אפשר לשנות את הנתיב ואת שם הקובץ בהתאם לסביבה.
מוסיפים את מאפייני הגדרות הבסיס הבאים אל /opt/silent.conf:
# ========================================== # SSO Enablement # ========================================== ENABLE_SSO=y # ========================================== # SSO Hostname/IP and Port config for Dex # ========================================== SSO_PUBLIC_URL_SCHEME=http SSO_PUBLIC_URL_HOSTNAME=localhost SSO_PUBLIC_URL_PORT=9099 # ========================================== # Static Client UI credentials # ========================================== MANAGEMENT_UI_SSO_CLIENT_ID=unifiedui MANAGEMENT_UI_SSO_CLIENT_SECRET=secret123 # ========================================== # Management UI & SSO redirect URLs # ========================================== MANAGEMENT_UI_SCHEME=http MANAGEMENT_UI_IP=localhost MANAGEMENT_UI_PORT=3001 # ========================================== # Management Server parameters (Required for SSO registration) # ========================================== MSIP=localhost ADMIN_EMAIL=admin@apigee.com APIGEE_ADMINPW=Secret123 # ========================================== # Machine user for UI # ========================================== UI_MACHINE_USER=ui-machine-user@apigee.com UI_MACHINE_PWD=Secret123 # ========================================== # Postgres connection parameters # ========================================== PG_HOST=postgres_host PG_USER=apigee PG_PWD=postgres_password # ========================================== # Other UI Parameters # ========================================== # Set to sso to enable SSO, default value is basic. AUTH_MODE=sso # Y to use internal LDAP for authentication, N to use external IDP SSO_LOCAL_LDAP=y MANAGEMENT_UI_APP_ENV=OPDK MANAGEMENT_UI_SSO_ENABLED=y MANAGEMENT_UI_SSO_CSRF_SECRET=secret MANAGEMENT_UI_SSO_CSRF_EXPIRATION_HOURS=24 MANAGEMENT_UI_SSO_STRICT_TRANSPORT_SECURITY_AGE_HOURS=24 MANAGEMENT_UI_SSO_PUBLIC_KEY_CACHE_HOURS=0.5
הפצת מאפייני SSO
המאפיינים של מודול SSO ב-Apigee מפוזרים בקובצי התצורה הבאים:
-
/opt/silent.conf(או קובץ התצורה בהתאמה אישית): מכיל את מאפייני התצורה הבסיסיים של SSO ושל ממשק המשתמש החדש של Edge. -
/opt/apigee/customer/application/openldap.properties: מכיל מאפייני הגדרות נוספים של SSO לתכונות אופציונליות כמו SAML ו-HTTPS.
הסקריפט setup-sso ברכיב apigee-openldap מנתח את המשתנים משני הקבצים שלמעלה. בהתאם לתרחיש לדוגמה, צריך להגדיר את המאפיינים הרלוונטיים בקובצי התצורה.
השלבים הבאים הם אופציונליים, בהתאם לסביבה שלכם:
יצירת מסד נתונים של SSO ב-Postgres
בצומת שבו פועל apigee-postgresql (צומת ראשי בהגדרה ראשונית של גיבוי), יוצרים מסד נתונים ל-SSO:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-sso-db
החלת הגדרות SSO ב-OpenLDAP
מכיוון שה-SSO של Apigee מוטמע ברכיב הספרייה, אין צורך להתקין חבילה נפרדת. פשוט מחילים את קובץ התצורה על צומת OpenLDAP.
כדי להפעיל ולהתחיל את מודול ה-SSO ב-Apigee:- מתחברים לצומת שמארח את
apigee-openldap. - מריצים את הפקודה
setup-ssoומעבירים את קובץ התצורה:/opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf
הגדרת ממשק המשתמש החדש של Edge
אחרי שמודול ה-SSO ב-Apigee פועל, צריך להגדיר את ממשק המשתמש החדש של Edge כדי לתקשר איתו.
אחרי שמפעילים ספק זהויות חיצוני בממשק המשתמש החדש של Edge, ממשק המשתמש החדש של Edge משתמש ב-OIDC/OAuth2 כדי להתחבר לשרת הניהול. אין צורך לדאוג לגבי תוקף הטוקנים בין ממשק המשתמש החדש של Edge לבין שרת הניהול של Edge. אסימונים שפג תוקפם מתרעננים באופן אוטומטי.
- מתחברים לצומת שמארח את ממשק המשתמש החדש של Edge.
- צריך לוודא שהקובץ
/opt/silent.confזמין בצומת הזה. - מפעילים את ההגדרה באמצעות הסקריפט
setup:/opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf