user.login

Opis

string/object user.login(object parameters)

Ta metoda umożliwia logowanie do interfejsu API i generowanie tokenu uwierzytelniającego.

Korzystając z tej metody, należy również wywołać user.logout, aby zapobiec generowaniu dużej liczby otwartych sesji.

Ta metoda jest dostępna tylko dla nieuwierzytelnionych użytkowników i musi być wywoływana bez parametru auth w żądaniu JSON-RPC.

Parametry

(object) Parametry zawierające nazwę użytkownika i hasło.

Metoda akceptuje następujące parametry.

Parametr Typ Opis
password
(wymagane)
string Hasło użytkownika.
username
(wymagane)
string Nazwa użytkownika.
userData flag Zwraca informacje o uwierzytelnionym użytkowniku.
user
(przestarzałe)
string Ten parametr jest przestarzały, zamiast tego użyj username.
Nazwa użytkownika.

Zwracane wartości

(string/object) Jeśli użyto parametru userData, zwraca obiekt zawierający informacje o uwierzytelnionym użytkowniku.

Oprócz standardowych właściwości użytkownika zwracane są następujące informacje:

Właściwość Typ Opis
debug_mode integer Określa, czy tryb debugowania jest włączony dla użytkownika.

Sprawdź właściwość debug_mode obiektu Grupy użytkowników aby wyświetlić listę możliwych wartości.
gui_access integer Metoda uwierzytelniania użytkownika w interfejsie użytkownika.

Sprawdź właściwość gui_access obiektu Grupy użytkowników aby wyświetlić listę możliwych wartości.
sessionid string Token uwierzytelniający, który należy użyć w kolejnych żądaniach interfejsu API.
type integer Typ użytkownika.

Sprawdź właściwość type obiektu Roli aby wyświetlić listę możliwych wartości.
userip string Adres IP użytkownika.

Jeśli użytkownik został pomyślnie uwierzytelniony po jednej lub więcej nieudanych próbach, metoda zwróci aktualne wartości właściwości attempt_clock, attempt_failed i attempt_ip, a następnie zresetuje je.

Jeśli parametr userData nie jest używany, metoda zwraca token uwierzytelniający.

Wygenerowany token uwierzytelniający powinien być zapamiętany i użyty w parametrze auth w kolejnych żądaniach JSON-RPC. Jest również wymagany podczas korzystania z uwierzytelniania HTTP.

Przykłady

Uwierzytelnianie użytkownika

Uwierzytelnij użytkownika.

Zapytanie:

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

Odpowiedź:

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

Żądanie informacji o uwierzytelnionym użytkowniku

Uwierzytelnij i zwróć dodatkowe informacje o użytkowniku.

Zapytanie:

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

Odpowiedź:

{
           "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,
               "userip": "127.0.0.1",
               "debug_mode": 0,
               "gui_access": 0,
               "sessionid": "5b56eee8be445e98f0bd42b435736e42"
           },
           "id": 1
       }

Zobacz także

Źródło

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