Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

role.update

Описание

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

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

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

Parameters

(object/array) Role properties to be updated.

The roleid property must be defined for each role, all other properties are optional. Only the passed properties will be updated, all others will remain unchanged.

Additionally to the standard role properties the method accepts the following parameters.

Parameter Type Description
rules array Access rules to replace the current access rules assigned to the role.

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

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

Примеры

Disabling ability to execute scripts

Update role with ID "5", disable ability to execute scripts.

Request:

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

Response:

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

Limiting access to API

Update role with ID "5", deny to call any "create", "update" or "delete" methods.

Request:

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

Response:

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

Источник

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