user.login
Opis
string/object user.login(object parameters)
Ta metoda umożliwia zalogowanie się do API i wygenerowanie tokenu uwierzytelniającego.
Podczas korzystania z tej metody należy również wykonać user.logout, aby zapobiec generowaniu dużej liczby rekordów otwartych sesji.
Ta metoda jest dostępna tylko dla nieuwierzytelnionych użytkowników, którzy nie należą do żadnej grupy użytkowników z włączonym uwierzytelnianiem wieloskładnikowym.
Parametry
(object) Parametry zawierające nazwę użytkownika i hasło.
Metoda akceptuje następujące parametry.
| Parametr | Typ | Opis |
|---|---|---|
| password | string | Hasło użytkownika. Zachowanie parametru: - wymagany |
| username | string | Nazwa użytkownika. Zachowanie parametru: - wymagany |
| userData | flag | Zwraca informacje o uwierzytelnionym użytkowniku. |
Zwracane wartości
(string/object) Jeśli używany jest parametr userData, zwracany jest 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 |
|---|---|---|
| auth_type | integer | Domyślna metoda uwierzytelniania dla użytkownika. Listę możliwych wartości można znaleźć we właściwości authentication_type obiektu Authentication object. |
| debug_mode | integer | Określa, czy tryb debugowania jest włączony czy wyłączony dla użytkownika. Listę możliwych wartości można znaleźć we właściwości debug_mode obiektu User group object. |
| deprovisioned | boolean | Określa, czy użytkownik należy do grupy wycofanych użytkowników. |
| gui_access | string | Metoda uwierzytelniania użytkownika do frontendu. Listę możliwych wartości można znaleźć we właściwości gui_access obiektu User group object. |
| mfaid | integer | ID metody MFA, która ma być używana dla użytkownika podczas logowania. Zwraca "0", jeśli MFA jest globalnie wyłączone lub wyłączone dla wszystkich grup użytkowników, do których należy użytkownik. |
| secret | string | Losowy ciąg 32 znaków. Jest generowany podczas logowania użytkownika. |
| sessionid | string | Token uwierzytelniający, który musi być używany w kolejnych żądaniach API. |
| type | integer | Typ użytkownika. Listę możliwych wartości można znaleźć we właściwości type obiektu Role object. |
| userip | string | Adres IP użytkownika. |
Jeśli użytkownik został pomyślnie uwierzytelniony po jednej
lub większej liczbie nieudanych prób, metoda zwróci bieżące wartości
właściwości attempt_clock, attempt_failed i attempt_ip,
a następnie je zresetuje.
Jeśli parametr userData nie jest używany, metoda zwraca token uwierzytelniający wymagany do uwierzytelniania.
Przykłady
Uwierzytelnianie użytkownika
Uwierzytelnij użytkownika.
{
"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.
{
"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",
"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
}
Zobacz także
Źródło
CUser::login() w ui/include/classes/api/services/CUser.php.