Ограничить доступ можно к:
- Модулям и приложениям платформы:
- модуль «Управление доступом»
- модуль «Оркестратор»
- приложение ROBIN Studio Enterprise, начиная с версии
- приложение ROBIN Player Enterprise, начиная с версии
- Объектам, которые добавлены в удаленное хранилище платформы:
- проекты роботов (пользователь сам публикует их в хранилище через ROBIN Studio)
- готовых роботов (пользователь сам публикует их в хранилище через ROBIN Studio)
- машины - сервер или персональный компьютер (данные о машине автоматически передает в хранилище ROBIN Agent сразу после завершения установки клиентской части платформы на этой машине)
- расписания запуска роботов (добавляются в хранилище, когда пользователь создает их через интерфейс модуля «Оркестратор»)
Разграничение прав доступа пользователей к компонентам и объектам осуществляется за счет тенантов.
Тенанты – это некие мультигруппы, каждая из которых имеет свои наборы объектов, пользователей и ролей.
Каждый тенант имеет свои собственные настройки, права доступа, и другие аспекты управления процессами. Это обеспечивает изоляцию данных и контроль доступа между различными группами пользователей или проектами.
При входе в web-интерфейс платформы или ее desktop-приложения, необходимо выбирать тенант, в рамках которого будет осуществляться работа.
От выбранного тенанта будут зависеть:
- Какие объекты доступны пользователю. Пользователь всегда видит только те объекты, которые добавлены в тенант, под которым он вошел.
- Какие операции, пользователь может выполнить с объектами. Доступные операции определяются ролью(ями), которую пользователь имеет в выбранном тенанте.
- Доступность самого компонента. Доступ к компоненту также определяется ролью пользователя. Если в тенанте пользователю не выдана роль, разрешающая работу с компонентом, то он будет скрыт (web-интерфейс), или система в целом запретит вход (desktop-приложения).
Войти без тенанта нельзя, поэтому пользователь должен иметь доступ хотя бы к одному тенанту для работы с модулями и приложениями.
Чтобы получить доступ к тенанту, пользователь должен быть добавлен в него, причем обязательно с одной или несколькими ролями, которые созданы в этом тенанте.
Пользователя можно добавить сразу в несколько тенантов. Причем в каждом тенанте пользователь может иметь разные роли. Но даже при наличии доступа к нескольким тенантам, войти в систему пользователь может только в рамках одного тенанта. При развертывании платформы всегда создается один тенант, с помощью которого можно будет начать работу с платформой.
Также в рамках одного тенанта можно более точно разграничивать доступ пользователей к объектам тенанта при помощи их группировки. Принципы работы групп следующий:
- Администратор создает в тенанте группу объектов. В группу переносит объекты, с которыми можно работать не всем пользователям тенанта.
- Создает в этом же тенанте группу пользователей. В группу добавляет только тех пользователей, которым разрешено работать с объектами из 1го пункта.
- Выдает группе пользователей права на группу объектов.
- Пользователи, которые добавлены в тенант, но не добавлены в группу, имеют доступ только к тем объектам тенанта, которые не распределены в группу объектов.
- Пользователи, которые добавлены в тенант и дополнительно добавлены в группу, имеют доступ и к тем объектам тенанта, которые не распределены в группу, и к объектам, добавленным в группу объектов.
По умолчанию, в тенанте группы не существуют, их нужно создавать отдельно (при необходимости).
Ограничения релиза
На данный момент не реализованы некоторые вышеперечисленные функциональные возможности:
- Нельзя создавать несколько тенантов. Пользователи смогут работать только с одним единственным тенантом, который создается при развертывании платформы. Соответственно, все объекты в хранилище распределены только в этот тенант.
- В тенанте есть только несколько ролей, которые ограничивают доступ к самим модулям и приложениям платформы. Операции с объектами эти роли пока что не ограничивают.