בקטע הזה מוסבר איך להריץ פקודות וכלים של מנהלי מערכת ב-Edge אחרי שמפעילים את מודול ה-SSO ב-Apigee. כדי לבצע הרבה משימות ב-Edge, צריך פרטי כניסה של אדמין במערכת, למשל:
- יצירת ארגונים וסביבות
- הוספה והסרה של רכיבי Edge
- הרצת פקודות
apigee-adminapi.sh
עם זאת, אחרי שמפעילים את ה-SSO ב-Edge, בדרך כלל משביתים את האימות הבסיסי כדי שהדרך היחידה לאימות תהיה באמצעות ה-IDP של OIDC/SAML. לכן, צריך לוודא שהוספתם את חשבון מנהל המערכת ל-IDP, או שיצרתם משתמש מכונה מקומי לאוטומציה.
שליחת קריאות לממשקי API לניהול של Edge כאדמין במערכת
בהרבה קריאות ל-Edge API צריך להעביר את פרטי הכניסה של האדמין במערכת. במאמר שימוש ב-SAML עם Edge management API מוסבר איך לקבל ולרענן טוקנים באמצעות הכלי get_token כשמבצעים קריאות ל-API של Edge management.
שימוש בכלי apigee-adminapi.sh עם מודול SSO ב-Apigee
משתמשים בכלי apigee-adminapi.sh כדי לבצע את אותן משימות הגדרה של Edge שמבצעים באמצעות קריאות ל-Edge management API. היתרון של הכלי apigee-adminapi.sh הוא שהוא:
- ממשק שורת פקודה פשוט
- השלמת פקודות אוטומטיות באמצעות מקש Tab
- מספק עזרה ונתוני שימוש
- יכול להציג את הקריאה המתאימה ל-API אם מחליטים לנסות את ה-API
אחרי שמפעילים את ה-SSO ב-Apigee, יש שתי דרכים עיקריות להעביר את פרטי הכניסה לכלי apigee-adminapi.sh, בהתאם לסוג המשתמש: אדמין אנושי או סקריפט אוטומטי.
כדי לראות את כל האפשרויות של פקודת apigee-adminapi.sh, כולל האפשרויות לציון פרטי הכניסה ל-SSO, משתמשים באפשרות -h של הפקודה. לדוגמה:
apigee-adminapi.sh orgs list -h
העברת טוקן למוכ"ז (לאדמינים אנושיים)
מכיוון שמודול SSO ב-Apigee המודרני לא תומך בתהליך ההעתקה וההדבקה הקודם של /passcode, אדמינים אנושיים צריכים להשתמש בכלי get_token כדי להשלים את תהליך קוד המכשיר של OAuth 2.0, ואז להעביר את הטוקן שנוצר לסקריפט.
קודם כל, מקבלים טוקן:
/opt/apigee/apigee-openldap/bin/get_token -u adminEmail
ואז משתמשים בטוקן כשמפעילים את הפקודה:
apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \ --admin adminEmail --oauth-token token_string
כאשר:
oauth-flowמציין אתpasscode(זה מאותת לסקריפט הקודם שסופק אסימון).-
oauth-tokenמכיל את מחרוזת ה-JWT הגולמית שהתקבלה מ-get_token.
העברת סיסמה (למשתמשי מכונה בלבד)
אם אתם מבצעים פריסות תשתית באופן אוטומטי, אתם יכולים להעביר את פרטי הכניסה ישירות באמצעות התהליך password_grant. עם זאת, אם הפדרציה של SAML/OIDC מופעלת, משתמשי צל אנושיים נחסמים מהתחברות באמצעות סיסמה כדי למנוע עקיפה של MFA. קודם צריך להקצות משתמש מכונה מפורש ב-OpenLDAP.
apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \ --admin machineUserEmail --oauth-password machineUserPassword
כאשר:
- האפשרות
sso-urlמציינת את כתובת ה-URL של ה-SSO ב-Apigee. אם שיניתם את היציאה או הפרוטוקול מ-9099 ו-HTTP, צריך לשנות אותם. -
oauth-flowמציין אתpassword_grant. - machineUserEmail היא כתובת האימייל של המשתמש המכונה האוטומטי.
-
oauth-passwordמציין את הסיסמה של המשתמש במכונה.
שימוש בכלי שירות של Edge עם מודול SSO ב-Apigee
הרבה כלי עזר של Edge דורשים פרטי כניסה של אדמין, למשל:
apigee-provisionמשמש ליצירת ארגונים, סביבות ומארחים וירטואליים-
setup.shמשמש להוספת צמתים למערכת קיימת - כל כלי אחר שבו צריך לציין את פרטי הכניסה של מנהל המערכת בקובץ תצורה
כדי להשתמש בכלים האלה, צריך להזין קובץ תצורה שמציין את פרטי הכניסה של האדמין במערכת. לפני שמפעילים SSO, משתמשים במאפיינים הבאים:
ADMIN_EMAIL="adminEmail" APIGEE_ADMINPW="adminPWord"
אחרי שמפעילים את ה-SSO ב-Apigee, צריך להשתמש במאפיינים שונים כדי לציין את פרטי הכניסה של מנהל המערכת.
שימוש בטוקן למוכ"ז (לאדמינים שהם בני אדם)
בפריסות אינטראקטיביות על ידי אדמינים אנושיים, צריך לרכוש אסימון באמצעות הכלי get_token ולספק אותו דרך המאפיין OAUTH_BEARER_TOKEN:
ADMIN_EMAIL="adminEmail" SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099" OAUTH_FLOW="passcode" OAUTH_BEARER_TOKEN="token_string"
כאשר:
OAUTH_FLOWמציין אתpasscode(כדי לציין שסופק אסימון).-
OAUTH_BEARER_TOKENמכיל את מחרוזת ה-JWT הגולמית שהתקבלה מ-get_token.
שימוש בסיסמה (למשתמשי מכונה בלבד)
בפריסות אוטומטיות לחלוטין, צריך לספק את פרטי הכניסה של משתמש מכונה שהוקצה באופן מפורש באמצעות תהליך password_grant:
ADMIN_EMAIL="machineUserEmail" SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099" OAUTH_FLOW="password_grant" OAUTH_ADMIN_PASSWORD="machineUserPassword"
כאשר:
-
SSO_LOGIN_URLמציין את כתובת ה-URL של ה-SSO ב-Apigee. -
OAUTH_FLOWמציין אתpassword_grant. -
OAUTH_ADMIN_PASSWORDמציין את הסיסמה של המשתמש במכונה.