user.get

Descrição

integer/array user.get(object parameters)

O método permite recuperar usuários de acordo com os parâmetros fornecidos.

Este método está disponível para usuários de qualquer tipo. As permissões para chamar o método podem ser revogadas nas configurações de função de usuário. Veja Funções de usuário para mais informações.

Parâmetros

(object) Parâmetros que definem a saída desejada.

O método suporta os seguintes parâmetros.

Desde o Zabbix 7.0.9, ao solicitar informações de mídia do usuário, permissões ou função, usuários do tipo Admin e User podem recuperar dados apenas sobre o próprio usuário. Para um exemplo, consulte Recuperando usuários como Admin.

Parameter Type Description
mediaids ID/array Retorna apenas usuários que usam a mídia informada.
mediatypeids ID/array Retorna apenas usuários que usam os tipos de mídia informados.
userids ID/array Retorna apenas usuários com os IDs informados.
usrgrpids ID/array Retorna apenas usuários que pertencem aos grupos de usuários informados.
getAccess flag Adiciona informações adicionais sobre as permissões do usuário.

Adiciona as seguintes propriedades para cada usuário:
gui_access - (integer) método de autenticação do frontend do usuário. Consulte a propriedade gui_access do objeto de grupo de usuários para obter uma lista dos valores possíveis.
debug_mode - (integer) indica se a depuração está habilitada para o usuário. Valores possíveis: 0 - depuração desabilitada, 1 - depuração habilitada.
users_status - (integer) indica se o usuário está desabilitado. Valores possíveis: 0 - usuário habilitado, 1 - usuário desabilitado.
selectMedias query Retorna as mídias usadas pelo usuário na propriedade medias.
selectMediatypes query Retorna os tipos de mídia usados pelo usuário na propriedade mediatypes.

Consulte mediatype.get para restrições com base no tipo de usuário.
selectUsrgrps query Retorna os grupos de usuários aos quais o usuário pertence na propriedade usrgrps.

Consulte usergroup.get para restrições com base no tipo de usuário.
selectRole query Retorna a função do usuário na propriedade role.
filter object Retorna apenas os resultados que correspondem exatamente ao filtro informado.

Aceita um objeto, em que as chaves são nomes de propriedades e os valores são um único valor ou um array de valores com os quais comparar.

Não oferece suporte a propriedades do tipo de dados text data type.

Possíveis propriedades do objeto User para usuários do tipo Admin e User ao solicitar dados sobre usuários em seu grupo de usuários (desde o Zabbix 7.0.9): userid, name, surname, username.
output query Propriedades do objeto User a serem retornadas.

Desde o Zabbix 7.0.9, usuários do tipo Admin e User podem recuperar apenas as seguintes propriedades:
- Para o próprio usuário: userid, attempt_clock, attempt_failed, attempt_ip, autologin, autologout, lang, name, provisioned, refresh, roleid, rows_per_page, surname, theme, timezone, url, username.
- Para usuários em seu grupo de usuários: userid, name, surname, username.

Padrão: extend.
search object Retorna resultados que correspondem ao padrão informado (sem diferenciar maiúsculas de minúsculas).

Aceita um objeto, em que as chaves são nomes de propriedades e os valores são strings a serem pesquisadas. Se nenhuma opção adicional for informada, isso executará uma pesquisa LIKE "%…%".

Oferece suporte apenas a propriedades dos tipos de dados string e text data type.

Possíveis propriedades do objeto User para usuários do tipo Admin e User ao solicitar dados sobre usuários em seu grupo de usuários (desde o Zabbix 7.0.9): name, surname, username.
sortfield string/array Classifica o resultado pelas propriedades informadas.

Valores possíveis: userid, username.
countOutput boolean Esses parâmetros são descritos no comentário de referência.
editable boolean
excludeSearch boolean
limit integer
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valores de retorno

(integer/array) Retorna:

  • um array de objetos;
  • a contagem de objetos recuperados, se o parâmetro countOutput foi utilizado.

Exemplos

Recuperando usuários

Recupere todos os usuários configurados.

Requisição:

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

Resposta:

{
    "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
}

Recuperando usuários como Admin

Como um usuário do tipo Admin, recupere dados detalhados sobre seu próprio usuário e dados limitados para usuários em seu grupo de usuários.

Requisição:

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

Resposta:

{
    "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
}

Recuperando dados do usuário

Recupere os dados de um usuário com ID "12".

Requisição:

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

Resposta:

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

Veja também

Fonte

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