user.login

Descripció

string/object user.login(object parameters)

Aquest mètode permet connectar a l'API i generar un token d'autenticació.

Quan empreu aquest mètode, haureu de fer user.logout per previndre la generació d'un llarg nombre de registres de sessió oberts.

Aquest mètode només és disponible per usuaris no autenticats que no pertanyen pas a cap grup d'usuaris amb MFA actiu.

Paràmetres

(object) Paràmetres que contenen nom d'usuari i mot de pas.

El mètode admet els paràmetres següents.

Paràmetre Tipus Descripció
password string mot de pas de l'usuari.

Comportament de la propietat:
- obligatori
username string Nom d'usuari.

Comportament de la propietat:
- obligatori
userData flag Retorna informació de l'usuari autenticat.

Valors de retorn

(string/object) Si s'empra el paràmetre userData, retorna un objecte que conté informació sobre l'usuari autenticat.

A més de les propietats de l'objecte estàndard usuari, es retorna la informació següent:

Propietat Tipus Descripció
auth_type integer Autenticació per defecte per a l'usuari.

Consulteu la propietat authentication_type de l'objecte d'autenticació per a un llistat de possibles valors.
debug_mode integer Si el mode de depuració és activat o desactivat per a l'usuari.

Consulteu la propietat debug_mode de l'Objecte del grup d'usuaris per obtindre una llista de possibles valors.
deprovisioned boolean Si l'usuari pertany a un grup d'usuaris desprovisionats.
gui_access string Mètode d'autenticació de l'usuari a la interfície.

Consulteu la propietat gui_access de l'objecte del grup d'usuaris el llistat de possibles valors.
mfaid integer ID del mètode MFA emprat per l'usuari a l'iniciar sessió.

Retorna "0" si MFA és desactivat globalment o per tots els grups d'usuari on l'usuari pertany.
secret string Cadena aleatòria de 32 caràcters. Es genera a l'inici de sessió de l'usuari.
sessionid string Token d'autenticació, que s'ha d'emprar a les peticions d'API següents.
type integer Tipus d'usuari.

Consulteu la propietat type de l'objecte rol per obtindre una llista de valors possibles.
userip string adreça IP de l'usuari.

::: consell de notes Si un usuari s'ha autenticat correctament després d'un o més intents fallits, el mètode retornarà els valors actuals de les propietats attempt_clock, attempt_failed i attempt_ip i després el reiniciarà. :::

Si no s'empra el paràmetre userData, el mètode retorna un token d'autenticació.

Cal recordar el token d'autenticació generat i s'empra al paràmetre auth de les següents peticions JSON-RPC. Això també és necessari quan s'empra l'autenticació HTTP.

Exemples

Autenticar un usuari

Autentica un usuari.

Petició:

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

Resposta:

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

Demanar informació de l'usuari autenticat

Autentica i reenvia la informació suplementària de l'usuari.

Petició:

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

Resposta:

{
           "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",
               "userdirectoryid": "0",
               "type": 3,
               "userip": "127.0.0.1",
               "debug_mode": 0,
               "gui_access": "0",
               "mfaid": "1",
               "deprovisioned": false,
               "auth_type": 0,
               "sessionid": "5b56eee8be445e98f0bd42b435736e42",
               "secret": "cd0ba923319741c6586f3d866423a8f4"
           },
           "id": 1
       }

Veieu també

Font

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