2022 Zabbix中国峰会
2022 Zabbix中国峰会

角色.更新

说明

object role.update(object/array roles)

用户使用该方法可以用来更新存在的角色用户。

该方式仅对超级管理员类型的用户生效。 用户可以在用户角色设置中对该方式的使用权限进行设定修改。请参考 用户角色以获取更多信息。

参数

(object/array) 要更新的职责属性。

The reportid 该属性为必要配置参数,需要为每个规划报告定义,其它属性则为可选配置。只有符合要求的属性更改才会更新,其它属性则会保持不变。

除此之外,根据标准规划报告属性,该方法接受如下参数。

参数 类型 说明
rules 数组 将当前赋予该职责用户的访问规则修改为新的访问规则

返回值

根据roleids的特性,(object)返回一个包含已更新职责用户ID的对象。

示例

关闭运行脚本功能

更新ID号为5的角色,关闭其运行脚本的功能。

请求:

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

响应:

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

限制对API的访问

更新ID号为5的角色,拒绝任何 "创建", "更新" 或者 "删除" 方式。

请求:

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

响应:

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

参考来源

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