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.
(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. |
(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 | enter | 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 | enter | 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 | booleà | Si l'usuari pertany a un grup d'usuaris desprovisionats. |
gui_access | cadena | 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. |
secret | cadena | Cadena aleatòria de 32 caràcters. Es genera a l'inici de sessió de l'usuari. |
sessionid | cadena | Token d'autenticació, que s'ha d'emprar a les peticions d'API següents. |
type | enter | Tipus d'usuari. Consulteu la propietat type de l'objecte rol per obtindre una llista de valors possibles. |
userip | cadena | 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.
Autentica un usuari.
{
"jsonrpc": "2.0",
"method": "user.login",
"params": {
"username": "Admin",
"password": "zabbix"
},
"id": 1
}
Resposta:
Autentica i reenvia la informació suplementària de l'usuari.
{
"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",
"userdirectoryid": 0,
"sessionid": "5b56eee8be445e98f0bd42b435736e42"
},
"id": 1
}
CUser::login() in ui/include/classes/api/services/CUser.php.