Пользовательская роль (role)
Описание
Роль, доступная для указания в списке ролей пользователей.
Позволяет привязать к ней разрешения на доступ к REST-API и websocket-API (routes) , а также к ролевым веб-приложениям (webapps).
Пользователь, которому назначена роль, получает доступ к указанным API и веб-приложениям.
В частности с помощью пользовательских ролей можно формировать ролевые модели на базе динамических классов и соответствующих им ролевых приложений.
Поддерживает наследование.
Весь набор ролей со списками групп и пользователей, которым они назначены, доступен через API roles_caches.
Поля
{
"id": uuid,
"name": str,
"description": str,
"parent_id": uuid,
"routes": array<object>,
"opts": {
"title": str,
"comment": str
},
"security": object,
"ext": {
"ct": date,
"lwt": date
}
}
Спецификация | Описание |
---|---|
Поле: |
Идентификатор. Может быть задан при создании, иначе генерируется системой. |
Поле: |
Название роли (строчная латиница). |
Поле: |
Описание |
Поле: |
Идентификатор базовой группы, чьи настройки польностью копируются. |
Поле: |
Список разрешенных эндпойнтов API. Каждый элемент списка представляет собой объект: { "url": ..., "method": [...] } В качестве урла должен быть указан конкретный эндпойнт. Поддерживаются:
В рамках каждой коллекции различаются эндпойнты:
Или "/rest/v1/model/my/test/**" - все эндпойнты коллекции, кроме эндпойнта самой коллекции. Методы: "GET", "POST", "PUT", "PATCH", "DELETE", "LOOKUP", "HEAD", "CLEAR", "*", "WEBSOCKET". Существуют и другие нестандартные методы для специфических эндпойнтов. Например для создания вызова от имени IVR используется метод "INVITEBYIVR". Перечислены в описании API конкретных эндпойнтов. Такие методы включены в "*" или должны быть указаны отдельно. Метод "WEBSOCKET" применяется для предоставления доступа к различным API websocket. Конкретный модуль API указывается за хешом в "url" (см. пример ниже). Пример: [ { "url": "/rest/v1/model/my/test", "methods": ["GET","CLEAR"] }, { "url": "/rest/v1/model/my/test/*", "methods": ["GET","PUT","PATCH","DELETE"] }, { "url": "/rest/v1/model/my/test/**", "methods": ["*"] }, { "url": "/ws#subscr", "methods": ["WEBSOCKET"] } ] |
Поле: |
Возвращает список доступных для роли веб-приложений. |
Поле: |
|
Поле: |
Произвольный заголовок |
Поле: |
Произвольный комментарий |
Поле: |
Позволяет расширять состав произвольными ключами и значениями. |
Поле: |
Позволяет расширять состав произвольными ключами и значениями. |
Поле: |
Время создания объекта |
Поле: |
Время последней модификации объекта |