更新

说明

object role.update(object/array roles)

This method allows to update existing roles. 用户使用该方法可以用来更新存在的角色用户。

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

参数

(object/array) 要更新的角色属性。

必须为每个角色定义 roleid 属性,所有其他属性均为可选。只有传递的属性将被更新,其他属性将保持不变。

除了 标准角色属性,该方法还接受以下参数。

参数类型描述
rulesarray要为角色更新的规则

(object/array) 要更新的角色属性。

The roleid 该属性为必要配置参数,需要为每个规划报告定义,其它属性则为可选配置。只有符合要求的属性更改才会更新,其它属性则会保持不变。 除此之外,根据标准规划报告属性 ,该方法接受如下参数。 |参数|类型|说明| |————-|—————————————————————————-|—————-| |rules|数组|将当前赋予该职责用户的访问规则修改为新的访问规则。|

返回值

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

示例

关闭运行脚本功能

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

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "role.update",
  4. "params": [
  5. {
  6. "roleid": "5",
  7. "rules": {
  8. "actions": [
  9. {
  10. "name": "execute_scripts",
  11. "status": "0"
  12. }
  13. ]
  14. }
  15. }
  16. ],
  17. "id": 1
  18. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "roleids": [
  5. "5"
  6. ]
  7. },
  8. "id": 1
  9. }

限制对API的访问

更新ID号为5的角色,拒绝任何 “创建”, “更新” 或者 “删除” 方式。 请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "role.update",
  4. "params": [
  5. {
  6. "roleid": "5",
  7. "rules": {
  8. "api.access": "1",
  9. "api.mode": "0",
  10. "api": ["*.create", "*.update", "*.delete"]
  11. }
  12. }
  13. ],
  14. "id": 1
  15. }

Response: 响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "roleids": [
  5. "5"
  6. ]
  7. },
  8. "id": 1
  9. }

参考来源

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