# Inicio de sesión en Windows

> Protege el inicio de sesión de Windows, local y por RDP, con Ironchip: crea la aplicación, instala el plugin, despliégalo con GPO y personaliza la pantalla.

URL: https://docs.ironchip.com/identidad/integraciones/puestos/windows-logon/

Ironchip Windows Logon añade un segundo factor al inicio de sesión de Windows, tanto local como remoto por RDP. Usa esta página para crear la aplicación en Ironchip, instalar el plugin en los equipos y desplegarlo de forma masiva.

## Requisitos

- Acceso a la consola de administración de Ironchip, con permisos en la compañía para crear aplicaciones y dar accesos.
- Equipos con Windows 8 o posterior de 64 bits (x64 o ARM64).
- Permisos de administrador en cada equipo donde instales el plugin.
- Conectividad HTTPS con `api.ironchip.com` (o con el host de tu entorno).
- El certificado raíz **ISRG Root X1** de Let's Encrypt entre las entidades de certificación de confianza del equipo. Consulta [Certificado de Let's Encrypt](#certificado-de-lets-encrypt).

## Configuración en Ironchip

### Crear la aplicación

1. Ve a **Applications > New application** y elige la integración **Windows Logon**, en la sección **Operating system security**.

   [Imagen: Sección Aplicaciones de la consola con el botón para crear una nueva aplicación]

   [Imagen: Selección del tipo de integración para la nueva aplicación]

2. Asigna un nombre descriptivo. Este nombre aparece en el autenticador, así que te ayudará a identificar la aplicación.

   [Imagen: Formulario de la aplicación con el nombre descriptivo]

   [Imagen: Datos de la aplicación antes de guardarla]

3. Guarda la API key que se muestra al crear la aplicación. Solo se muestra en ese momento y la necesitarás al instalar el plugin.

   [Imagen: Ventana con la API key generada para la aplicación]

### Dar acceso a los usuarios

Los accesos determinan qué grupo de usuarios puede autorizar el inicio de sesión y con qué políticas de autenticación.

1. Abre la aplicación recién creada y haz clic en **Add access**.

   [Imagen: Lista de aplicaciones con la aplicación recién creada]

   [Imagen: Ficha de la aplicación con el botón Add access]

2. En **Select a group**, selecciona el grupo que va a utilizar el servicio. Si aún no existe, créalo antes en **Directory > Groups**.
3. En **Select usernames**, crea la plantilla del nombre de usuario. Ironchip Logon trabaja por defecto con el formato SAM, así que la plantilla debe coincidir con `equipo\usuario` o con `dominio\usuario`. Por ejemplo:

   - Usuarios locales: `nombre-del-equipo\usuario`, como `PC-prueba\prueba`.
   - Usuarios del dominio: `dominio\usuario`, como `SERVER0\prueba`.

   [Imagen: Campo de nombre de usuario con el formato equipo o dominio y usuario]

4. En **Select authentication policies**, haz clic en **+ Select authentication policy** y elige cómo tendrá que autorizar el usuario el inicio de sesión. Por ejemplo, con una notificación al móvil, un magic link o una tarjeta RFID.

   [Imagen: Condiciones de acceso del usuario]

5. Revisa el resumen en **Review** y haz clic en **Add**. El resultado debe ser similar a este:

   [Imagen: Resumen del nuevo acceso con el usuario, la plantilla de nombre y el flujo de autorización]

## Configuración en Windows

### Instalar el plugin con el asistente

1. Descarga el plugin de Windows Logon desde la sección **Plugins** de la consola de administración de Ironchip. En la sección **Logon**, busca la tarjeta **Windows Logon** y haz clic en **Download x64** o **Download ARM**, según la arquitectura del equipo. Los instaladores se llaman `IronchipWindowsLogon_x64.msi` e `IronchipWindowsLogon_arm64.msi`.

   [Imagen: Sección Plugins de la consola con la descarga de Windows Logon]

2. Ejecuta el instalador `.msi` en el equipo cuyo inicio de sesión quieres proteger.
3. Haz clic en **Next**, acepta los términos de uso y vuelve a hacer clic en **Next**.

   [Imagen: Pantalla de bienvenida y términos de uso del instalador]

4. Elige los componentes a instalar:

   - **Ironchip Logon** instala el proveedor de credenciales de Ironchip y su filtro.
   - **Offline** instala el servicio OTP (**Ironchip Offline Service**) para el inicio de sesión sin conexión. Genera un código OTP que permite iniciar sesión cuando el equipo no tiene conexión a internet.

   Puedes cambiar las opciones de instalación con el desplegable que hay a la izquierda del nombre de cada componente. Haz clic en **Reset** para volver a los valores por defecto y, cuando estés conforme, en **Next**.

   [Imagen: Selección de componentes del instalador]

5. Rellena los dos campos. Ninguno puede quedar vacío.

   - **Ironchip target host**: la URL de la API. Déjala como está para producción (`https://api.ironchip.com`) y cámbiala solo si tu compañía está en otro entorno.
   - **Ironchip application APIKEY**: la API key que generaste al crear la aplicación.

   Haz clic en **Validate** para comprobar la configuración. Necesita conexión a internet, así que puedes omitirlo si instalas sin conexión.

   [Imagen: Pantalla de entorno y API key]

6. En **Advanced configuration**, indica con **Enable remember user password during login** si quieres recordar las credenciales de los usuarios que inicien sesión con el agente. Viene activada por defecto. Si la dejas activada, al iniciar sesión el usuario verá un botón para recordar sus credenciales y no volver a escribirlas.

   [Imagen: Opción de recordar las credenciales de los usuarios]

7. En **Ironchip Logon scenarios**, elige para cada escenario cómo protege el agente el equipo. Puedes activarlo en estos escenarios:

   - **Logon** (inicio de sesión): al iniciar sesión en el equipo.
   - **Unlock** (desbloqueo de sesión): al iniciar sesión en un equipo que se había bloqueado.
   - **CredUI** (escalada de privilegios): cuando Windows pide credenciales para elevar privilegios, por ejemplo con **Ejecutar como administrador**.
   - **Password Change** (cambio de contraseña): al cambiar la contraseña.

   Cada escenario tiene un desplegable con estas opciones:

   - **None**: deshabilita Ironchip en ese escenario.
   - **Local and Remote**, **Only Remote** u **Only Local**: aplica Ironchip en accesos locales y remotos por RDP, solo remotos o solo locales.
   - Las mismas tres opciones con **(Exclude other providers)**: además, ocultan los demás proveedores de credenciales de Windows en ese escenario.

   Por defecto, los cuatro escenarios usan **Local and Remote**.

   Para que Ironchip sea el único método de inicio de sesión, consulta [Usar Ironchip como único método de inicio de sesión](#usar-ironchip-como-único-método-de-inicio-de-sesión).

   [Imagen: Escenarios de inicio de sesión que protege el agente]

8. Con todos los parámetros correctos, haz clic en **Install**.

   [Imagen: Pantalla de confirmación para iniciar la instalación]

9. Cuando termine la instalación, haz clic en **Finish**.

   [Imagen: Pantalla final de la instalación completada]

:::caution[Cambiar la configuración después]
Puedes modificar la configuración una vez instalado el plugin: vuelve a ejecutar el instalador, haz clic en **Next** y, en la siguiente pantalla, elige **Change**.
:::

[Imagen: Pantalla del instalador con la opción Change]

### Instalar el plugin por línea de comandos

Puedes instalar **Ironchip Windows Logon** de forma automatizada con `msiexec.exe`. Es lo más útil para despliegues masivos y configuraciones remotas.

1. Pulsa `Win + R`, escribe `cmd` y pulsa `Ctrl + Shift + Enter` para abrir la consola como administrador. El instalador necesita permisos de administrador.
2. Localiza la ruta completa del instalador de Ironchip, por ejemplo en la carpeta de descargas o en una unidad de red.
3. Ejecuta el comando de instalación. El parámetro `/i` indica instalación y `/q` la hace en modo silencioso, sin interfaz gráfica.

   ```powershell
   msiexec.exe /i "C:\Ruta\Al\Archivo\IronchipWindowsLogon_x64.msi" IRONCHIP_SECRET="<API_KEY>" IRONCHIP_REMEMBER_CREDENTIALS="1" CPUS_LOGON="0d" CPUS_UNLOCK="0d" CPUS_CREDUI="0d" CPUS_CHANGE_PASSWORD="0d" /q
   ```

La instalación puede tardar unos segundos. Como has usado `/q`, el terminal devuelve el control cuando termina.

#### Propiedades del instalador

La única propiedad obligatoria es `IRONCHIP_SECRET`. Las demás son opcionales y solo hace falta pasarlas para cambiar el valor por defecto. Si el equipo ya tenía Ironchip Logon instalado, las propiedades que no pases conservan el valor que tenían.

| Propiedad                       | Valor por defecto          | Descripción                                                                                 |
| ------------------------------- | -------------------------- | ------------------------------------------------------------------------------------------- |
| `IRONCHIP_SECRET`               | Ninguno                    | API key de la aplicación.                                                                   |
| `IRONCHIP_URL`                  | `https://api.ironchip.com` | URL de la API. Cámbiala solo si tu compañía está en otro entorno.                           |
| `IRONCHIP_REMEMBER_CREDENTIALS` | `1`                        | `1` permite recordar las credenciales al iniciar sesión; `0` lo desactiva.                  |
| `CPUS_LOGON`                    | `0d`                       | Escenario de inicio de sesión. Valores en la [tabla siguiente](#valores-de-los-escenarios). |
| `CPUS_UNLOCK`                   | `0d`                       | Escenario de desbloqueo de sesión.                                                          |
| `CPUS_CREDUI`                   | `0d`                       | Escenario de elevación de privilegios (CredUI).                                             |
| `CPUS_CHANGE_PASSWORD`          | `0d`                       | Escenario de cambio de contraseña.                                                          |
| `IRONCHIP_TIMEOUT`              | `5`                        | Segundos de espera al comprobar la conexión con Ironchip.                                   |
| `IRONCHIP_TIMEOUTCP`            | `60`                       | Segundos que espera el agente a que el usuario autorice el acceso.                          |
| `IRONCHIP_CACHE`                | `1`                        | `1` guarda los usuarios que inician sesión para mostrarlos como mosaicos; `0` lo desactiva. |
| `IRONCHIP_COMPANY_NAME`         | Vacío                      | Nombre de la empresa que se muestra en la pantalla de inicio de sesión.                     |
| `IRONCHIP_COMPANY_LOGO_PATH`    | Vacío                      | Ruta del logotipo que se muestra en la pantalla de inicio de sesión.                        |
| `IRONCHIP_LOG_LEVEL`            | `info`                     | Nivel de registro: `error`, `warning`, `info` o `debug`. Consulta [Registros](#registros).  |

#### Valores de los escenarios

Los parámetros `CPUS_*` combinan un número (`0` a `3`) y una letra (`e` o `d`):

| Valor | Efecto                                                                |
| ----- | --------------------------------------------------------------------- |
| `0`   | Aplica Ironchip en el acceso local y en el remoto (RDP).              |
| `1`   | Aplica Ironchip solo en los accesos remotos (RDP).                    |
| `2`   | Aplica Ironchip solo en los accesos locales.                          |
| `3`   | Deshabilita por completo el proveedor de credenciales de Ironchip.    |
| `e`   | Permite solo Ironchip y deshabilita cualquier otro método de entrada. |
| `d`   | Permite que el usuario elija otros proveedores de credenciales.       |

Por ejemplo, `CPUS_LOGON="0d"` aplica Ironchip en accesos locales y remotos y permite otros proveedores.

En el instalador con asistente, estos valores corresponden a las opciones del desplegable de cada escenario: `3d` es **None**, `0d` es **Local and Remote**, `1d` es **Only Remote**, `2d` es **Only Local**, y `0e`, `1e` y `2e` son las mismas opciones con **(Exclude other providers)**.

### Iniciar sesión sin conexión

Para usar el agente sin conexión, instala el componente **Offline** y configura el OTP de cada usuario. Inicia sesión en el equipo con ese usuario y abre el acceso directo **Ironchip Offline Setup**, que está en el escritorio y en la carpeta **Ironchip** del menú Inicio, o entra en `localhost:10000` desde un navegador.

1. Haz clic en **Continuar** y después en **Generar mi clave**.

   [Imagen: Pantalla inicial de la configuración sin conexión]

2. En **Generar clave sin conexión**, haz clic en **Generar**.

   [Imagen: Pantalla Generar clave sin conexión]

   [Imagen: Botón Generar de la clave sin conexión]

3. Se muestra un código QR y la opción de introducir el código manualmente.

   [Imagen: Código QR y código manual para el OTP sin conexión]

Para añadir el OTP al autenticador de Ironchip del móvil, elige una de estas dos opciones.

#### Escanear el QR

1. Abre el autenticador de Ironchip en el móvil.

   [Imagen: Autenticador de Ironchip en el móvil]

2. Ve al apartado **OTPs**, abajo a la derecha.

   [Imagen: Apartado OTPs del autenticador]

3. Pulsa el botón **+**, elige **Scan a QR code** y escanea el QR. El OTP ya está disponible.

   [Imagen: Menú del botón más con la opción Scan a QR code]

#### Introducir el código manualmente

1. En la pantalla del equipo, haz clic en **Copiar código de texto en portapapeles**.

   [Imagen: Botón para copiar el código de texto al portapapeles]

2. En el autenticador de Ironchip, ve a **OTPs**, pulsa **+** y elige **Enter URL**.
3. Pega el código que copiaste.

   [Imagen: Campo Enter URL del autenticador con el código pegado]

Una vez añadido el código, ya tienes disponible el inicio de sesión sin conexión con OTP. Guarda el QR o el código de texto: es la forma de iniciar sesión cuando el equipo no tiene internet.

[Imagen: OTP sin conexión disponible en el autenticador]

## Comprobación

Para iniciar sesión en Windows, escribe tu usuario y contraseña como siempre. Según las políticas del acceso, el usuario autoriza el inicio de sesión con una **notificación** en el móvil, un código recibido por SMS o un código OTP. El proceso tarda unos segundos y, al terminar, el usuario queda autorizado.

Vídeo: [Inicio de sesión en Windows con Ironchip Windows Logon](https://play.hubspotvideo.com/v/7745202/id/113066937349)

## Despliegue masivo con GPO

Para desplegar Windows Logon con una directiva de grupo (GPO) necesitas una herramienta que edite el MSI. Esta guía usa **Orca**, incluida en los [componentes de Windows para desarrolladores de instaladores](https://docs.microsoft.com/en-us/windows/desktop/msi/platform-sdk-components-for-windows-installer-developers).

### Generar el fichero .mst

El fichero `.mst` contiene la configuración que se aplicará al instalar el MSI mediante la GPO.

1. Descarga el instalador `.msi` que quieres transformar (`IronchipWindowsLogon_x64.msi` o `IronchipWindowsLogon_arm64.msi`), haz clic derecho en el archivo y elige **Edit with Orca**.

   [Imagen: Instalador MSI abierto en Orca]

2. En Orca, haz clic en **Transform > New transform**.

   [Imagen: Menú Transform de Orca con New transform]

3. Ve a **Property** y pon en las propiedades `CPUS_` los valores que quieras aplicar en la instalación. Las opciones son las mismas que en la [tabla de escenarios](#valores-de-los-escenarios). Si una propiedad no aparece en la tabla, añádela como fila nueva, como se explica en el paso siguiente.

   Si trabajas en un entorno distinto de producción, edita también `IRONCHIP_URL` e indica la URL de la API del entorno correcto.

   [Imagen: Tabla Property de Orca con las propiedades CPUS]

4. Añade la API key: haz clic derecho y añade una fila nueva.

   [Imagen: Menú contextual de Orca para añadir una fila]

5. Llama a la propiedad `IRONCHIP_SECRET` y pon la API key en **Value**.

   [Imagen: Fila IRONCHIP_SECRET con la API key como valor]

6. Configura `IRONCHIP_REMEMBER_CREDENTIALS`, que activa la opción de recordar las credenciales tras el inicio de sesión: `1` para activarla o `0` para desactivarla. Si no aparece en la tabla, añádela como fila nueva.

   [Imagen: Propiedad IRONCHIP_REMEMBER_CREDENTIALS en Orca]

7. Haz clic en **Transform > Generate Transform** para guardar la configuración.

   [Imagen: Opción Generate Transform de Orca]

### Publicar el instalador

Crea una carpeta compartida, guarda en ella el instalador y el `.mst` y compártela con todos con permisos de lectura.

[Imagen: Carpeta compartida con el instalador y el fichero de configuración]

### Crear la GPO

1. En el servidor, abre **Administración de directivas de grupo**. Expande el nodo de tu dominio y, en la carpeta **Dominios**, elige **Crear un GPO en este dominio y vincularlo aquí**. Dale un nombre que describa lo que hace, haz clic en **Aceptar** y edítala con clic derecho en **Editar**.

   [Imagen: Creación de la GPO en la administración de directivas de grupo]

2. Ve a **Computer Configuration > Policies > Software Settings > Software installation**, haz clic derecho en **Software installation** y selecciona **New > Package**. Elige el `.msi` de la carpeta compartida que creaste al principio y haz clic en **Open**.

   [Imagen: Software installation en el editor de directivas]

   [Imagen: Selección del instalador desde la carpeta compartida]

3. En la ventana siguiente, selecciona **Avanzado** y haz clic en **OK**.

   [Imagen: Ventana de método de implementación con la opción Avanzado]

4. En las propiedades de la política, selecciona **Asignados** (aunque ya aparezca marcada). Así se habilita **Instalar esta aplicación al inicio de sesión**, que también debes marcar.

   [Imagen: Propiedades de la política con Asignados marcado]

5. Ve a la pestaña **Modificaciones** y haz clic en **Agregar**.

   [Imagen: Pestaña Modificaciones de la política]

6. Elige el fichero `.mst` que generaste, desde la misma carpeta compartida en la que está el `.msi`, y haz clic en **Open**.

   [Imagen: Selección del fichero mst en la carpeta compartida]

7. Comprueba la ruta del fichero seleccionado y haz clic en **OK**.

   [Imagen: Ruta del fichero mst añadida a la política]

8. Vuelve a la configuración de la GPO e indica en qué equipos quieres que se instale Windows Logon.

   [Imagen: Filtrado de seguridad de la GPO]

   [Imagen: Equipos seleccionados para la instalación]

9. Cierra **Group Policy Management**, abre una consola de comandos de Windows y ejecuta `gpupdate /force`.
10. El servidor avisará de que no puede aplicar la política de instalación sin reiniciar y te ofrecerá hacerlo. Escribe `Y` y pulsa **Enter**: el sistema se reiniciará un minuto después. También puedes reiniciar el servidor desde el menú Inicio.

Después, Windows Logon aparecerá instalado en todos los equipos incluidos en la GPO.

:::note
Ejecuta `gpupdate /force` en todos los dispositivos que participan en la directiva: clientes y servidor.
:::

### Excluir usuarios de Ironchip con una GPO

Puedes eximir a una lista de usuarios de la autorización de Ironchip, por ejemplo cuentas de servicio, al distribuir Windows Logon con una GPO.

1. En el servidor, abre **Administración de directivas de grupo**.
2. Crea una GPO nueva con **Crear un GPO en este dominio y vincularlo aquí**. También puedes reutilizar la GPO con la que distribuyes la aplicación a un grupo de usuarios, como se explica en [Crear la GPO](#crear-la-gpo).
3. Edita la GPO. Ve a **Configuración del equipo > Preferencias > Configuración de Windows > Registro**, haz clic derecho y elige **Nuevo > Elemento de registro**.
4. En la ventana que se abre, rellena estos valores en la pestaña **General**:

   - **Acción**: `Actualizar`
   - **Subárbol**: `HKEY_LOCAL_MACHINE`
   - **Ruta de la clave**: `SOFTWARE\Classes\CLSID\{D2CBBFE7-22CC-4FF0-A7C4-8FCDCFB141B7}`
   - **Nombre de valor**: `ironchipExcludedUsers`
   - **Tipo de valor**: `REG_MULTI_SZ`
   - **Información del valor**: un usuario por línea, con el formato `DOMINIO\usuario` o `EQUIPO\usuario`.

   Ironchip compara cada línea con el usuario que inicia sesión sin distinguir mayúsculas de minúsculas. La coincidencia es exacta: no admite comodines ni expresiones regulares. Si escribes un usuario sin dominio, se interpreta como un usuario local del equipo.

5. Haz clic en **Aplicar** y en **Aceptar**.

## Usar Ironchip como único método de inicio de sesión

Puedes excluir el proveedor de credenciales de contraseña de Windows para que los usuarios solo puedan autenticarse con Ironchip Windows Logon. La forma más sencilla es hacerlo al instalar el plugin, con el valor `e` de los escenarios `CPUS_*` o con una opción **(Exclude other providers)** del instalador: el filtro de credenciales de Ironchip oculta entonces los demás proveedores en ese escenario. Si no puedes volver a configurar el plugin, usa una directiva de grupo como se explica a continuación. Consulta [Despliegue de agentes de inicio de sesión](https://docs.ironchip.com/identidad/integraciones/puestos/agentes/#hacer-que-ironchip-sea-el-%C3%BAnico-proveedor-de-credenciales).

:::caution[Pruébalo antes en un grupo piloto]
Si excluyes el proveedor de contraseña, el segundo factor de Ironchip pasa a ser imprescindible para iniciar sesión. Comprueba antes que Windows Logon funciona en un equipo piloto.
:::

### Inicio de sesión automático

Si has configurado el inicio de sesión automático con [Autologon](https://learn.microsoft.com/en-us/sysinternals/downloads/autologon) de Sysinternals y no excluyes los demás proveedores, Windows muestra su proveedor predeterminado. Para que Ironchip sea el proveedor predeterminado:

1. Pulsa `Win + R`, escribe `gpedit.msc` y pulsa **Enter**.
2. Ve a **Local Computer Policy > Computer Configuration > Administrative Templates > System > Logon** y abre **Assign a default credential provider**.
3. Habilita la directiva y escribe el GUID del proveedor de Ironchip: `{D2CBBFE7-22CC-4FF0-A7C4-8FCDCFB141B7}`.

### Configurarlo en una política local o existente

1. Ve a **Editar directiva de grupo**.
2. Selecciona la carpeta **Plantillas administrativas** y después **Sistema**.
3. Abre la carpeta **Inicio de sesión** y elige **Excluir proveedores de credenciales**.
4. Cambia la opción de **No configurada** a **Habilitada**.
5. En el campo **Excluir los siguientes proveedores de credenciales**, escribe el **GUID** del proveedor `PasswordProvider`.
6. Haz clic en **Aplicar** y en **Aceptar**. La autenticación queda habilitada solo con Ironchip Windows Logon.

### Distribuirlo con una GPO

1. En el servidor, abre **Administración de directivas de grupo**.
2. Expande el nodo de tu dominio y, en la carpeta **Dominios**, elige **Crear un GPO en este dominio y vincularlo aquí**.
3. Dale a la directiva un nombre que describa lo que hace y haz clic en **Aceptar**.
4. Haz clic derecho en el nombre de la directiva y elige **Editar**.
5. Ve a **Directivas > Plantillas administrativas > Sistema > Inicio de sesión** y elige **Excluir proveedores de credenciales**.
6. Cambia la opción de **No configurada** a **Habilitada**.
7. En el campo **Excluir los siguientes proveedores de credenciales**, escribe el **GUID** del proveedor `PasswordProvider`.
8. Haz clic en **Aplicar** y en **Aceptar**. La autenticación queda habilitada solo con Ironchip Windows Logon.
9. Cierra **Administración de directivas de grupo**, abre una consola de comandos de Windows y ejecuta `gpupdate /force`. Cuando el servidor ofrezca reiniciar, escribe `Y` y pulsa **Enter**, o reinicia el servidor desde el menú Inicio.

Tras el reinicio, la directiva se aplica a todos los equipos incluidos en la GPO.

:::note
Ejecuta este paso en todos los dispositivos que participan en la directiva: clientes y servidor.
:::

## Registro de Windows

Con el registro de Windows puedes personalizar la pantalla de inicio de sesión y ajustar el comportamiento del agente. Abre el editor del registro y ve a la clave `Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D2CBBFE7-22CC-4FF0-A7C4-8FCDCFB141B7}`. Solo los administradores y el sistema pueden leerla y modificarla.

[Imagen: Clave del registro de Ironchip Windows Logon en el editor]

### Valores del registro

| Valor                                                       | Tipo           | Descripción                                                                           |
| ----------------------------------------------------------- | -------------- | ------------------------------------------------------------------------------------- |
| `ironchipServers`                                           | `REG_SZ`       | URL de la API de Ironchip.                                                            |
| `ironchipSharedSecret`                                      | `REG_SZ`       | API key de la aplicación. No la compartas.                                            |
| `ironchipServerTimeout`                                     | `REG_DWORD`    | Segundos de espera al comprobar la conexión con Ironchip. Por defecto, `5`.           |
| `ironchipTimeout`                                           | `REG_DWORD`    | Segundos que espera el agente a que el usuario autorice el acceso. Por defecto, `60`. |
| `ironchipRememberCredentialsEnabled`                        | `REG_DWORD`    | `1` permite recordar las credenciales; `0` lo desactiva.                              |
| `ironchipCacheEnabled`                                      | `REG_DWORD`    | `1` guarda los usuarios que inician sesión para mostrarlos como mosaicos.             |
| `ironchipCachedUsers`                                       | `REG_MULTI_SZ` | Usuarios guardados.                                                                   |
| `ironchipExcludedUsers`                                     | `REG_MULTI_SZ` | Usuarios exentos de la autorización de Ironchip.                                      |
| `cpus_logon`, `cpus_unlock`, `cpus_credui`, `cpus_password` | `REG_SZ`       | Escenarios, con los [valores de los escenarios](#valores-de-los-escenarios).          |
| `companyName`, `companyLogoPath`                            | `REG_SZ`       | Nombre y logotipo de la empresa en la pantalla de inicio de sesión.                   |
| `logLevel`                                                  | `REG_SZ`       | Nivel de registro. Por defecto, `info`.                                               |

### Logotipo y nombre de la empresa

`companyLogoPath` personaliza el logotipo que se muestra en la pantalla de inicio de sesión. Edita estos dos campos:

- **Nombre de valor**: déjalo como está.
- **Información del valor**: escribe la ubicación del logotipo de la empresa.

El logotipo debe cumplir estos requisitos:

- Dimensiones de 512x512 px.
- Extensión `.bmp`.
- Menos de 1 MB.
- 24 bits.

[Imagen: Valor companyLogoPath con la ruta del logotipo]

`companyName` personaliza el nombre de la empresa que se muestra en la pantalla de inicio de sesión.

[Imagen: Valor companyName con el nombre de la empresa]

Con los dos parámetros configurados, la pantalla de inicio de sesión muestra el logotipo y el nombre de tu empresa:

[Imagen: Pantalla de inicio de sesión de Windows con el logotipo y el nombre de la empresa]

### Usuarios en caché y usuarios excluidos

`ironchipCachedUsers` almacena los nombres de usuario para facilitar accesos futuros. Se activa con `ironchipCacheEnabled`.

[Imagen: Valor ironchipCachedUsers en el registro]

`ironchipExcludedUsers` define una lista de usuarios exentos de autorización. Los usuarios incluidos aquí no necesitan una validación adicional al iniciar sesión en el equipo. Escribe un usuario por línea con el formato `DOMINIO\usuario` o `EQUIPO\usuario`. Para distribuirlo con una GPO, consulta [Excluir usuarios de Ironchip con una GPO](#excluir-usuarios-de-ironchip-con-una-gpo).

### Modificar el registro con una GPO

Sigue este procedimiento para cambiar claves del registro en varios equipos con directivas de grupo. El ejemplo cambia el nombre de la empresa.

1. Abre el **Administrador de directivas de grupo** en el servidor y crea una GPO nueva en la unidad organizativa (OU) correspondiente.

   [Imagen: Creación de la GPO en la unidad organizativa]

2. En **Filtrado de seguridad**, añade los equipos o grupos a los que quieres aplicar la directiva.

   [Imagen: Filtrado de seguridad con los equipos o grupos añadidos]

3. Edita la GPO y ve a **Configuración del equipo > Preferencias > Configuración de Windows > Registro**.

   [Imagen: Ruta Preferencias, Configuración de Windows y Registro en el editor de la GPO]

4. Haz clic derecho en el panel derecho y selecciona **Nuevo elemento de registro**.

   [Imagen: Menú contextual con Nuevo elemento de registro]

5. Rellena el elemento:

   - **Subárbol**: `HKEY_LOCAL_MACHINE`
   - **Ruta de la clave**: `SOFTWARE\Classes\CLSID\{D2CBBFE7-22CC-4FF0-A7C4-8FCDCFB141B7}`
   - **Nombre de valor**: el valor a modificar, por ejemplo `companyName`.
   - **Tipo de valor**: `REG_SZ`
   - **Información del valor**: el nombre de la empresa tal como debe aparecer en pantalla.

   [Imagen: Propiedades del nuevo elemento de registro rellenadas]

6. En el equipo cliente, abre un símbolo del sistema o PowerShell con privilegios de administrador y ejecuta `gpupdate /force`.
7. Haz clic en **Aplicar** y accede a uno de los equipos asignados para comprobar el resultado. El nombre de la empresa debería aparecer en la pantalla de inicio de sesión.

   [Imagen: Pantalla de inicio de sesión con el nombre de la empresa aplicado]

### Cambiar la imagen de la empresa con una GPO

1. Crea una carpeta compartida en el servidor y guarda en ella la imagen corporativa. Concede permisos de lectura a los usuarios o grupos de equipos a los que se aplicará la directiva.

   [Imagen: Carpeta compartida con la imagen corporativa]

2. En la GPO correspondiente, ve a la sección **Registro** y crea un elemento nuevo con estos parámetros:

   - **Subárbol**: `HKEY_LOCAL_MACHINE`
   - **Ruta de la clave**: `SOFTWARE\Classes\CLSID\{D2CBBFE7-22CC-4FF0-A7C4-8FCDCFB141B7}`
   - **Nombre de valor**: `companyLogoPath`
   - **Tipo de valor**: `REG_SZ`
   - **Información del valor**: la dirección de red de la carpeta compartida con la imagen.

   [Imagen: Elemento de registro companyLogoPath con la dirección de red]

3. En el equipo cliente, abre un símbolo del sistema o PowerShell con privilegios de administrador y ejecuta `gpupdate /force`.
4. Bloquea el equipo (`Win + L`) o cierra la sesión. La imagen corporativa debería aparecer en la pantalla de inicio de sesión de todos los equipos a los que se ha aplicado la directiva.

   [Imagen: Pantalla de inicio de sesión con la imagen corporativa]

## Problemas frecuentes

### Registros

El proveedor de credenciales escribe sus registros en el Visor de eventos de Windows.

1. Abre el Visor de eventos (`eventvwr.msc`).
2. Ve a **Registros de Windows > Aplicación**.
3. Busca los eventos del origen `Ironchip Logon`.

Para cambiar el nivel de detalle, modifica el valor `logLevel` de la clave del registro de Ironchip:

| Valor     | Qué registra                                                                               |
| --------- | ------------------------------------------------------------------------------------------ |
| `error`   | Solo errores.                                                                              |
| `warning` | Advertencias y errores.                                                                    |
| `info`    | Información general de funcionamiento, advertencias y errores. Es el valor por defecto.    |
| `debug`   | Información detallada de diagnóstico. No lo uses de forma habitual: genera muchos eventos. |

### Diagnóstico

La herramienta **Ironchip Logon Diagnostic Tool** comprueba si un equipo cumple los requisitos para Ironchip Windows Logon. Descarga `IronchipLogonDiagnoseTool.exe` de las [versiones publicadas en GitHub](https://github.com/Ironchip-Security/Ironchip-Logon-Diagnostic-Tool/releases/latest) y ejecútalo en el equipo. Muestra la versión de Windows, el usuario y el dominio, las dependencias de DLL, la versión de OpenSSL, si el certificado ISRG Root X1 está instalado y si el equipo se conecta con los servidores de Ironchip. Si Windows Logon está instalado, también usa su configuración para consultar las condiciones de acceso del usuario actual y enviarle una solicitud de autorización de prueba. Al terminar puedes guardar el informe en la carpeta **Documentos**.

### Certificado de Let's Encrypt

Desde la versión 2.2.0, Windows Logon usa OpenSSL en lugar de Schannel para las comunicaciones. Esto mejora la compatibilidad con versiones antiguas de Windows (sobre todo Windows 8) y permite usar TLS 1.3.

Los servidores de Ironchip usan un certificado firmado por Let's Encrypt, así que el equipo debe tener su certificado raíz **ISRG Root X1** entre las entidades de certificación de confianza. Si falta, descárgalo de la [documentación de Let's Encrypt](https://letsencrypt.org/certificates/) e instálalo en el almacén de entidades de certificación raíz de confianza del equipo.
