获取

描述

integer/array user.get(object parameters)

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

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

参数

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

此方法支持如下参数。

参数类型描述
mediaidsID/array仅返回使用了给定媒介的用户。
mediatypeidsID/array仅返回使用了给定媒介类型的用户。
useridsID/array仅返回给定用户ID内的用户。
usrgrpidsID/array仅返回属于给定用户组的用户。
getAccessflag添加关于用户权限附加信息。

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

可用值: userid, username
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. "id": 1
  8. }

响应:

  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. "userdirectoryid": "0",
  22. "ts_provisioned": "0"
  23. },
  24. {
  25. "userid": "2",
  26. "username": "guest",
  27. "name": "",
  28. "surname": "",
  29. "url": "",
  30. "autologin": "0",
  31. "autologout": "15m",
  32. "lang": "default",
  33. "refresh": "30s",
  34. "theme": "default",
  35. "attempt_failed": "0",
  36. "attempt_ip": "",
  37. "attempt_clock": "0",
  38. "rows_per_page": "50",
  39. "timezone": "default",
  40. "roleid": "4",
  41. "userdirectoryid": "0",
  42. "ts_provisioned": "0"
  43. },
  44. {
  45. "userid": "3",
  46. "username": "user",
  47. "name": "Zabbix",
  48. "surname": "User",
  49. "url": "",
  50. "autologin": "0",
  51. "autologout": "0",
  52. "lang": "ru_RU",
  53. "refresh": "15s",
  54. "theme": "dark-theme",
  55. "attempt_failed": "0",
  56. "attempt_ip": "",
  57. "attempt_clock": "0",
  58. "rows_per_page": "100",
  59. "timezone": "default",
  60. "roleid": "1",
  61. "userdirectoryid": "0",
  62. "ts_provisioned": "0"
  63. }
  64. ],
  65. "id": 1
  66. }

查询用户数据

查询用户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. "id": 1
  10. }

响应:

  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.