user.login

Descripción

string/object user.login(object parameters)

Este método permite iniciar sesión en la API y generar un token de autenticación.

Al utilizar este método, también debe hacer user.logout para evitar el generación de un gran número de registros de sesiones abiertas.

Este método sólo está disponible para usuarios no autenticados. y debe ser llamado sin el parámetro auth en la solicitud JSON-RPC.

Parámetros

(objeto) Parámetros que contienen el nombre de usuario y la contraseña.

El método acepta los siguientes parámetros.

Parámetro Tipo Descripción
password
(obligatorio)
cadena Contraseña de usuario.
username
(obligatorio)
cadena Nombre de usuario.
userData flag Devuelve información sobre el usuario autenticado.
user
(obsoleto)
cadena Este parámetro está obsoleto; utilice username en su lugar.
Nombre de usuario.

Valores de retorno

(cadena/objeto) Si se utiliza el parámetro userData, devuelve un objeto que contiene información sobre el usuario autenticado.

Además de las propiedades de usuario estándar, el se devuelve la siguiente información:

Propiedad Tipo Descripción
debug_mode integer Si el modo de depuración está habilitado para el usuario.

Consulte la propiedad debug_mode del objeto de grupo de usuarios para obtener una lista de valores posibles.
gui_access integer Método de autenticación del usuario en el frontend.

Consulte la propiedad gui_access del objeto de grupo de usuarios para obtener lista de valores posibles.
sessionid cadena Token de autenticación, que debe usarse en las siguientes solicitudes de API.
type integer Tipo de usuario.

Consulte la propiedad type del objeto de rol para obtener una lista de valores posibles.
userip string Dirección IP del usuario.

Si un usuario ha sido autenticado exitosamente después de una o más intentos fallidos, el método devolverá los valores actuales para las propiedades attempt_clock, attempt_failed y attempt_ip y luego restablecerlos.

Si no se utiliza el parámetro userData, el método devuelve un token de autenticación.

Se debe recordar el token de autenticación generado. y se utiliza en el parámetro auth de las siguientes solicitudes JSON-RPC. Él También es necesario cuando se utiliza la autenticación HTTP.

Ejemplos

Autenticar a un usuario

Autenticar a un usuario.

Solicitud:

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

Respuesta:

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

Solicitando información de usuario autenticado

Autenticar y devolver información adicional sobre el usuario.

Pedido:

{
           "jsonrpc": "2.0",
           "método": "usuario.iniciar sesión",
           "parámetros": {
               "nombre de usuario": "Administrador",
               "contraseña": "zabbix",
               "datos de usuario": verdadero
           },
           "identificación": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "resultado": {
               "ID de usuario": "1",
               "nombre de usuario": "Administrador",
               "nombre": "Zabbix",
               "apellido": "Administrador",
               "URL": "",
               "autologin": "1",
               "cierre de sesión automático": "0",
               "lang": "ru_RU",
               "actualizar": "0",
               "tema": "predeterminado",
               "intento_fallido": "0",
               "intento_ip": "127.0.0.1",
               "intento_reloj": "1355919038",
               "rows_per_page": "50",
               "timezone": "Europa/Riga",
               "roleid": "3",
               "tipo": 3,
               "userip": "127.0.0.1",
               "modo_depuración": 0,
               "gui_acceso": 0,
               "sessionid": "5b56eee8be445e98f0bd42b435736e42"
           },
           "identificación": 1
       }

Ver también

Fuente

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