באתר התיעוד של Apigee יש מידע מקיף על ניהול תפקידים והרשאות של משתמשים. אפשר לנהל משתמשים באמצעות ממשק המשתמש החדש של Edge וגם באמצעות Management API. אפשר לנהל תפקידים והרשאות רק באמצעות Management API.
מידע על משתמשים ויצירת משתמשים זמין במאמרים הבאים:
רבות מהפעולות שאתם מבצעים כדי לנהל משתמשים דורשות הרשאות של אדמין מערכת. בהתקנה של Edge שמבוססת על הענן, Apigee פועלת בתפקיד של אדמין המערכת. בהתקנה של Edge for the ענן פרטי, האדמין של המערכת צריך לבצע את המשימות האלה כמו שמתואר בהמשך.
הוספת משתמש
אפשר ליצור משתמש באמצעות Edge API, ממשק המשתמש החדש של Edge או פקודות Edge. בקטע הזה מוסבר איך להשתמש בפקודות של Edge API ו-Edge. מידע על יצירת משתמשים בממשק המשתמש החדש של Edge זמין במאמר יצירת משתמשים גלובליים.
אחרי שיוצרים את המשתמש בארגון, צריך להקצות לו תפקיד. התפקידים קובעים את זכויות הגישה של המשתמש ב-Edge.
כדי ליצור משתמש באמצעות Edge API, משתמשים בפקודה הבאה:
curl -H "Content-Type:application/xml" \
-u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X POST http://ms_IP:8080/v1/users \
-d '<User> \
<FirstName>New</FirstName> \
<LastName>User</LastName> \
<Password>NEW_USER_PASSWORD</Password> \
<EmailId>foo@bar.com</EmailId> \
</User>'אפשר גם להשתמש בפקודה הבאה של Edge כדי ליצור משתמש:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile
כאשר configFile יוצר את המשתמש, כמו בדוגמה הבאה:
APIGEE_ADMINPW=SYS_ADMIN_PASSWORD # If omitted, you will be prompted. USER_NAME=foo@bar.com FIRST_NAME=New LAST_NAME=User USER_PWD="NEW_USER_PASSWORD" ORG_NAME=myorg
לאחר מכן, אפשר להשתמש בקריאה הזו כדי להציג מידע על המשתמש:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com
הקצאת תפקיד למשתמש בארגון
כדי שמשתמש חדש יוכל לעשות משהו, צריך להקצות לו תפקיד בארגון. אתם יכולים להקצות למשתמש תפקידים שונים, כולל: orgadmin, businessuser, opsadmin, user או תפקיד בהתאמה אישית שמוגדר בארגון.
כשמקצים למשתמש תפקיד בארגון, המשתמש מתווסף אוטומטית לארגון. כדי להקצות משתמש לכמה ארגונים, מקצים לו תפקיד בכל ארגון.
כדי להקצות למשתמש תפקיד בארגון, משתמשים בפקודה הבאה:
curl -X POST -H "Content-Type:application/x-www-form-urlencoded" \ http://ms_IP:8080/v1/o/org_name/userroles/role/users?id=foo@bar.com \ -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD
הקריאה הזו מציגה את כל התפקידים שהוקצו למשתמש. אם רוצים להוסיף את המשתמש, אבל להציג רק את התפקיד החדש, משתמשים בפקודה הבאה:
curl -X POST -H "Content-Type: application/xml" \ http://ms_IP:8080/v1/o/org_name/users/foo@bar.com/userroles \ -d '<Roles><Role name="role"/><Roles>' \ -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD
כדי לראות את התפקידים של המשתמש, משתמשים בפקודה הבאה:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles
כדי להסיר משתמש מארגון, צריך להסיר ממנו את כל התפקידים בארגון. כדי להסיר תפקיד ממשתמש, משתמשים בפקודה הבאה:
curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com
הוספת אדמין מערכת
אדמין במערכת יכול:
- יצירת ארגונים
- הוספת נתבים, מעבדי בקשות ורכיבים אחרים להתקנה של Edge
- הגדרת TLS/SSL
- יצירת אדמינים נוספים
- לבצע את כל המשימות הניהוליות ב-Edge
רק משתמש אחד מוגדר כמשתמש ברירת המחדל למשימות ניהוליות, אבל יכולים להיות יותר מאדמין מערכת אחד. לכל משתמש עם התפקיד sysadmin יש הרשאות מלאות לכל המשאבים.
אפשר ליצור את המשתמש לאדמין של המערכת בממשק המשתמש החדש של Edge או ב-API. עם זאת, צריך להשתמש ב-Edge API כדי להקצות למשתמש את התפקיד sysadmin. אי אפשר להקצות משתמש לתפקיד sysadmin בממשק המשתמש החדש של Edge.
כדי להוסיף מנהל מערכת:
- יוצרים משתמש בממשק המשתמש החדש של Edge או ב-API.
- מוסיפים את המשתמש לתפקיד sysadmin:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
- מוודאים שהמשתמש החדש נמצא בתפקיד sysadmin:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users
הפונקציה מחזירה את כתובת האימייל של המשתמש:
[ " foo@bar.com " ]
- בודקים את ההרשאות של המשתמש החדש:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions
החזרות:
{ "resourcePermission" : [ { "path" : "/", "permissions" : [ "get", "put", "delete" ] } ] } - אחרי שמוסיפים את האדמין החדש, אפשר להוסיף את המשתמש לכל ארגון.
- אם בהמשך תרצו להסיר את המשתמש מתפקיד האדמין של המערכת, תוכלו להשתמש ב-API הבא:
curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com
חשוב לזכור שהקריאה הזו רק מסירה את המשתמש מהתפקיד, היא לא מוחקת את המשתמש.
שינוי משתמש ברירת המחדל של אדמין המערכת
כשמתקינים את Edge, מציינים את כתובת האימייל של מנהל המערכת. Edge יוצר משתמש עם כתובת האימייל הזו, ומגדיר את המשתמש הזה כאדמין המערכת שמוגדר כברירת מחדל. אפשר להוסיף בהמשך עוד מנהלי מערכת כמו שמתואר למעלה.
בקטע הזה מוסבר איך להחליף את מנהל המערכת שמוגדר כברירת מחדל במשתמש אחר, ואיך לשנות את כתובת האימייל של חשבון המשתמש של מנהל המערכת הנוכחי שמוגדר כברירת מחדל.
כדי לראות את רשימת המשתמשים שמוגדרים כרגע כאדמינים של המערכת, משתמשים בקריאה הבאה ל-API:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users
כדי לזהות את מנהל המערכת הנוכחי שמוגדר כברירת מחדל, צריך לעיין בקובץ /opt/apigee/customer/defaults.sh. הקובץ מכיל את השורה הבאה, שבה מוצגת כתובת האימייל של מנהל המערכת הנוכחי שמוגדר כברירת מחדל:
ADMIN_EMAIL=foo@bar.com
כדי לשנות את אדמין המערכת שמוגדר כברירת מחדל למשתמש אחר:
- יוצרים אדמין מערכת חדש כמו שמתואר למעלה, או מוודאים שחשבון המשתמש של אדמין המערכת החדש כבר מוגדר כאדמין מערכת.
- עורכים את
/opt/apigee/customer/defaults.shכדי להגדיר אתADMIN_EMAILלכתובת האימייל של מנהל המערכת החדש. - עורכים את קובץ התצורה השקט שבו השתמשתם כדי להתקין את ממשק המשתמש החדש של Edge, כדי להגדיר את המאפיינים הבאים:
ADMIN_EMAIL=NEW_SYS_ADMIN_EMAIL APIGEE_ADMINPW=NEW_SYS_ADMIN_PASSWORD SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=foo@gmail.com SMTPPASSWORD=bar SMTPSSL=y
חשוב לזכור שחובה לכלול את מאפייני ה-SMTP כי כל המאפיינים בממשק המשתמש החדש של Edge מאופסים.
- מגדירים מחדש את ממשק המשתמש החדש של Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f configFile /opt/apigee/apigee-service/bin/apigee-service edge-management-ui start
אם אתם רוצים רק לשנות את כתובת האימייל של חשבון המשתמש של האדמין הנוכחי שמוגדר כברירת מחדל במערכת, אתם צריכים קודם לעדכן את חשבון המשתמש כדי להגדיר את כתובת האימייל החדשה, ואז לשנות את כתובת האימייל של האדמין שמוגדר כברירת מחדל במערכת:
- מעדכנים את חשבון המשתמש של האדמין הנוכחי שמוגדר כברירת מחדל בכתובת אימייל חדשה:
curl -H content-type:application/json -X PUT -u CURRENT_SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/users/CURRENT_SYS_ADMIN_EMAIL \ -d '{"emailId": "NEW_SYS_ADMIN_EMAIL", "lastName": "admin", "firstName": "admin"}' - חוזרים על השלבים 2, 3 ו-4 מההליך הקודם כדי לעדכן את הקובץ
/opt/apigee/customer/defaults.shולעדכן את ממשק המשתמש של New Edge.
ציון דומיין האימייל של אדמין מערכת
כדי להוסיף עוד רמת אבטחה, אתם יכולים לציין את דומיין האימייל הנדרש של מנהל מערכת ב-Edge. כשמוסיפים אדמין מערכת, אם כתובת האימייל של המשתמש לא נמצאת בדומיין שצוין, הוספת המשתמש לתפקיד 'sysadmin' נכשלת.
כברירת מחדל, הדומיין הנדרש ריק, כלומר אפשר להוסיף כל כתובת אימייל לתפקיד sysadmin.
כדי להגדיר את הדומיין של האימייל:
- פותחים את הקובץ
management-server.propertiesבכלי לעריכת טקסט:vi /opt/apigee/customer/application/management-server.properties
אם הקובץ הזה לא קיים, יוצרים אותו.
- מגדירים את המאפיין
conf_security_rbac.global.roles.allowed.domainsלרשימה מופרדת בפסיקים של הדומיינים המותרים. לדוגמה:conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
- שומרים את השינויים.
- מפעילים מחדש את שרת הניהול של Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
אם תנסו להוסיף משתמש לתפקיד "sysadmin" וכתובת האימייל של המשתמש לא נמצאת באחד מהדומיינים שצוינו, ההוספה תיכשל.
מחיקת משתמש
אפשר ליצור משתמש באמצעות Edge API או ממשק המשתמש החדש של Edge. אבל אפשר למחוק משתמש רק באמצעות ה-API.
כדי לראות את רשימת המשתמשים הנוכחיים, כולל כתובת האימייל, משתמשים בפקודה הבאה של curl:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users
כדי למחוק משתמש, משתמשים בפקודה הבאה של curl:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL