הגדרת הפורטל לשימוש ב-SAML לתקשורת עם Edge

Edge for Private Cloud v4.18.05

פורטל שירותי המפתחים של Apigee (או פשוט הפורטל) פועל כלקוח של Apigee Edge. כלומר, הפורטל לא פועל כמערכת עצמאית. במקום זאת, רוב המידע שבו הפורטל משתמש מאוחסן ב-Edge. במקרה הצורך, הפורטל שולח בקשה לאחזור מידע מ-Edge או לשליחת מידע אל Edge.

הפורטל תמיד משויך לארגון Edge אחד. כשמגדירים את הפורטל, אפשר לציין את פרטי הכניסה לאימות הבסיסי (שם משתמש וסיסמה) של חשבון בארגון שבו הפורטל משתמש כדי לתקשר עם Edge.

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

כדי להשתמש בתמיכה של SAML בפורטל, צריך כבר להתקין ולהגדיר את מודול ה-SSO של Edge בצומת של שרת הניהול של Edge. התהליך הכללי להפעלת SAML בפורטל הוא:

  1. מגדירים את SAML ב-Edge כפי שמתואר במאמר התקנה והגדרה של SAML ל-Edge. הערה: עדיין צריך להפעיל את האימות הבסיסי ב-Edge כדי להתקין את הפורטל. אל תשביתו את האימות הבסיסי ב-Edge עד שתגדירו את הפורטל לשימוש ב-SAML.
  2. מתקינים את הפורטל ומוודאים שההתקנה פועלת כמו שצריך. התקנת הפורטל של Edge for Private Cloud
  3. מגדירים את SAML בפורטל.
  4. עכשיו אפשר להשבית את האימות הבסיסי ב-Edge.

יצירת משתמש מחשב לפורטל

כש-SAML מופעל, Edge תומך ביצירה אוטומטית של אסימוני OAuth2 באמצעות משתמשי מכונה. משתמש במכונה יכול לקבל טוקני OAuth2 בלי לציין קוד גישה. כלומר, אפשר להפוך את תהליך קבלת האסימונים של OAuth2 ורענון שלהם לאוטומציה מלאה.

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

מידע על אימות של חשבונות פיתוח בפורטל

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

מפתחים הם חברי הקהילה של המשתמשים שמפתחים אפליקציות באמצעות ממשקי ה-API שלכם. מפתחי אפליקציות משתמשים בפורטל כדי לקבל מידע על ממשקי ה-API שלכם, כדי לרשום אפליקציות שמשתמשות בממשקי ה-API שלכם, כדי לקיים אינטראקציה עם קהילת המפתחים וגם כדי להציג מידע סטטיסטי על השימוש באפליקציות שלהם בלוח בקרה.

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

אפשר גם להגדיר את הפורטל כך שישתמש ב-SAML לאימות מפתחים. לדוגמה, תוכלו לקרוא את המאמר שילוב SSO דרך SAML עם Developer Portal כדי להבין איך מפעילים את SAML באמצעות מודולים של צד שלישי ב-Drupal.

הגדרת SAML בפורטל כדי לתקשר עם Edge

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

# IP address of Edge Management Server and apigee-sso node.
IP1=22.222.22.222

# URL of Edge management API.
MGMT_URL=http://$IP1:8080/v1

# Org associated with the portal.
EDGE_ORG=myorg

# Information about 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

# Default is "n" to disable SAML support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth 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 chars. 
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 SAML. 
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 new one is created.
# The default value is "n".
# Set to "y" when you configure SAML and change the value of 
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

כדי להפעיל תמיכה ב-SAML בפורטל:

  1. בממשק המשתמש של Edge, מוסיפים את משתמש המכונה שצוין ב-DEVPORTAL_ADMIN_EMAIL לארגון שמשויך לפורטל בתור אדמין ארגוני.
  2. מריצים את הפקודה הבאה כדי להגדיר את SAML בפורטל:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f samlConfigFile

    כאשר samlConfigFile הוא קובץ התצורה של SAML.

  3. מתחברים לפורטל כאדמינים.
  4. בתפריט הראשי של Drupal, בוחרים באפשרות Configuration (הגדרה) > Dev Portal (פורטל הפיתוח). מופיעה מסך ההגדרה של הפורטל, כולל הגדרות SAML:

    שימו לב שהתיבה This org is SAML-enabled מסומנת, נקודת הקצה של מודול ה-SSO של Edge מולאה, השדות API key ו-Consumer secret של לקוח ה-Oauth בפורטל מולאו וההודעה Connection Successful מופיעה מתחת ללחצן Test Connection.

  5. אפשר ללחוץ על הלחצן בדיקת החיבור כדי לבדוק שוב את החיבור בכל שלב.

כדי לשנות את הערכים האלה מאוחר יותר, מעדכנים את קובץ התצורה ומריצים את הפקודה שוב.

השבתת SAML בפורטל

אם תבחרו להשבית את SAML לתקשורת בין הפורטל ל-Edge, הפורטל לא יוכל יותר לשלוח בקשות ל-Edge. למפתחים יש אפשרות להתחבר לפורטל, אבל הם לא יוכלו לצפות במוצרים או ליצור אפליקציות.

כדי להשבית את SAML בפורטל:

  1. עורכים את קובץ התצורה שבו השתמשתם כדי להגדיר את SAM, ומגדירים את הערך:
    DEVPORTAL_SSO_ENABLED=n
  2. מגדירים את הפורטל:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile