Перейти к содержанию

Пользователи и права

Доступ в системе устроен в два уровня. Первый отвечает на вопрос «что пользователю можно делать», второй на вопрос «какие данные он при этом видит».

Уровень Чем управляется Где настраивается
Операции Роли и права Сервис аутентификации и раздел «Права API» в веб-интерфейсе администратора
Данные Политики доступа к данным Раздел «Политики доступа» в веб-интерфейсе администратора

Учётные записи

Пользователи заводятся в сервисе аутентификации. При первом входе учётная запись появляется в Орбите автоматически, отдельно создавать её не нужно. Пароли, вторая проверка входа и парольные политики настраиваются там же.

Роли

В поставке две роли:

Роль Назначение
orbita_analyst Обычный пользователь: запросы, датасеты, графики, отчёты
orbita_admin Администратор: всё перечисленное плюс управление системой

Роль назначается пользователю в сервисе аутентификации. Пользователь без назначенной роли доступа к системе не получает, это поведение по умолчанию и менять его не рекомендуется.

Права

Состав прав роли настраивается. Полный перечень:

Группа Права
Запросы Выполнение запросов, просмотр истории
Датасеты Просмотр, сохранение, удаление, выгрузка
Беседы Создание, просмотр, изменение, удаление
Отчёты Создание и изменение шаблонов
Домены Изменение описаний данных
Администрирование Просмотр пользователей, журнала действий, телеметрии, управление системой
Телеметрия с текстами Просмотр сохранённых текстов запросов и ответов

Право на просмотр текстов запросов выделено отдельно: его выдают только тем, кому по регламенту разрешено видеть содержимое обращений пользователей.

Политики доступа к данным

Политика описывает, какие данные видит группа пользователей. Настраивается в веб-интерфейсе администратора.

Что задаётся Пример
Разрешённые домены только продажи и склад
Запрещённые таблицы таблица с персональными данными сотрудников
Запрещённые колонки колонка с себестоимостью
Фильтр строк только строки своего филиала

Фильтр строк опирается на атрибуты учётной записи. Например, если у пользователя в сервисе аутентификации задан филиал, политика может ограничить видимые строки этим филиалом. Так один и тот же вопрос даёт разным пользователям разные, но корректные для каждого ответы.

Ограничения применяются на сервере, при формировании запроса к хранилищу. Обойти их со стороны рабочего места невозможно.

Изоляция пользовательских данных

Беседы, датасеты и графики принадлежат создавшему их пользователю. Обращение к чужому объекту возвращает ответ «не найдено»: система не подтверждает даже факт существования такого объекта.

Порядок заведения нового пользователя

  1. Создайте учётную запись в сервисе аутентификации.
  2. Назначьте роль.
  3. При необходимости заполните атрибуты, которые используются в фильтрах строк, например филиал.
  4. Убедитесь, что пользователь попадает под нужную политику доступа к данным.
  5. Попросите пользователя войти и выполнить тестовый запрос.

Проверка прав

Если пользователь сообщает, что не видит части данных:

  1. Проверьте его роль и состав прав роли в разделе «Права API» веб-интерфейса администратора.
  2. Проверьте, какая политика доступа к нему применяется, в разделе «Политики доступа». Если доступ пропал недавно, раздел «Аудит» покажет, кто и когда менял настройку.
  3. Посмотрите журнал действий: там видно, какие запросы выполнялись и чем завершились.

Обратная ситуация, когда пользователь видит лишнее, разбирается так же: почти всегда причина в слишком широкой политике или в роли, выданной по ошибке.