Esta é uma tradução da página de documentação original em inglês. Ajude-nos a torná-la melhor.

user.login

Descrição

string/object user.login(object parameters)

Este método permite efetuar login na API e gerar um token de autenticação.

Ao usar este método, você também precisa fazer user.logout para evitar a geração de um grande número de registros de sessão aberta.

::: não importante
Este método está disponível apenas para usuários não autenticados e deve ser chamado sem o parâmetro auth na solicitação JSON-RPC. :::

Parâmetros

(object) Parâmetros contendo o nome de usuário e senha.

O método aceita os seguintes parâmetros.

Parâmetro Tipo Descrição
password
(requerido)
string Senha do usuário.
username
(requerido)
string Nome de usuário.
userData flag Retorna informações sobre o usuário autenticado.

Valores de retorno

(string/object) Se o parâmetro userData for usado, retorna um objeto contendo informações sobre o usuário autenticado.

Além das propriedades de usuário padrão, as seguintes informações são retornadas:

Propriedade Tipo Descrição
debug_mode boolean Se o modo de depuração está ativado para o usuário.
gui_access integer Método de autenticação do usuário para o frontend.

Consulte a propriedade gui_access do user group object para um lista de valores possíveis.
sessionid string Token de autenticação, que deve ser usado nas seguintes solicitações de API.
userip string endereço IP do usuário.

Se um usuário foi autenticado com sucesso após uma ou mais tentativas com falha, o método retornará os valores atuais para
as propriedades attempt_clock, attempt_failed e attempt_ip e, em seguida, redefina-as.

Se o parâmetro userData não for usado, o método retornará um token de autenticação.

O token de autenticação gerado deve ser lembrado e usado no parâmetro auth das seguintes solicitações JSON-RPC. Também é necessário ao usar a autenticação HTTP.

Exemplos

Autenticação de um usuário

Autenticar um usuário.

Request:

{
           "jsonrpc": "2.0",
           "method": "user.login",
           "params": {
               "username": "Admin",
               "password": "zabbix"
           },
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": "0424bd59b807674191e7d77572075f33",
           "id": 1
       }

Solicitando informações do usuário autenticado

Autenticar e retornar informações adicionais sobre o usuário.

Request:

{
           "jsonrpc": "2.0",
           "method": "user.login",
           "params": {
               "username": "Admin",
               "password": "zabbix",
               "userData": true
           },
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "userid": "1",
               "username": "Admin",
               "name": "Zabbix",
               "surname": "Administrator",
               "url": "",
               "autologin": "1",
               "autologout": "0",
               "lang": "ru_RU",
               "refresh": "0",
               "theme": "default",
               "attempt_failed": "0",
               "attempt_ip": "127.0.0.1",
               "attempt_clock": "1355919038",
               "rows_per_page": "50",
               "timezone": "Europe/Riga",
               "roleid": "3",
               "type": 3,
               "debug_mode": 0,
               "userip": "127.0.0.1",
               "gui_access": "0",
               "sessionid": "5b56eee8be445e98f0bd42b435736e42"
           },
           "id": 1
       }

Veja também

Fonte

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