user.login

Описание

string/object user.login(object parameters)

Этот метод позволяет выполнить вход в API и сгенерировать токен аутентификации.

При использовании этого метода также необходимо выполнить user.logout, чтобы предотвратить создание большого количества открытых записей сеансов.

Этот метод доступен только неаутентифицированным пользователям, которые не принадлежат ни к одной группе пользователей с включенной многофакторной аутентификацией.

Параметры

(object) Параметры, содержащие имя пользователя и пароль.

Метод принимает следующие параметры.

Parameter Type Description
password string Пароль пользователя.

Поведение параметра:
- required
username string Имя пользователя.

Поведение параметра:
- required
userData flag Возвращает информацию об аутентифицированном пользователе.

Возвращаемые значения

(string/object) Если используется параметр userData, возвращает объект, содержащий информацию об аутентифицированном пользователе.

В дополнение к стандартным свойствам пользователя возвращается следующая информация:

Property Type Description
auth_type integer Аутентификация по умолчанию для пользователя.

См. свойство authentication_type объекта Authentication object для списка возможных значений.
debug_mode integer Включен или отключен режим отладки для пользователя.

См. свойство debug_mode объекта User group object для списка возможных значений.
deprovisioned boolean Принадлежит ли пользователь группе deprovisioned users group.
gui_access string Метод аутентификации пользователя во веб-интерфейс.

См. свойство gui_access объекта User group object для списка возможных значений.
mfaid integer ID MFA method, который будет использоваться для пользователя при входе в систему.

Возвращает "0", если MFA глобально отключена или отключена для всех групп пользователей, к которым принадлежит пользователь.
secret string Случайная строка из 32 символов. Генерируется при входе пользователя в систему.
sessionid string Токен аутентификации, который необходимо использовать в последующих API-запросах.
type integer Тип пользователя.

См. свойство type объекта Role object для списка возможных значений.
userip string IP-адрес пользователя.

Если пользователь был успешно аутентифицирован после одной или нескольких неудачных попыток, метод вернет текущие значения свойств attempt_clock, attempt_failed и attempt_ip, а затем сбросит их.

Если параметр userData не используется, метод возвращает токен аутентификации, необходимый для аутентификации.

Примеры

Аутентификация пользователя

Аутентифицируйте пользователя.

Запрос:

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

Ответ:

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

Запрос информации об аутентифицированном пользователе

Выполните аутентификацию и верните дополнительную информацию о пользователе.

Запрос:

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

Ответ:

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

Смотрите также

Источник

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