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 i se l'ha de cridar amb el paràmetre "auth" a una petició JSON-RPC.

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
(obligatori)
string mot de pas de l'usuari.
username
(obligatori)
string Nom d'usuari.
userData flag Retorna informació de l'usuari autenticat.
user
(obsolet)
string Aquest paràmetre és obsolet; si us plau, empreu username.
Nom d'usuari.

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ó
debug_mode boolean Indica si el mode de depuració és habilitat per a l'usuari.

Consulteu la propietat debug_mode de l'objecte grp d'usuaris per obtindre una llista de valors possibles.
gui_access integer Mètode d'autenticació d'usuari a la interfície.

Consulteu la propietat gui_access de l'objecte grup d'usuaris /reference/usergroup/object#user_group) per obtindre una llista de valors possibles.
sessionid string Token d'autenticació, que s'emprarà en sol·licituds d'API posteriors.
type integer Tipus d'usuari.

Consulteu la propietat type de l'objecte grup d'usuaris /reference/usergroup/object#user_group) per obtindre una llista de valors possibles.
userip string Adreça IP de l'usuari.

Si un usuari s'ha autenticat correctament després d'un o més intents erronis, el mètode retorna els valors actuals de les propietats attempt_clock, attempt_failed i attempt_ip; i després els restableix.

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

El testimoni d'autenticació generat s'ha de recordar i emprar al paràmetre auth de les sol·licituds JSON-RPC posteriors. També és necessari quan s'empra l'autenticació HTTP.

Exemples

Autenticar un usuari

Autenticar 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

Autenticar i reenviar 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",
               "type": 3,
               "debug_mode": 0,
               "userip": "127.0.0.1",
               "gui_access": "0",
               "sessionid": "5b56eee8be445e98f0bd42b435736e42"
           },
           "id": 1
       }

Veieu també

Font

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