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

Edge for Private Cloud نسخه 4.17.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 زیر برای ایجاد کاربر استفاده کنید:

> /opt/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 -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 <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، آدرس ایمیل مدیر سیستم را مشخص می کنید. Edge یک کاربر با آن آدرس ایمیل ایجاد می کند و آن کاربر را به عنوان مدیر پیش فرض سیستم تعیین می کند. می‌توانید بعداً همانطور که در بالا توضیح داده شد، مدیران سیستم اضافی اضافه کنید.

این بخش نحوه تغییر مدیر پیش‌فرض سیستم را به یک کاربر متفاوت و نحوه تغییر آدرس ایمیل حساب کاربری برای سرپرست سیستم پیش‌فرض فعلی توضیح می‌دهد.

برای مشاهده لیست کاربرانی که در حال حاضر به عنوان سرپرست سیستم پیکربندی شده اند، از فراخوانی API زیر استفاده کنید:

curl -u sysAdminEmail:passwd http://<ms_IP>:8080/v1/userroles/sysadmin/users

برای تعیین مدیر سیستم پیش فرض فعلی، فایل /opt/apigee/customer/defaults.sh را مشاهده کنید. فایل حاوی خط زیر است که آدرس ایمیل مدیر پیش فرض سیستم فعلی را نشان می دهد:

ADMIN_EMAIL=foo@bar.com

برای تغییر مدیر پیش فرض سیستم به یک کاربر دیگر:

  1. یک مدیر سیستم جدید همانطور که در بالا توضیح داده شد ایجاد کنید یا مطمئن شوید که حساب کاربری مدیر سیستم جدید قبلاً به عنوان مدیر سیستم پیکربندی شده است.
  2. برای تنظیم ADMIN_EMAIL به آدرس ایمیل مدیر سیستم جدید، /opt/apigee/customer/defaults.sh را ویرایش کنید.
  3. فایل پیکربندی بی‌صدا را که برای نصب Edge UI استفاده کرده‌اید، ویرایش کنید تا ویژگی‌های زیر را تنظیم کنید:
    ADMIN_EMAIL= آدرس ایمیل آدرسOfNewSysAdmin
    APIGEE_ADMINPW= pwOfNewSysAdmin

    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=نوار
    SMTPSSL=y
    توجه داشته باشید که باید ویژگی‌های SMTP را وارد کنید زیرا تمام ویژگی‌های UI بازنشانی می‌شوند.
  4. پیکربندی مجدد رابط کاربری 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

اگر فقط می‌خواهید آدرس ایمیل حساب کاربری را برای مدیر سیستم پیش‌فرض فعلی تغییر دهید، ابتدا حساب کاربری را برای تنظیم آدرس ایمیل جدید به‌روزرسانی می‌کنید، سپس آدرس ایمیل پیش‌فرض سرپرست سیستم را تغییر می‌دهید:

  1. حساب کاربری کاربر مدیر پیش فرض سیستم فعلی را با یک آدرس ایمیل جدید به روز کنید:
    > curl -H content-type:application/json -X PUT /
    -u currentSysAdminEmail:passwd /
    http://<ms_IP>:8080/v1/users/ currentSysAdminEmail /
    -d '{"emailId": " newSysAdminEmail "، "lastName": "admin"، "firstName": "admin"}'
  2. برای به روز رسانی فایل /opt/apigee/customer/defaults.sh و به روز رسانی Edge UI، مراحل 2، 3. و 4 را از رویه قبلی تکرار کنید.

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

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

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

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

  1. باز کردن در ویرایشگر management-server.properties :
    vi /opt/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 را مجددا راه اندازی کنید:
    /opt/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>