<!-- review: finished -->

<a id="http-userid"></a>

# UserID

El módulo establece cookies adecuadas para la identificación del cliente. Las cookies recibidas y establecidas pueden registrarse utilizando las variables integradas [$uid_got](#v-uid-got) y [$uid_set](#v-uid-set). Este módulo es compatible con el módulo [mod_uid](http://www.lexa.ru/programs/mod-uid.html) para Apache.

<a id="configuration-example-47"></a>

## Ejemplo de configuración

```nginx
userid         on;
userid_name    uid;
userid_domain  example.com;
userid_path    /;
userid_expires 365d;
userid_p3p     'policyref="/w3c/p3p.xml", CP="CUR ADM OUR NOR STA NID"';
```

<a id="directives-50"></a>

## Directivas

<a id="index-0"></a>

<a id="id1"></a>

### userid

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid` `on` | `v1` | `log` | `off`;   |
|--------------------------------------------------------------------------------------------|-----------------------------------------|
| Predeterminado                                                                             | `userid off;`                           |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location                  |

Habilita o deshabilita el establecimiento de cookies y el registro de las cookies recibidas:

| `on`   | habilita el establecimiento de cookies de versión 2 y el registro de las cookies recibidas;    |
|--------|------------------------------------------------------------------------------------------------|
| `v1`   | habilita el establecimiento de cookies de versión 1 y el registro de las cookies recibidas;    |
| `log`  | deshabilita el establecimiento de cookies, pero habilita el registro de las cookies recibidas; |
| `off`  | deshabilita el establecimiento de cookies y el registro de las cookies recibidas.              |

<a id="index-1"></a>

<a id="userid-domain"></a>

### userid_domain

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_domain` name | `none`;   |
|--------------------------------------------------------------------------------------------|----------------------------------|
| Predeterminado                                                                             | `userid_domain none;`            |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location           |

Define un dominio para el cual se establece la cookie. El parámetro `none` deshabilita el establecimiento de un dominio para la cookie.

<a id="index-2"></a>

<a id="userid-expires"></a>

### userid_expires

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_expires` time | `max` | `off`;   |
|--------------------------------------------------------------------------------------------|------------------------------------------|
| Predeterminado                                                                             | `userid_expires off;`                    |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location                   |

Establece un tiempo durante el cual un navegador debe mantener la cookie. El parámetro `max` hará que la cookie expire el "31 Dec 2037 23:55:55 GMT". El parámetro `off` hará que la cookie expire al final de una sesión del navegador.

<a id="index-3"></a>

<a id="userid-flags"></a>

### userid_flags

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_flags` `off` | flag ...;   |
|--------------------------------------------------------------------------------------------|------------------------------------|
| Predeterminado                                                                             | `userid_flags off;`                |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location             |

Si el parámetro no es `off`, define una o más banderas adicionales para
la cookie: `secure`, `httponly`, `samesite=strict`,
`samesite=lax`, `samesite=none`.

<a id="index-4"></a>

<a id="userid-mark"></a>

### userid_mark

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_mark` letter | digit | = | `off`;   |
|--------------------------------------------------------------------------------------------|---------------------------------------------|
| Predeterminado                                                                             | `userid_mark off;`                          |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location                      |

Si el parámetro no es `off`, habilita el mecanismo de marcado de cookies y establece el carácter utilizado como marca. Este mecanismo se utiliza para agregar o cambiar [userid_p3p](#userid-p3p) y/o un tiempo de expiración de cookie mientras se preserva el identificador del cliente. Una marca puede ser cualquier letra del alfabeto inglés (distingue entre mayúsculas y minúsculas), dígito o el carácter "=".

Si se establece la marca, se compara con el primer símbolo de relleno en la representación base64 del identificador del cliente pasado en una cookie. Si no coinciden, la cookie se reenvía con la marca especificada, el tiempo de expiración y el encabezado `P3P`.

<a id="index-5"></a>

<a id="userid-name"></a>

### userid_name

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_name` name;    |
|--------------------------------------------------------------------------------------------|------------------------|
| Predeterminado                                                                             | `userid_name uid;`     |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location |

Establece el nombre de la cookie.

<a id="index-6"></a>

<a id="userid-p3p"></a>

### userid_p3p

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_p3p` string | `none`;   |
|--------------------------------------------------------------------------------------------|---------------------------------|
| Predeterminado                                                                             | `userid_p3p none;`              |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location          |

Establece un valor para el campo de encabezado `P3P` que se enviará junto con la cookie. Si la directiva se establece en el valor especial `none`, el encabezado `P3P` no se enviará en una respuesta.

<a id="index-7"></a>

<a id="userid-path"></a>

### userid_path

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_path` path;    |
|--------------------------------------------------------------------------------------------|------------------------|
| Predeterminado                                                                             | `userid_path /;`       |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location |

Define una ruta para la cual se establece la cookie.

<a id="index-8"></a>

<a id="userid-service"></a>

### userid_service

| [Sintaxis](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | `userid_service` number;                   |
|--------------------------------------------------------------------------------------------|--------------------------------------------|
| Predeterminado                                                                             | `userid_service IP address of the server;` |
| [Contexto](https://es.angie.software//angie/docs/configuration/configfile.md#configfile)   | http, server, location                     |

Si los identificadores son emitidos por múltiples servidores (servicios), a cada servicio se le debe asignar su propio `number` para garantizar que los identificadores de cliente sean únicos. Para cookies de versión 1, el valor predeterminado es cero. Para cookies de versión 2, el valor predeterminado es el número compuesto por los últimos cuatro octetos de la dirección IP del servidor.

<a id="built-in-variables-16"></a>

## Variables integradas

<a id="v-uid-got"></a>

### `$uid_got`

El nombre de la cookie y el identificador de cliente recibido.

<a id="v-uid-reset"></a>

### `$uid_reset`

Si la variable se establece en una cadena no vacía que no sea `0`, los identificadores de cliente se restablecen. El valor especial `log` además provoca la salida de mensajes sobre los identificadores restablecidos en el [error_log](https://es.angie.software//angie/docs/configuration/modules/core.md#error-log).

<a id="v-uid-set"></a>

### `$uid_set`

El nombre de la cookie y el identificador de cliente enviado.
