Ролевая модель

Для разграничения прав пользователей в OneBridge существует система привилегий. Каждая привилегия определяет доступный с её помощью набор функциональности. Привилегии можно присвоить напрямую пользователю, а можно - сначала присвоить привилегию роли, а роль - пользователю.

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

Ниже описаны существующие привилегии, которые делятся на 7 групп.

Ресурсы

  • Просмотр - доступ к информации о сервере на странице Ресурсы: использование ресурсов, производительность, данные сервера.

Проекты

  • Просмотр и скачивание файлов и папок - просмотр списка проектов и их файлов в вебе и в Дизайнере, возможность скачивать данные проектов архивом.
  • Создание, изменение и удаление файлов и папок - возможность создавать, переименовывать, редактировать и удалять файлы, папки и проекты.

История выполнения

  • Чтение списка запусков, информации и статистики по запускам - просмотр списка запущенных графов на странице Ресурсы и на Истории выполнения.
  • Чтение логов запусков - доступ ко вкладке Журнал на панели дополнительной информации на странице История выполнения в вебе и ко вкладке Log в Дизайнере.
  • Чтение данных на ребрах - доступ ко вкладке Инспектор на панели доп. информации в веб приложении и к Datainspector в Дизайнере.
  • Запуск и остановка графов - просмотр параметров графа, запуск графа в работу и его остановка.

Расписания

  • Просмотр - просмотр списка расписаний и информации о каждом из них на странице Расписания.
  • Создание, изменение и удаление - создание и модификация расписаний на соответствующей странице веб приложения, управление их статусами и удаление.

Обработчики событий

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

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

  • Просмотр - просмотр списка пользователей на странице Пользователи, доступ к информации о пользователях, их привилегиях и ролях.
  • Создание и изменение - создание пользователя, изменение его статуса, сброс пароля, обновление привилегий и ролей на странице Пользователи в веб приложении.

Роли

  • Просмотр - просмотр списка ролей на странице Роли, информации о них, списка их привилегий и списка родительских ролей.
  • Создание, изменение и удаление - управление ролями на странице Роли в веб приложении: создание роли, обновление, удаление, изменение её привилегий и родительских ролей.

Маппинг привилегий и методов api

ГруппаПривилегияОписание метода APIМетод API
РесурсыПросмотрПросмотр использования ресурсовGET /utilization
Просмотр производительностиGET /performance
Просмотр информацииGET /info
ПроектыПросмотр и скачивание файлов и папокПросмотр дерева проектовGET /tree
Просмотр проектаGET /project
Просмотр директорииGET /directory
Просмотр файлаGET /file
Скачивание архива папкиGET /download
Создание, изменение и удаление файлов и папокСоздание проектаPOST /project
Переименование проектаPOST /project/rename
Удаление проектаDELETE /project
Создание директорииPOST /directory
Переименование директории/td>POST /directory/rename
Удаление директорииDELETE /directory
Создание файлаPOST /file
Переименование файлаPOST /file/rename
Обновление файлаPATCH /file
Удаление файлаDELETE /file
Шифрование параметровPOST /encrypt
История выполненияЧтение списка запусков, информации и статистики по запускамПросмотр запускаGET /runs/:id
Просмотр статистики запускаGET /runs/:id/stats
Просмотр содержимого графаGET /runs/:id/job_content
Просмотр количества запусковGET /runs/num
Просмотр позиции запускаGET /runs/position
Список запусковGET /runs
Чтение логов запусковПросмотр логов запускаGET /runs/:id/log
Чтение данных на ребрахПросмотр данных на ребреGET /runs/:id/inspect
Запуск и остановка графовПросмотр параметров графаGET /job_params
Создание запускаPOST /runs
Остановка графаPOST /runs/:id/abort
РасписанияПросмотрСписок расписанийGET /schedules
Просмотр информации о расписанииGET /schedules/:id
Создание, изменение и удалениеСоздание расписанияPOST /schedules
Переключение расписанияPOST /schedules/toggle
Обновление расписанияPATCH /schedules/:id
Удаление расписанияDELETE /schedules/:id
Обработчики событийПросмотрСписок обработчиков событийGET /event_listeners
Просмотр информации об обработчике событийGET /event_listeners/:id
Создание, изменение и удалениеСоздание обработчика событийPOST /event_listeners
Переключение обработчика событийPOST /event_listeners/toggle
Обновление обработчика событийPATCH /event_listeners/:id
Удаление слушателя событийDELETE /event_listeners/:id
ПользователиПросмотрСписок пользователейGET /users
Просмотр информации о пользователеGET /users/:id
Просмотр привилегий пользователяGET /users/:id/privileges
Просмотр ролей пользователяGET /users/:id/roles
Создание и изменениеСоздание пользователяPOST /users
Изменение статуса пользователяPOST /users/:id/toggle_status
Сброс пароля пользователяPOST /users/:id/reset_password
Обновление пользователяPATCH /users/:id
Обновление привилегий пользователяPATCH /users/:id/privileges
Обновление ролей пользователяPATCH /users/:id/roles
РолиПросмотрПросмотр ролейGET /roles
Просмотр информации о ролиGET /roles/:id
Просмотр привилегий ролиGET /roles/:id/privileges
Просмотр родительских ролейGET /roles/:id/parent_roles
Создание, изменение и удалениеСоздание ролиPOST /roles
Обновление ролиPATCH /roles/:id
Обновление привилегий ролиPATCH /roles/:id/privileges
Обновление родительских ролейPATCH /roles/:id/parent_roles
Удаление ролиDELETE /roles/:id

Описание всех используемых методов API приведено на странице API Onebridge