> For the complete documentation index, see [llms.txt](https://docs.editran.onesait.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.editran.onesait.com/documentacion-editran/editran-connect-v3.3/contexto_usuario/configuracion_local/seguridad/tokens/tokens_usuario_y_sistema.md).

# Tokens de usuario y sistema

El objetivo de este documento es proporcionar una guía clara sobre cómo se gestionan los tokens en Editran Connect, incluyendo su generación y uso. Esto es fundamental para garantizar la seguridad y el correcto funcionamiento del sistema.

Los tokens en Editran Connect tienen como objetivo principal autenticar a los usuarios y autorizar su acceso a los servicios proporcionados por la API de Connect, y procesos internos que requieran autenticación.

## Tipos de tokens

Editran Connect trabaja con dos tipos de tokens:

* **Tokens de usuario**: asociados a cada usuario, independiente del rol, y que se utilizan para autenticar y autorizar a los usuarios en la API de Connect, sin necesidad de utilizar sus credenciales (usuario y contraseña) en cada petición.
* **Tokens de sistema**: asociados únicamente al usuario de sistema **editran**, se utilizan para autenticar procesos internos de Connect que requieren autenticación. Estos tokens permiten a los procesos internos acceder a los servicios de Connect sin necesidad de utilizar las credenciales del usuario.

## Estados de los tokens

Los tokens en Editran Connect pueden encontrarse en los siguientes estados:

* **Activo**: el token es válido y puede ser utilizado.
* **En pausa**: el token ha sido invalidado temporalmente y no puede ser utilizado. Sin embargo, el token no ha sido eliminado y puede ser reactivado en cualquier momento.
* **Eliminado**: el token ha sido eliminado y no puede ser utilizado. Esta acción es irreversible.
* **Expirado**: el token ha alcanzado su fecha de expiración y ya no es válido. Un token expirado no puede ser utilizado.
* **Revocado**: el token ha sido revocado por razones de seguridad, como sospecha de compromiso o uso indebido. Un token revocado no puede ser utilizado.

## Gestión de tokens

La gestión de tokens en Editran Connect se realiza a través de la sección **Mis tokens** ![Mis\_Tokens](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-edb1b0db27864967320555e77785636b083269b3%2Ftokens_usuario.png?alt=media)

que se encuentra incluida en el perfil del usuario\
![Perfil](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-f8059ff598e82fad2140c6a193fba86ee0eab3f3%2Ftokens_perfil.png?alt=media)

accediendo desde el botón **Tokens de usuario** ![Tokens\_de\_usuario](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-d8ec3d056d7fc2ea6f7fd8c6d4dfedcefbc0441a%2Ftokens_perfil_boton.png?alt=media)

Desde esta sección, cada usuario podrá ver sus tokens, generar nuevos tokens y realizar las siguientes operaciones sobre ellos, pulsando el botón de opciones ![Operaciones](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-cede6b5d1a506649aa00a1fb493da5d04d5e8819%2Ftokens_operaciones.png?alt=media) situado en la parte derecha de cada token:

* **Pausar**: invalidar un token para que no pueda ser utilizado temporalmente.
* **Activar**: reactivar un token que se encuentra en estado de pausa, permitiendo su uso nuevamente.
* **Borrar**: eliminar un token de forma permanente, lo que impide su uso futuro.

El estado **Expirado** se gestiona automáticamente por el sistema, en un proceso que se ejecuta diariamente y que invalida los tokens que han alcanzado su fecha de expiración.

El estado **Revocado** se gestiona manualmente por un usuario con rol *Administrador Global*, que puede revocar un token desde la sección *Configuración Local -> Seguridad -> Tokens de usuario*. Esta acción se realiza únicamente para tokens de usuario, ya que los tokens de sistema no pueden ser revocados. Igualmente, un token de usuario puede ser revocado automáticamente, cuando no cumple con las condiciones establecidas en la sección *Configuración Local -> Seguridad -> Configuración de tokens*

## Generación de tokens

La generación de tokens en Editran Connect se realiza a través de la sección **Mis tokens** del perfil del usuario. Para generar un nuevo token, el usuario debe seguir los siguientes pasos:

1. Acceder a la sección **Mis tokens** desde el perfil de usuario.
2. Hacer clic en el botón **Nuevo token**.
3. Completar el formulario de generación de token, que incluye los siguientes campos:

   ![Nuevo\_token](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-44242697133c12050123951e1e0fb13acd69c71c%2Ftokens_crear.png?alt=media)

* **Nombre del token**: un nombre descriptivo para identificar el token.
* **Fecha de expiración**: la fecha en la que el token dejará de ser válido. Debe cumplir la política de caducidad establecida en la sección *Configuración Local -> Seguridad -> Configuración de tokens*. Se recomienda no establecer una fecha de expiración demasiado lejana, ya que esto aumenta el riesgo de que el token sea comprometido y utilizado de forma indebida durante un largo período de tiempo.
* **Crear token**: una vez completados los campos anteriores, hacer clic en el botón **Crear token** para generar el token. Posteriormente, al pulsar el botón **Aceptar** del formulario, el token se guardará y se mostrará en la lista de tokens del usuario con su estado inicial como *Activo*.

#### Consideraciones importantes

* Una vez generado el token, antes de pulsar el botón **Aceptar** del formulario, se debe copiar y almacenar de forma segura, ya que no se volverá a mostrar en su totalidad por razones de seguridad. Si el token se pierde, será necesario generar uno nuevo.

  ![Aceptar\_token](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-171548ac55d3af24f97210538621d7fbacb39e19%2Ftokens_crear_y_copiar.png?alt=media)
* Si no se cumplen las condiciones establecidas en la sección *Configuración Local -> Seguridad -> Configuración de tokens*, el token no se podrá crear y se mostrará un mensaje de error indicando el motivo.

## Uso de tokens

Una vez generado un token, este se puede utilizar para autenticar y autorizar el acceso a la API de Connect. Para ello, se debe incluir el token en la cabecera de las peticiones HTTP utilizando el esquema de autenticación Bearer. Por ejemplo:

```bash
curl -X 'GET' \
  'https://<tu_servidor>/integration/v2/contacts' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJBdXRob3JpemF0...'
```

## Tokens de sistema

Los tokens de sistema en Editran Connect son utilizados para autenticar procesos internos que requieren acceso a los servicios de Connect. Estos tokens están asociados al usuario de sistema **editran**, y pueden ser gestionados por este usuario a través de la sección **Mis tokens** del perfil de usuario.

Automáticamente, el sistema genera un token de sistema para el usuario **editran**. Este token tiene de nombre **INTERNAL\_TOKEN** y una fecha de expiración establecida en *Configuración Local -> Seguridad -> Configuración de tokens*, con un valor por defecto de 90 días.

![Mis\_Tokens\_Sistema](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-f633c53c0b732ef8448ad9fa715c07c7a6558739%2Ftokens_sistema.png?alt=media)

Cuando el token expira, el sistema genera automáticamente un nuevo token de sistema garantizarando la continuidad de los procesos internos que requieren autenticación. Este nuevo token de sistema generado automáticamente tendrá el mismo nombre que el token expirado y una nueva fecha de expiración establecida en *Configuración Local -> Seguridad -> Configuración de tokens*.

#### Persistencia del token de sistema en el sistema operativo

Cada token de sistema creado, bien automáticamente por el sistema o manualmente por el usuario de sistema **editran**, no se guarda en base de datos, sino que se almacena en otros mecanismos de persistencia, dependiendo del sistema operativo en el que esté instalado Connect. De esta forma, el token de sistema se mantiene disponible para los procesos internos de Connect incluso si el servicio de Connect se reinicia o se detiene y se vuelve a iniciar.

Estos mecanismos de persistencia son los siguientes:

**En Windows**

Se guarda como variable de registro, y la ruta depende del usuario con el que se ejecute el servicio *Editran Main Service*:

* Si el servicio se ejecuta como `SYSTEM` o `LocalSystem`, usa:
  * `HKEY_USERS\.DEFAULT\Environment`
* Si se ejecuta como usuario normal, usa:
  * `HKEY_CURRENT_USER\Environment`

El nombre de la variable será el nombre del token precedido por el prefijo `EDITRAN_`, y los espacios serán sustituidos por guiones. Por ejemplo, si el token de sistema se llama `INTERNAL_TOKEN`, se guardará en la variable de registro con el nombre `EDITRAN_INTERNAL_TOKEN`. El valor de la variable de registro es el token de sistema generado.

**En Linux**

Se guarda en el archivo `Env.conf` situado en el directorio `services` dentro del directorio de instalación de Connect, con el siguiente formato: `EDITRAN_<NOMBRE_DEL_TOKEN>=<VALOR_DEL_TOKEN>` *NOMBRE\_DEL\_TOKEN* es el nombre del token de sistema con los espacios sustituidos por guiones, y *VALOR\_DEL\_TOKEN* es el token de sistema generado. Por ejemplo, si el token de sistema se llama `INTERNAL_TOKEN`, se guardará en el archivo `Env.conf` con la siguiente línea: `EDITRAN_INTERNAL_TOKEN=eyJhbGciOiJIUzUxMiJ9.eyJBdXRob3JpemF0...`

Si el token es eliminado desde la sección **Mis tokens** del perfil de usuario, el sistema eliminará automáticamente la variable de registro en Windows o la línea correspondiente en el archivo `Env.conf` en Linux, para garantizar que el token de sistema ya no esté disponible para los procesos internos de Connect.

## Administración de tokens

La administración de tokens de Editran Connect se realiza desde la ruta **Configuración local > Seguridad** y solo estará disponible para el *Administrador Global*. Desde esta sección se permite:

* Supervisar los tokens de usuario y de sistema.
* Revocar tokens de usuario.
* Configurar la política de comportamiento de los tokens.

Esta sección se organiza en tres pestañas: Tokens de usuario, Tokens de sistema y Configuración de tokens.

![Configuracion\_Local\_Seguridad](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-3e0b4b0742896851edd9251c42ecf1f3ca41a08b%2Fconfiguracion_local_seguridad.png?alt=media)

#### Tokens de usuario

Esta pestaña muestra un listado completo de los tokens de usuario de Editran Connect. Su objetivo es facilitar al *Administrador Global* la localización rápida de información y la toma de decisiones de seguridad. Para ello, el listado puede filtrarse por estado, usuario y rangos de fecha de creación o expiración.

![Listado\_Tokens\_Usuario](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-22242545fa7bdbef19742b78fb99d8a31447f415%2Flistado_tokens_usuario.png?alt=media)

Además, permite revocación individual y masiva. Se puede revocar un token desde el menú de acciones de cada fila (tres puntos) o seleccionar varios y ejecutar la acción con el botón **Revocar tokens seleccionados**.

| <img src="https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-d45df933174c7d64f15791b206260c908c797dff%2Frevocar_token_individual.png?alt=media" alt="Revocar_Token_Individual" data-size="original"> | <img src="https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-e6021a9d09e1439335d11ed9358826204e859e2f%2Frevocar_tokens_seleccionados.png?alt=media" alt="Revocar_Tokens_Seleccionados" data-size="original"> |
| :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |

Antes de revocar, el sistema solicita confirmación. Al finalizar la operación, se muestra una notificación de resultado. Si la revocación falla, se informa de que no se ha podido revocar ninguno de los tokens seleccionados y se muestran, en el detalle del error devuelto por el sistema, los tokens no válidos que han provocado el rechazo de la operación.

<table data-header-hidden><thead><tr><th align="center"></th><th></th></tr></thead><tbody><tr><td colspan="2" align="center"><img src="https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-bb4c6f1b899fc3a063acdb65bbdeffff445be3cd%2Frevocar_token_modal.png?alt=media" alt="Revocar_Token_Modal" data-size="original"></td></tr></tbody></table>

#### Tokens de sistema

Esta pestaña permite consultar los tokens que Editran Connect utiliza internamente para sus procesos automáticos. Estos tokens pertenecen al usuario técnico **editran** y no se usan como los tokens habituales de usuario.

La pantalla está orientada a supervisión: permite revisar su estado, fecha de creación, último uso y fecha de caducidad. También incluye filtros de estado, fecha de creación y fecha de expiración, equivalentes a los de Tokens de usuario excepto el filtro por usuario.

![Listado\_Tokens\_Sistema](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-0e574a8289feff0b45a4d4c7ad10924c29ef2c63%2Flistado_tokens_sistema.png?alt=media)

#### Configuración de tokens

Esta pestaña define las reglas globales de comportamiento de los tokens en toda la instalación. En la sección **Tokens de usuario** se puede activar o desactivar su uso y establecer el tiempo de vida máximo en días. En la sección **Tokens de sistema** se define su caducidad por defecto. En ambos casos, el valor de días puede dejarse vacío para indicar ausencia de caducidad.

![Configuracion\_Tokens](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-d52ecd016158748457651587100bc4b7f5feced0%2Fconfiguracion_tokens.png?alt=media)

Cuando el *Administrador Global* guarda cambios, el sistema no solo persiste la nueva configuración, sino que también valida su impacto sobre tokens existentes. Si la nueva política puede invalidarlos, se muestra un aviso de confirmación para decidir si continuar o cancelar.

* Desactivar el uso de tokens cuando existen tokens activos.

  ![Tokens\_Activos](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-359e18f182a48673bc53599ac42b50256ad123ed%2Ftokens_activos.png?alt=media)
* Modificar la caducidad cuando existen tokens que incumplen la nueva política.

  ![Tokens\_Caducidad](https://3558922613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSQXv5BLHrdIc5WgYzixC%2Fuploads%2Fgit-blob-ead1448c52f1db6f4e11acfa21b781227afa966b%2Ftokens_caducidad.png?alt=media)

Si se confirma la acción, el sistema aplica la nueva configuración y revoca los tokens que no cumplan las condiciones establecidas.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.editran.onesait.com/documentacion-editran/editran-connect-v3.3/contexto_usuario/configuracion_local/seguridad/tokens/tokens_usuario_y_sistema.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
