[comment]: # ({43f8bc43-43f8bc43})
# user.checkAuthentication

[comment]: # ({/43f8bc43-43f8bc43})

[comment]: # ({3c28b1f2-a9b9d697})
### Descripción

`object user.checkAuthentication`

Este método verifica y prolonga la sesión del usuario.

::: noteimportant
Llamar al método `user.checkAuthentication` usando el parámetro `sessionid` prolonga la sesión del usuario por defecto.
:::

[comment]: # ({/3c28b1f2-a9b9d697})

[comment]: # ({22aef924-49a0b391})
### Parámetros

El método acepta los siguientes parámetros.

|Parámetro|[Tipo](/manual/api/reference_commentary#data-types)|Descripción|
|--|--|------|
|extend|boolean|Si se debe prolongar la sesión del usuario.<br><br>Valor por defecto: "true".<br>Establecer el valor a "false" permite comprobar la sesión del usuario sin prolongarla.<br><br>[Comportamiento del parámetro](/manual/api/reference_commentary#parameter-behavior):<br>- *soportado* si se establece `sessionid`|
|sessionid|string|[Token de autenticación](/manual/api#authentication) del usuario.<br><br>[Comportamiento del parámetro](/manual/api/reference_commentary#parameter-behavior):<br>- *requerido* si no se establece `token`|
|token|string|[Token de API](/manual/api#authentication) del usuario.<br><br>[Comportamiento del parámetro](/manual/api/reference_commentary#parameter-behavior):<br>- *requerido* si no se establece `sessionid`|

[comment]: # ({/22aef924-49a0b391})

[comment]: # ({b0d25373-a8544e3e})
### Valores de retorno

`(object)` Devuelve un objeto que contiene información sobre el usuario.

Además de las [propiedades estándar del usuario](object#user), se devuelve la siguiente información.

|Propiedad|[Tipo](/manual/api/reference_commentary#data-types)|Descripción|
|--|--|------|
|auth\_type|integer|Autenticación predeterminada para el usuario.<br><br>Consulte la propiedad `authentication_type` del [objeto Authentication](/manual/api/reference/authentication/object#authentication-object) para ver una lista de valores posibles.|
|debug\_mode|integer|Indica si el modo de depuración está habilitado o deshabilitado para el usuario.<br><br>Consulte la propiedad `debug_mode` del [objeto User group](/manual/api/reference/usergroup/object#user-group) para ver una lista de valores posibles.|
|deprovisioned|boolean|Indica si el usuario pertenece a un [grupo de usuarios desprovisionados](/manual/web_interface/frontend_sections/users/authentication#configuration).|
|gui\_access|string|Método de autenticación del usuario en el frontend.<br><br>Consulte la propiedad `gui_access` del [objeto User group](/manual/api/reference/usergroup/object#user-group) para ver una lista de valores posibles.|
|secret|string|Cadena aleatoria de 32 caracteres. Se genera al iniciar sesión el usuario.<br><br>La propiedad `secret` no se devuelve si la sesión del usuario se comprueba utilizando un token de API.|
|sessionid|string|Token de autenticación, que debe utilizarse en las siguientes solicitudes de la API.<br><br>La propiedad `sessionid` no se devuelve si la sesión del usuario se comprueba utilizando un token de API.|
|type|integer|Tipo de usuario.<br><br>Consulte la propiedad `type` del [objeto Role](/manual/api/reference/role/object#role) para ver una lista de valores posibles.|
|userip|string|Dirección IP del usuario.|

[comment]: # ({/b0d25373-a8544e3e})

[comment]: # ({b41637d2-e79e2236})
### Ejemplos

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

[comment]: # ({ed94544a-d574e685})
##### Comprobar la autenticación utilizando el token de autenticación

Comprueba y prolonga una sesión de usuario utilizando el token de autenticación del usuario, y devuelve información adicional sobre el usuario.

[Solicitud](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "user.checkAuthentication",
    "params": {
        "sessionid": "673b8ba11562a35da902c66cf5c23fa2"
    },
    "id": 1
}
```

Respuesta:

```json
{
    "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",
        "ts_provisioned": "0",
        "type": 3,
        "userip": "127.0.0.1",
        "debug_mode": 0,
        "gui_access": "0",
        "deprovisioned": false,
        "auth_type": 0,
        "sessionid": "673b8ba11562a35da902c66cf5c23fa2",
        "secret": "0e329b933e46984e49a5c1051ecd0751"
    },
    "id": 1
}
```

[comment]: # ({/ed94544a-d574e685})

[comment]: # ({45eaa4f3-698590d0})
##### Comprobar la autenticación utilizando el token de la API

Comprueba una sesión de usuario utilizando el token de la API de usuario y devuelve información adicional sobre el usuario.

[Petición](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "user.checkAuthentication",
    "params": {
        "token": "00aff470e07c12d707e50d98cfe39edef9e6ec349c14728dbdfbc8ddc5ea3eae"
    },
    "id": 1
}
```

Respuesta:

```json
{
    "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": "1355919338",
        "rows_per_page": "50",
        "timezone": "Europe/Riga",
        "roleid": "3",
        "userdirectoryid": "0",
        "ts_provisioned": "0",
        "debug_mode": 0,
        "deprovisioned": false,
        "gui_access": "1",
        "mfaid": 0,
        "auth_type": 0,
        "type": 3,
        "userip": "127.0.0.1"
    },
    "id": 1
}
```

[comment]: # ({/45eaa4f3-698590d0})

[comment]: # ({e7148ebe-97f5ed87})
### Fuente

CUser::checkAuthentication() en *ui/include/classes/api/services/CUser.php*.

[comment]: # ({/e7148ebe-97f5ed87})
