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.

Żądanie:

{
    "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.

Żądanie:

{
    "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.