פורטל שירותי המפתחים של Apigee (או פשוט הפורטל) פועל כלקוח של Apigee Edge. כלומר, הפורטל לא פועל כמערכת עצמאית. במקום זאת, רוב המידע שמשמש את הפורטל מאוחסן בפועל ב-Edge. במקרה הצורך, הפורטל שולח בקשה לאחזור מידע מ-Edge או לשליחת מידע אל Edge.
הפורטל תמיד משויך לארגון Edge אחד. כשמגדירים את הפורטל, אפשר לציין את פרטי הכניסה לאימות בסיסי (שם משתמש וסיסמה) של חשבון בארגון שבו הפורטל משתמש כדי לתקשר עם Edge.
אם תבחרו להפעיל IDP חיצוני כמו SAML או LDAP לאימות ב-Edge, תוכלו להגדיר את הפורטל כך שישתמש באימות הזה כשנשלחות בקשות ל-Edge. כשמגדירים את הפורטל לשימוש ב-IdP חיצוני, נוצר באופן אוטומטי חשבון משתמש חדש של מכונה בארגון Edge, שבו הפורטל משתמש כדי לשלוח בקשות ל-Edge. מידע נוסף על משתמשי מכונה מופיע במאמר אוטומציה של משימות לספקי זהויות חיצוניים.
כדי להשתמש ב-IdP חיצוני בפורטל, צריך להתקין ולהגדיר את מודול ה-SSO ב-Apigee בצומת של שרת הניהול של Edge. התהליך הכללי להפעלת IdP חיצוני בפורטל:
- מתקינים את מודול ה-SSO ב-Apigee, כמו שמתואר במאמר התקנה והגדרה של SSO ב-Apigee.
- מתקינים את הפורטל ומוודאים שההתקנה פועלת כמו שצריך. איך מתקינים את הפורטל
- מגדירים SAML או LDAP בפורטל, כמו שמתואר בקטע הזה.
- (אופציונלי) משביתים את האימות הבסיסי ב-Edge, כמו שמתואר בקטע השבתת האימות הבסיסי ב-Edge.
יצירת משתמש מכונה לפורטל
כש-IDP חיצוני מופעל, Edge תומך ביצירת טוקן OAuth2 אוטומטית באמצעות משתמשי מכונה. משתמש מכונה יכול לקבל אסימוני OAuth2 בלי לציין קוד גישה. כלומר, אתם יכולים להפוך את התהליך של קבלת אסימוני OAuth2 ורענון שלהם לאוטומטי לחלוטין.
תהליך הגדרת ה-IDP של הפורטל יוצר באופן אוטומטי משתמש מכונה בארגון שמשויך לפורטל. לאחר מכן, הפורטל משתמש בחשבון המשתמש של המכונה כדי להתחבר ל-Edge. מידע נוסף על משתמשי מכונה זמין במאמר אוטומציה של משימות לספקי זהויות חיצוניים.
מידע על אימות של חשבונות פיתוח בפורטל
כשמגדירים את הפורטל לשימוש ב-IDP חיצוני, מאפשרים לפורטל להשתמש ב-SAML או ב-LDAP כדי לבצע אימות מול Edge, כך שהפורטל יוכל לשלוח בקשות ל-Edge. עם זאת, הפורטל תומך גם בסוג משתמש שנקרא מפתחים.
המפתחים הם קהילת המשתמשים שיוצרים אפליקציות באמצעות ממשקי ה-API שלכם. מפתחי אפליקציות משתמשים בפורטל כדי לקבל מידע על ממשקי ה-API שלכם, לרשום אפליקציות שמשתמשות בממשקי ה-API שלכם, ליצור אינטראקציה עם קהילת המפתחים ולצפות במידע סטטיסטי על השימוש באפליקציות שלהם במרכז בקרה.
כשמפתח מתחבר לפורטל, הפורטל אחראי לאמת את המפתח ולאכוף הרשאות שמבוססות על תפקידים. הפורטל ממשיך להשתמש באימות בסיסי עם המפתחים גם אחרי שמפעילים אימות IDP בין הפורטל לבין Edge. מידע נוסף זמין במאמר תקשורת בין הפורטל לבין Edge.
אפשר גם להגדיר את הפורטל כך שישתמש ב-SAML או ב-LDAP כדי לאמת מפתחים. דוגמה להפעלת SAML באמצעות מודולים של Drupal של צד שלישי מופיעה במאמר שילוב SSO באמצעות SAML עם פורטל המפתחים.
קובץ תצורה של IDP לפורטל
כדי להגדיר ספק זהויות חיצוני לפורטל, צריך ליצור קובץ תצורה שמגדיר את ההגדרות של הפורטל.
בדוגמה הבאה מוצג קובץ תצורה של פורטל עם תמיכה ב-IDP:
# IP address of Edge Management Server and the node on which the Apigee SSO module is installed. IP1=22.222.22.222 # URL of Edge management API. MGMT_URL=http://$IP1:8080/v1 # Organization associated with the portal. EDGE_ORG=myorg # Information about the Apigee SSO module (apigee-sso). # Externally accessible IP or DNS of apigee-sso. SSO_PUBLIC_URL_HOSTNAME=$IP1 SSO_PUBLIC_URL_PORT=9099 # Default is http. Set to https if you enabled TLS on apigee-sso. SSO_PUBLIC_URL_SCHEME=http # SSO admin credentials as set when you installed apigee-sso. SSO_ADMIN_NAME=ssoadmin SSO_ADMIN_SECRET=Secret123 # Enables or disables external IDP support. # Default is "n", which disables external IDP support. # Change it to "y" to enable external IDs support. DEVPORTAL_SSO_ENABLED=y # The name of the OAuth2 client used to connect to apigee-sso. # The default client name is portalcli. PORTALCLI_SSO_CLIENT_NAME=portalcli # OAuth client password using uppercase, lowercase, number, and special characters. PORTALCLI_SSO_CLIENT_SECRET=Abcdefg@1 # Email address and user info for the machine user created in the Edge org specified # above by EDGE_ORG. # This account is used by the portal to make requests to Edge. # Add this email as an org admin before configuring the portal to use an external IDP. DEVPORTAL_ADMIN_EMAIL=DevPortal_SAML@google.com DEVPORTAL_ADMIN_FIRSTNAME=DevPortal DEVPORTAL_ADMIN_LASTNAME=SAMLAdmin DEVPORTAL_ADMIN_PWD=Abcdefg@1 # If set, the existing portal OAuth client is deleted and a new one is created. # The default value is "n". # Set to "y" when you configure the external IDP and change the value of # any of the PORTALCLI_* properties. PORTALCLI_SSO_CLIENT_OVERWRITE=y
כדי להפעיל תמיכה ב-IdP חיצוני בפורטל:
- בממשק המשתמש של Edge, מוסיפים את המשתמש האוטומטי שצוין על ידי
DEVPORTAL_ADMIN_EMAILלארגון שמשויך לפורטל בתור מנהל ארגון. - מריצים את הפקודה הבאה כדי להגדיר את ה-IdP החיצוני בפורטל:
/opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile
כאשר configFile הוא קובץ התצורה שמתואר למעלה.
- מתחברים לפורטל כאדמינים.
- בתפריט הראשי של Drupal, לוחצים על Configuration > Dev Portal (הגדרה > פורטל למפתחים). מופיע מסך הגדרת הפורטל, כולל ההגדרות של ה-IdP החיצוני:

