באתר המסמכים של Apigee יש מידע מקיף על ניהול תפקידים והרשאות של משתמשים. ניתן לנהל את המשתמשים גם באמצעות ממשק המשתמש של Edge וגם באמצעות ה-Management API. תפקידים אפשר לנהל את ההרשאות רק באמצעות Management API.
מידע על משתמשים ועל יצירת משתמשים זמין במאמרים הבאים:
הרבה מהפעולות שמבצעים לניהול משתמשים מחייבות מנהל מערכת הרשאות. בהתקנה מבוססת ענן של Edge, Apigee פועלת בתפקיד של המערכת מנהל מערכת. במתקנה של Edge לענן פרטי, אדמין המערכת צריך לבצע את המשימות האלה כפי שמתואר בהמשך.
הוספת משתמש
אפשר ליצור משתמשים באמצעות ה-API של Edge, ממשק המשתמש של 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 יש את כל הרשאות לכל המשאבים.
אפשר ליצור את המשתמש של מנהל המערכת בממשק המשתמש או ב-API של Edge. עם זאת, צריך להשתמש ב-Edge API כדי להקצות למשתמש את התפקיד 'אדמין מערכת'. הקצאת משתמש ל-sysadmin לא ניתן לבצע את התפקיד הזה בממשק המשתמש של Edge.
כדי להוסיף מנהל מערכת:
- יוצרים משתמש בממשק המשתמש או ב-API של Edge.
- הוספת המשתמש ל-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, אתם צריכים לציין את כתובת האימייל של מנהל המערכת. קצה יוצר משתמש עם כתובת האימייל הזו ומגדיר את המשתמש הזה כמערכת ברירת המחדל מנהל מערכת. תוכלו להוסיף מנהלי מערכת נוספים בהמשך, כפי שמתואר למעלה.
בקטע הזה מוסבר איך לשנות את מנהל המערכת שמוגדר כברירת מחדל למשתמש אחר, ואיך לשנות את כתובת האימייל של חשבון המשתמש של מנהל המערכת שמוגדר כברירת מחדל.
כדי לראות את רשימת המשתמשים שמוגדרים כרגע כאדמינים מערכת, צריך להשתמש בקריאת ה-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:
/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
/opt/apigee/apigee-service/bin/apigee-service edge-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
ולעדכן את ממשק המשתמש של 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 תפקיד וכתובת האימייל של המשתמש לא נמצא באחד מהדומיינים שצוינו, ההוספה תיכשל.
מחיקת משתמש
אפשר ליצור משתמשים באמצעות ה-API של Edge או באמצעות ממשק המשתמש של 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