[comment]: # translation:outdated

[comment]: # ({new-19701d17})
# user.login

[comment]: # ({/new-19701d17})

[comment]: # ({new-434a533c})
### Описание

`строка/объект user.login(объект параметры)`

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

::: notewarning
При использовании этого метода вам также необходимо
выполнять [user.logout](/ru/manual/api/reference/user/logout) для
предотвращения создания большого количество записей открытых
сессий.
:::

[comment]: # ({/new-434a533c})

[comment]: # ({new-bcc6062f})
### Параметры

::: noteimportant
Этот метод доступен не прошедшим аутентификацию
пользователям и его необходимо вызывать без параметра `auth` в JSON-RPC
запросе.
:::

`(объект)` Параметры, которые содержат имя пользователя и пароль.

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

|Параметр|Тип|Описание|
|----------------|------|----------------|
|**password**<br>(требуется)|строка|Пароль пользователя.|
|**user**<br>(требуется)|строка|Имя пользователя.|
|userData|флаг|Возврат информации о прошедшем аутентификацию пользователе.|

[comment]: # ({/new-bcc6062f})

[comment]: # ({new-bc924c62})
### Возвращаемые значения

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

В дополнение к [стандартным свойствам
пользователя](object#пользователь), возвращается следующая информация:

|Свойство|Тип|Описание|
|----------------|------|----------------|
|debug\_mode|логическое|Активирован ли пользователю режим отладки.|
|gui\_access|целое число|Метод аутентификации пользователя в веб-интерфейсе.<br><br>Обратитесь к свойству `gui_access` в [объекте группы пользователей](/ru/manual/api/reference/usergroup/object#группа_пользователей) для получения списка возможных значений.|
|sessionid|строка|Токен аутентификации, который требуется использовать в последующих API запросах.|
|userip|строка|IP адрес пользователя.|

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

Если параметр `userData` не используется, этот метод возвращает лишь
токен аутентификации.

::: notetip
Сгенерированный токен аутентификации необходимо
запомнить и использовать в параметре `auth` в последующих JSON-RPC
запросах. Это также требуется делать при использовании HTTP
аутентификации.
:::

[comment]: # ({/new-bc924c62})

[comment]: # ({new-b41637d2})
### Примеры

[comment]: # ({/new-b41637d2})

[comment]: # ({new-5608b9b5})
#### Аутентификация пользователя

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

Запрос:

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

Ответ:

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

[comment]: # ({/new-5608b9b5})

[comment]: # ({new-8d29fed8})
#### Запрос информации об авторизовавшемся пользователе

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

Запрос:

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

Ответ:

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "userid": "1",
        "alias": "Admin",
        "name": "Zabbix",
        "surname": "Administrator",
        "url": "",
        "autologin": "1",
        "autologout": "0",
        "lang": "ru_RU",
        "refresh": "0",
        "type": "3",
        "theme": "default",
        "attempt_failed": "0",
        "attempt_ip": "127.0.0.1",
        "attempt_clock": "1355919038",
        "rows_per_page": "50",
        "debug_mode": true,
        "userip": "127.0.0.1",
        "sessionid": "5b56eee8be445e98f0bd42b435736e42",
        "gui_access": "0"
    },
    "id": 1
}
```

[comment]: # ({/new-8d29fed8})

[comment]: # ({new-22a14fca})
### Смотрите также

-   [user.logout](logout)

[comment]: # ({/new-22a14fca})

[comment]: # ({new-4cc4bf93})
### Исходный код

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

[comment]: # ({/new-4cc4bf93})
