获取

描述

integer/array user.get(object parameters)

此方法用于根据给定的参数查询用户。

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

参数

(object) 定义所需输出的参数。

该方法支持以下参数。

自 Zabbix 7.0.9 版本起,当请求用户媒体、权限或角色信息时,AdminUser 类型的用户只能检索有关他们自己的用户数据。 有关示例,请参阅 Admin 身份检索用户

参数 类型 描述
mediaids ID/数组 仅返回使用指定媒体的用户。
mediatypeids ID/数组 仅返回使用指定媒体类型的用户。
userids ID/数组 仅返回具有指定 ID 的用户。
usrgrpids ID/数组 仅返回属于指定用户组的用户。
getAccess 标记 添加有关用户权限的附加信息。

为每个用户添加以下属性:
gui_access - (整数) 用户的前端认证方法。参阅 用户组对象gui_access 属性以获取可能的值列表。
debug_mode - (整数) 表明是否为用户启用了调试。可能的值:0 - 禁用调试,1 - 启用调试。
users_status - (整数) 表明用户是否被禁用。可能的值:0 - 用户启用,1 - 用户禁用。
selectMedias 查询 返回在 medias 属性中用户使用的媒体。
selectMediatypes 查询 返回在 mediatypes 属性中用户使用的媒体类型。

参见 mediatype.get 以获取基于用户类型的限制。
selectUsrgrps 查询 返回在 usrgrps 属性中用户所属的用户组。

参见 usergroup.get 以获取基于用户类型的限制。
selectRole 查询 返回在 role 属性中的用户角色。
filter 对象 仅返回与给定过滤器完全匹配的结果。

接受一个对象,其中键是属性名称,值是用于匹配的单个值或值数组。

不支持 text 数据类型的属性。

可能的 User object 属性对于 AdminUser 类型的用户在请求他们用户组中的用户数据时(自 Zabbix 7.0.9 版本起):useridnamesurnameusername
output 查询 User object 属性将被返回。

自 Zabbix 7.0.9 版本起,AdminUser 类型的用户只能检索以下属性:
- 对于他们自己的用户:useridattempt_clockattempt_failedattempt_ipautologinautologoutlangnameprovisionedrefreshroleidrows_per_pagesurnamethemetimezoneurlusername
- 对于他们用户组中的用户:useridnamesurnameusername

默认值:extend
search 对象 返回与给定模式匹配的结果(不区分大小写)。

接受一个对象,其中键是属性名称,值是用于搜索的字符串。如果没有给出其他选项,这将执行一个 LIKE "%…%" 搜索。

仅支持 stringtext 数据类型的属性。

可能的 User object 属性对于 AdminUser 类型的用户在请求他们用户组中的用户数据时(自 Zabbix 7.0.9 版本起):namesurnameusername
sortfield 字符串/数组 根据给定属性对结果进行排序。

可能的值:useridusername
countOutput 布尔值 这些参数在 参考说明 中有描述。
editable 布尔值
excludeSearch 布尔值
limit 整数
preservekeys 布尔值
searchByAny 布尔值
searchWildcardsEnabled 布尔值
sortorder 字符串/数组
startSearch 布尔值

返回值

(integer/array) 返回:

  • 一个对象数组;
  • 检索对象的计数(使用 countOutput 参数时)。

示例

获取用户

检索所有已配置的用户。

请求:

