更新

描述

object user.update(object/array users)

此方法用于更新已经存在的用户。

此方法适用于任何类型的用户。可在用户角色设置中撤销调用该方法的权限,参阅用户角色获取详情。

通过API认证定义的密码策略规则来验证用户密码的强度,参阅API认证获取详情。

参数

(object/array) 要更新的用户属性。

必须为每个用户定义 userid 属性,其他属性可选。 只会更新提供的属性,其他属性将保持不变。

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

参数类型描述
current_passwdstring用户的密码。

如果用户关联到了一个用户目录,此参数的值可以为空字符串。

属性行为:
- 只读
- 必填 如果用户对象中的passwd字段已设置,并且用户更改了自己的用户密码时,则必填。
usrgrpsarray用户组用于替换现有的用户组。

这些用户组必须仅定义了 usrgrpid 属性。
mediasarray用户媒介用于替换现有的、非托管的媒介。在更新媒介时,已托管的媒介可以省略不填。

返回值

(object) 返回一个带有userids属性(其中包含被更新用户ID)的对象。

示例

重命名用户

把用户重命名为 John Doe。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "user.update",
  4. "params": {
  5. "userid": "1",
  6. "name": "John",
  7. "surname": "Doe"
  8. },
  9. "id": 1
  10. }

响应:

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

变更用户角色

变更一个用户的角色。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "user.update",
  4. "params": {
  5. "userid": "12",
  6. "roleid": "6"
  7. },
  8. "id": 1
  9. }

响应:

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

参考

来源

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