مدیریت کاربران، نقش ها و مجوزها

Edge for Private Cloud نسخه 4.16.05

سایت اسناد Apigee اطلاعات گسترده ای در مورد مدیریت نقش ها و مجوزهای کاربر دارد. کاربران را می توان با استفاده از Edge UI و Management API مدیریت کرد. نقش ها و مجوزها فقط با مدیریت API قابل مدیریت هستند.

برای اطلاعات در مورد کاربران و ایجاد کاربران، نگاه کنید به:

بسیاری از عملیاتی که برای مدیریت کاربران انجام می‌دهید، به امتیازات مدیر سیستم نیاز دارند. در نصب Edge مبتنی بر ابر، Apigee در نقش مدیر سیستم عمل می کند. در نصب Edge برای Private Cloud، مدیر سیستم شما باید این وظایف را همانطور که در زیر توضیح داده شده انجام دهد.

افزودن کاربر

شما می توانید با استفاده از دستورات Edge API، Edge UI یا Edge یک کاربر ایجاد کنید. این بخش نحوه استفاده از دستورات Edge API و Edge را توضیح می دهد. برای اطلاعات در مورد ایجاد کاربران در رابط کاربری Edge، به ایجاد کاربران جهانی مراجعه کنید.

پس از ایجاد کاربر در یک سازمان، باید نقشی را به کاربر اختصاص دهید. نقش ها حقوق دسترسی کاربر را در Edge تعیین می کنند.

برای ایجاد یک کاربر با Edge API از دستور زیر استفاده کنید:

curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<passwd> \
-X POST http://<ms_IP>:8080/v1/users \
-d '<User> \
   <FirstName>New</FirstName> \
   <LastName>User</LastName> \
   <Password>newUserPWord</Password> \
   <EmailId>foo@bar.com</EmailId> \
</User>'

یا از دستور Edge زیر برای ایجاد کاربر استفاده کنید:

> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

جایی که configFile حاوی اطلاعات لازم برای ایجاد کاربر است:

APIGEE_ADMINPW=sysAdminPW    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="newUserPWord"
ORG_NAME=myorg  

سپس می توانید از این تماس برای مشاهده اطلاعات کاربر استفاده کنید:

curl -u <sysAdminEmail>:<passwd> 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 <sysAdminEmail>:<passwd> 

با استفاده از دستور زیر می توانید نقش های کاربر را مشاهده کنید:

curl -u <sysAdminEmail>:<passwd> /
http://<ms_IP>:8080/v1/users/foo@bar.com/userroles

برای حذف یک کاربر از یک سازمان، همه نقش های آن سازمان را از کاربر حذف کنید. برای حذف یک نقش از یک کاربر از دستور زیر استفاده کنید:

curl -X DELETE -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users/foo@bar.com

اضافه کردن مدیر سیستم

یک مدیر سیستم می تواند:

  • سازمان ایجاد کنید
  • روترها، پردازشگرهای پیام و سایر اجزاء را به نصب Edge اضافه کنید
  • پیکربندی TLS/SSL
  • مدیران سیستم اضافی ایجاد کنید
  • انجام تمام وظایف اداری Edge

در حالی که تنها یک کاربر، کاربر پیش فرض برای کارهای اداری است، ممکن است بیش از یک مدیر سیستم وجود داشته باشد. هر کاربری که عضو نقش sysadmin باشد، مجوزهای کامل برای همه منابع را دارد.

می توانید کاربر را برای مدیر سیستم در Edge UI یا API ایجاد کنید. با این حال، باید از Edge API استفاده کنید تا کاربر را به نقش sysadmin اختصاص دهید. اختصاص دادن یک کاربر به نقش sysadmin را نمی توان در رابط کاربری Edge انجام داد.

برای افزودن یک مدیر سیستم:

  1. یک کاربر در رابط کاربری Edge یا API ایجاد کنید.
  2. اضافه کردن کاربر به نقش sysadmin :
    curl -u <sysAdminEmail>:<passwd> \
    -X POST http://<ms_IP>:8080/v1/userroles/sysadmin/users \
    -d 'id=foo@bar.com'
  3. اطمینان حاصل کنید که کاربر جدید در نقش sysadmin است:
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/userroles/sysadmin/users

    آدرس ایمیل کاربر را برمی گرداند:
    [ " foo@bar.com " ]
  4. بررسی مجوزهای کاربر جدید:
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com/permissions

    برمی گرداند:
    {
    "ResourcePermission" : [ {
    "مسیر": "/",
    "مجوزها" : [ "دریافت"، "قرار دادن"، "حذف"]
    } ]
    }
  5. پس از اضافه کردن مدیر سیستم جدید، می توانید کاربر را به هر سازمانی اضافه کنید.
    توجه : تا زمانی که کاربر را حداقل به یک سازمان اضافه نکنید، کاربر سرپرست سیستم جدید نمی‌تواند وارد رابط کاربری Edge شود.
  6. اگر بعداً می خواهید کاربر را از نقش مدیر سیستم حذف کنید، می توانید از API زیر استفاده کنید:
    curl -X DELETE -u <sysadminEmail:pword>
    http://<ms_IP>:8080/v1/userroles/sysadmin/users/foo@bar.com


    توجه داشته باشید که این فراخوان فقط کاربر را از نقش حذف می کند، کاربر را حذف نمی کند.

تعیین دامنه ایمیل یک مدیر سیستم

به عنوان یک سطح امنیتی اضافی، می توانید دامنه ایمیل مورد نیاز یک مدیر سیستم Edge را مشخص کنید. هنگام اضافه کردن یک مدیر سیستم، اگر آدرس ایمیل کاربر در دامنه مشخص شده نباشد، اضافه کردن کاربر به نقش sysadmin ناموفق است.

به طور پیش فرض، دامنه مورد نیاز خالی است، به این معنی که می توانید هر آدرس ایمیلی را به نقش sysadmin اضافه کنید.

برای تنظیم دامنه ایمیل:

  1. باز کردن در ویرایشگر management-server.properties :
    vi /<inst_root>/apigee/customer/application/management-server.properties

    اگر این فایل وجود ندارد، آن را ایجاد کنید.
  2. ویژگی conf_security_rbac.global.roles.allowed.domains را روی لیست دامنه های مجاز جدا شده با کاما تنظیم کنید. به عنوان مثال:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. تغییرات خود را ذخیره کنید
  4. سرور Edge Management را مجددا راه اندازی کنید:
    /<inst_root>/apigee/apigee-service/bin/apigee-service edge-management-server restart

    اگر اکنون سعی می کنید یک کاربر را به نقش sysadmin اضافه کنید و آدرس ایمیل کاربر در یکی از دامنه های مشخص شده نباشد، افزودن با شکست مواجه می شود.

حذف یک کاربر

می توانید با استفاده از Edge API یا Edge UI یک کاربر ایجاد کنید. با این حال، تنها با استفاده از API می توانید یک کاربر را حذف کنید.

برای مشاهده لیست کاربران فعلی، از جمله آدرس ایمیل، از دستور cURL زیر استفاده کنید:

curl -u <sysAdminEmail>:<passwd> http://<ms-IP>:8080/v1/users

برای حذف یک کاربر از دستور cURL زیر استفاده کنید:

curl -u <sysAdminEmail>:<passwd> -X DELETE http://<ms-IP>:8080/v1/users/<userEmail>