{
           "jsonrpc": "2.0",
           "method": "user.get",
           "params": {
               "output": "extend"
           },
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "userid": "1",
                   "username": "Admin",
                   "name": "Zabbix",
                   "surname": "Administrator",
                   "url": "",
                   "autologin": "1",
                   "autologout": "0",
                   "lang": "en_US",
                   "refresh": "0s",
                   "theme": "default",
                   "attempt_failed": "0",
                   "attempt_ip": "",
                   "attempt_clock": "0",
                   "rows_per_page": "50",
                   "timezone": "default",
                   "roleid": "3",
                   "userdirectoryid": "0",
                   "ts_provisioned": "0"
               },
               {
                   "userid": "2",
                   "username": "guest",
                   "name": "",
                   "surname": "",
                   "url": "",
                   "autologin": "0",
                   "autologout": "15m",
                   "lang": "default",
                   "refresh": "30s",
                   "theme": "default",
                   "attempt_failed": "0",
                   "attempt_ip": "",
                   "attempt_clock": "0",
                   "rows_per_page": "50",
                   "timezone": "default",
                   "roleid": "4",
                   "userdirectoryid": "0",
                   "ts_provisioned": "0"
               },
               {
                   "userid": "3",
                   "username": "user",
                   "name": "Zabbix",
                   "surname": "User",
                   "url": "",
                   "autologin": "0",
                   "autologout": "0",
                   "lang": "ru_RU",
                   "refresh": "15s",
                   "theme": "dark-theme",
                   "attempt_failed": "0",
                   "attempt_ip": "",
                   "attempt_clock": "0",
                   "rows_per_page": "100",
                   "timezone": "default",
                   "roleid": "1",
                   "userdirectoryid": "0",
                   "ts_provisioned": "0"
               }
           ],
           "id": 1
       }

作为 管理员 检索用户

作为 管理员 类型的用户,检索有关您自己的用户的详细数据,以及您用户组中用户的有限数据。

请求:

{
           "jsonrpc": "2.0",
           "method": "user.get",
           "params": {
               "output": "extend",
               "getAccess": true,
               "selectMedias": "extend",
               "selectMediatypes": "extend",
               "selectUsrgrps": "extend",
               "selectRole": "extend"
           },
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "userid": "1",
                   "username": "管理员",
                   "name": "Zabbix",
                   "surname": "管理员",
                   "usrgrps": [
                       {
                           "usrgrpid": "7",
                           "name": "Zabbix 管理员",
                           "gui_access": "0",
                           "users_status": "0",
                           "debug_mode": "0",
                           "mfa_status": "0"
                       }
                   ]
               },
               {
                   "userid": "3",
                   "username": "database-admin",
                   "name": "John",
                   "surname": "Doe",
                   "url": "",
                   "autologin": "0",
                   "autologout": "0",
                   "lang": "默认",
                   "refresh": "30s",
                   "theme": "默认",
                   "attempt_failed": "0",
                   "attempt_ip": "",
                   "attempt_clock": "0",
                   "rows_per_page": "50",
                   "timezone": "默认",
                   "roleid": "2",
                   "provisioned": "0",
                   "gui_access": "0",
                   "debug_mode": "0",
                   "users_status": "0",
                   "usrgrps": [
                       {
                           "usrgrpid": "7",
                           "name": "Zabbix 管理员",
                           "gui_access": "0",
                           "users_status": "0",
                           "debug_mode": "0",
                           "mfa_status": "0"
                       }
                   ],
                   "medias": [
                       {
                           "mediaid": "2",
                           "mediatypeid": "1",
                           "sendto": [
                               "[email protected]"
                           ],
                           "active": "0",
                           "severity": "63",
                           "period": "1-7,00:00-24:00",
                           "provisioned": 0
                       }
                   ],
                   "mediatypes": [
                       {
                           "mediatypeid": "1",
                           "type": "0",
                           "name": "电子邮件",
                           "status": "0",
                           "description": "",
                           "maxattempts": "3"
                       }
                   ],
                   "role": {
                       "roleid": "2",
                       "name": "管理员角色",
                       "type": "2",
                       "readonly": "0"
                   }
               }
           ],
           "id": 1
       }

查询用户数据

查询用户ID是"12"的用户数据。

请求:

{
           "jsonrpc": "2.0",
           "method": "user.get",
           "params": {
               "output": ["userid", "username"],
               "selectRole": "extend",
               "userids": "12"
           },
           "id": 1
       }

响应:

{
         "jsonrpc": "2.0",
         "result": [
             {
                 "userid": "12",
                 "username": "John",
                 "role": {
                     "roleid": "5",
                     "name": "Operator",
                     "type": "1",
                     "readonly": "0"
                 }
             }
         ],
         "id": 1
       }

参考

来源

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