role.update

Описание

object role.update(объект/массив roles)

Этот метод позволяет обновлять существующие роли.

Этот метод доступен только пользователю с типом доступа Супер-администратор. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.

Параметры

(object/array) Свойства роли, которые необходимо обновить.

Свойство roleid должно быть определено для каждой роли, все остальные свойства являются необязательными. Будут обновлены только переданные свойства, все остальные останутся без изменений.

В дополнение к стандартным свойствам роли метод принимает следующие параметры.

Параметр Тип Описание
rules array Правила доступа rules, которые необходимо обновить для роли.

Возвращаемые значения

(object) Возвращает объект, содержащий идентификаторы обновлённых ролей, указанных в свойстве roleids.

Примеры

Отключение возможности выполнять скрипты

Обновите роль с ID "5", отключив возможность выполнять скрипты.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "role.update",
    "params": [
        {
            "roleid": "5",
            "rules": {
                "actions": [
                    {
                        "name": "execute_scripts",
                        "status": "0"
                    }
                ]
            }
        }
    ],
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "roleids": [
            "5"
        ]
    },
    "id": 1
}

Ограничение доступа к API

Обновите роль с ID "5", запретив вызов любых методов "create", "update" или "delete".

Запрос:

{
    "jsonrpc": "2.0",
    "method": "role.update",
    "params": [
        {
            "roleid": "5",
            "rules": {
                "api.access": "1",
                "api.mode": "0",
                "api": ["*.create", "*.update", "*.delete"]
            }
        }
    ],
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "roleids": [
            "5"
        ]
    },
    "id": 1
}

Источник

CRole::update() в ui/include/classes/api/services/CRole.php.