На сайте документации Apigee приведена подробная информация об управлении ролями и разрешениями пользователей. Пользователей можно настраивать как с помощью интерфейса Edge, так и с помощью Management API, а роли и разрешения – только с помощью Management API.
Информация о пользователях и их создании приведена в следующих статьях:
Для выполнения многих операций по управлению пользователями требуются права системного администратора. При установке Edge на основе облака функции Apigee выполняются в роли системного администратора. При установке Edge для частного облака системный администратор должен выполнить описанные ниже задачи.
Как добавить пользователя
Создать пользователя можно с помощью 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. Однако для назначения пользователю роли "sysadmin" необходимо использовать Edge API. Назначить пользователю роль 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:
/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 не удастся.
По умолчанию поле "Требуемый домен" пустое, поэтому вы можете добавить в роль "Системный администратор" любой адрес электронной почты.
Чтобы задать домен электронной почты:
- Откройте файл
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 UI. Однако удалить пользователя можно только с помощью 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