查询用户

描述

integer/array user.get(object parameters)

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

此方法仅适用于Super admin 类型的用户. 可在用户角色配置中撤销对此方法的使用. 参阅角色获取详情.

参数

(object) 定义需要输出的参数.

此方法支持如下参数.

参数类型描述
mediaidsstring/array仅返回使用了给定媒介的用户.
mediatypeidsstring/array仅返回使用了给定媒介类型的用户.
useridsstring/array仅返回给定用户ID内的用户.
usrgrpidsstring/array仅返回属于给定用户组的用户.
getAccessflag添加关于用户权限附加信息.

为每个用户添加以下属性:
gui_access - (integer) 用户的前端认证方法. 参考 gui_access 的属性关于 用户组对象 可接受的值列表.
debug_mode - (integer) 表明是否为用户启用了调试功能. 可用值: 0 - 禁用调试模式, 1 - 启用调试模式.
users_status - (integer) 表明用户是否禁用. 可用值: 0 - 启用用户, 1 - 禁用用户.
selectMediasquery媒介 属性中返回用户使用的媒介.
selectMediatypesquery媒介类型 属性中返回用户使用的媒介类型.
selectUsrgrpsquery用户组 属性中返回用户所归属的组.
selectRolequery角色 属性中返回用户的角色.
sortfieldstring/array根据给定的属性对结果进行排序.

可用值: useridusername.
countOutputboolean这些参数对于所有的 get 方法是常见的,在 参考说明中有详细描述.
editableboolean
excludeSearchboolean
filterobject
limitinteger
outputquery
preservekeysboolean
searchobject
searchByAnyboolean
searchWildcardsEnabledboolean
sortorderstring/array
startSearchboolean

返回值

(integer/array) 返回:

  • 一个对象数组;
  • 检索对象的计数, 如果, 如果 countOutput 参数被使用.

示例

多用户查询

查询所有已配置的用户.

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "user.get",
  4. "params": {
  5. "output": "extend"
  6. },
  7. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  8. "id": 1
  9. }

返回:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "userid": "1",
  6. "username": "Admin",
  7. "name": "Zabbix",
  8. "surname": "Administrator",
  9. "url": "",
  10. "autologin": "1",
  11. "autologout": "0",
  12. "lang": "en_GB",
  13. "refresh": "0s",
  14. "theme": "default",
  15. "attempt_failed": "0",
  16. "attempt_ip": "",
  17. "attempt_clock": "0",
  18. "rows_per_page": "50",
  19. "timezone": "default",
  20. "roleid": "3"
  21. },
  22. {
  23. "userid": "2",
  24. "username": "guest",
  25. "name": "",
  26. "surname": "",
  27. "url": "",
  28. "autologin": "0",
  29. "autologout": "15m",
  30. "lang": "default",
  31. "refresh": "30s",
  32. "theme": "default",
  33. "attempt_failed": "0",
  34. "attempt_ip": "",
  35. "attempt_clock": "0",
  36. "rows_per_page": "50",
  37. "timezone": "default",
  38. "roleid": "4"
  39. },
  40. {
  41. "userid": "3",
  42. "username": "user",
  43. "name": "Zabbix",
  44. "surname": "User",
  45. "url": "",
  46. "autologin": "0",
  47. "autologout": "0",
  48. "lang": "ru_RU",
  49. "refresh": "15s",
  50. "theme": "dark-theme",
  51. "attempt_failed": "0",
  52. "attempt_ip": "",
  53. "attempt_clock": "0",
  54. "rows_per_page": "100",
  55. "timezone": "default",
  56. "roleid": "1"
  57. }
  58. ],
  59. "id": 1
  60. }

查询用户数据

查询用户ID是 “12” 的用户数据.

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "user.get",
  4. "params": {
  5. "output": ["userid", "username"],
  6. "selectRole": "extend",
  7. "userids": "12"
  8. },
  9. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  10. "id": 1
  11. }

返回:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "userid": "12",
  6. "username": "John",
  7. "role": {
  8. "roleid": "5",
  9. "name": "Operator",
  10. "type": "1",
  11. "readonly": "0"
  12. }
  13. }
  14. ],
  15. "id": 1
  16. }

参考

来源

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