这是原厂英文文档的翻译页面. 欢迎帮助我们 完善文档.

获取

描述

integer/array user.get(object parameters)

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

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

参数

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

此方法支持如下参数。

参数 类型 描述
mediaids ID/array 仅返回使用了给定媒介的用户。
mediatypeids ID/array 仅返回使用了给定媒介类型的用户。
userids ID/array 仅返回给定用户ID内的用户。
usrgrpids ID/array 仅返回属于给定用户组的用户。
getAccess flag 添加关于用户权限附加信息。

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

可用值: userid, username
countOutput boolean 参考说明中详细描述了所有 get方法的通用参数。
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

返回值

(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_GB",
                   "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
       }

Retrieving users as Admin

As an Admin type user, retrieve detailed data about your own user and limited data for users in your user group.

Request:

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

Response:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "userid": "1",
                   "username": "Admin",
                   "name": "Zabbix",
                   "surname": "Administrator",
                   "usrgrps": [
                       {
                           "usrgrpid": "7",
                           "name": "Zabbix administrators",
                           "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": "default",
                   "refresh": "30s",
                   "theme": "default",
                   "attempt_failed": "0",
                   "attempt_ip": "",
                   "attempt_clock": "0",
                   "rows_per_page": "50",
                   "timezone": "default",
                   "roleid": "2",
                   "provisioned": "0",
                   "gui_access": "0",
                   "debug_mode": "0",
                   "users_status": "0",
                   "usrgrps": [
                       {
                           "usrgrpid": "7",
                           "name": "Zabbix administrators",
                           "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": "Email",
                           "status": "0",
                           "description": "",
                           "maxattempts": "3"
                       }
                   ],
                   "role": {
                       "roleid": "2",
                       "name": "Admin role",
                       "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.