שימו לב לנקודות הבאות:
- התיבה הארגון הזה תומך ב-SAML מסומנת.
- נקודת הקצה של מודול SSO ב-Apigee מלאה
- השדות מפתח API ו-Consumer secret של לקוח ה-OAuth של הפורטל מלאים.
- ההודעה Connection Successful מופיעה מתחת ללחצן Test Connection.
- כדי לבדוק שוב את החיבור, אפשר ללחוץ על הכפתור בדיקת החיבור בכל שלב.
כדי לשנות את הערכים האלה בהמשך, צריך לעדכן את קובץ התצורה ולהפעיל שוב את התהליך הזה.
השבתת ספק זהויות חיצוני בפורטל
אם תבחרו להשבית את ה-IdP החיצוני לתקשורת בין הפורטל ל-Edge, הפורטל לא יוכל יותר לשלוח בקשות ל-Edge. המפתחים יכולים להתחבר לפורטל, אבל לא יכולים לראות מוצרים או ליצור אפליקציות.
כדי להשבית את האימות באמצעות ספק זהויות חיצוני בפורטל:
- פותחים את קובץ התצורה שבו השתמשתם בעבר כדי להפעיל את ה-IdP החיצוני.
- מגדירים את הערך של המאפיין
DEVPORTAL_SSO_ENABLEDבתורn, כמו בדוגמה הבאה:DEVPORTAL_SSO_ENABLED=n
- מגדירים את הפורטל באמצעות הפקודה הבאה:
/opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile