Управление пользователями, ролями и разрешениями

Edge for Private Cloud версии 4.16.05

На сайте документации Apigee есть подробная информация об управлении ролями и разрешениями пользователей. Управлять пользователями можно как в пользовательском интерфейсе Edge, так и с помощью Management API. Ролями и разрешениями можно управлять только с помощью Management API.

Дополнительную информацию о пользователях и их создании можно найти в следующих статьях:

Для выполнения многих операций по управлению пользователями требуются права системного администратора. В облачной установке Edge Apigee выполняет роль системного администратора. В установке Edge для частного облака ваш системный администратор должен выполнить эти задачи, как описано ниже.

Добавление пользователя

Вы можете создать пользователя с помощью 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 или API. Однако для назначения пользователю роли sysadmin необходимо использовать Edge API. Назначить пользователю роль 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" : [ {
    "path" : "/",
    "permissions" : [ "get", "put", "delete" ]
    } ]
    }
  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 Server:
    /<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>