Windows Server with IIS
Implementa FoxIDs en Windows Server con Internet Information Services (IIS).
Esto describe cómo realizar un despliegue predeterminado y iniciar sesión por primera vez.
Una instalación de FoxIDs es como un cubo, no hay dependencias externas y es fácil alcanzar una disponibilidad muy alta con poco esfuerzo.
FoxIDs se actualiza descargando el archivo FoxIDs-x.x.x-win-x64.zip de la nueva versión y luego actualizando los archivos en los dos sitios web (sin sobrescribir appsettings.json).
Las nuevas versiones de FoxIDs son compatibles hacia atrás, consulta las notas de la versión antes de actualizar.
Requisitos previos:
- Tienes un Windows Server (o Windows 10/11) con Internet Information Services (IIS).
- Tienes conocimientos básicos sobre Windows Server e IIS.
Esta guía describe cómo instalar FoxIDs en un solo servidor, pero puedes dividir la instalación en diferentes servidores.
Este despliegue incluye:
- Dos sitios web, uno para FoxIDs y otro para FoxIDs Control (cliente administrador y API).
- Los dos sitios web están expuestos en dos dominios / subdominios diferentes.
- Base de datos NoSQL que contiene todos los datos, incluidos tenants, entornos y usuarios. Implementa MongoDB Community Edition o PostgreSQL.
- Los registros de FoxIDs se guardan en archivos de forma predeterminada. Dependiendo de la carga, considera usar OpenSearch en producción.
Deployment
El despliegue se realiza en el orden descrito.
Instalar la base de datos
Descarga e instala MongoDB Community Edition o descarga e instala PostgreSQL.
MongoDB
Un despliegue auto gestionado de MongoDB se instala por defecto con el control de acceso deshabilitado. Considera configurar la autenticación de MongoDB según tu instalación.
Endpoint / cadena de conexión predeterminada de MongoDB: mongodb://localhost:27017
Puedes instalar MongoDB Compass (GUI) con MongoDB Community Edition o descargar e instalar la aplicación de administración de MongoDB por separado.
PostgreSQL
PostgreSQL se instala por defecto con el usuario postgres y una contraseña proporcionada por ti durante la instalación.
- Abre pgAdmin y crea una base de datos para FoxIDs llamada
FoxIDs
Endpoint / cadena de conexión predeterminada de PostgreSQL: Host=localhost;Username=postgres;Password=xxxx;Database=FoxIDs
Agregar dos sitios web
Habilita el alojamiento de ASP.NET Core y agrega los dos sitios web de FoxIDs a IIS.
Agregar el módulo ASP.NET Core (ANCM) para IIS
- Instala el instalador del Hosting Bundle de .NET Core (descarga directa) para agregar el módulo ASP.NET Core (ANCM) para IIS, que es necesario para ejecutar aplicaciones ASP.NET Core, aunque los sitios FoxIDs sean auto contenidos.
- Reinicia IIS o el servidor
Agregar el sitio web FoxIDs:
Nombre del sitio
FoxIDsRuta física, por ejemplo
C:\inetpub\FoxIDsEnlace de dominio
httppara tu dominio, por ejemplohttp://id.my-domain.comCambia la versión .NET CLR del grupo de aplicaciones a
No Managed Code
Y agregar el sitio web FoxIDs Control:
- Nombre del sitio
FoxIDs.Control - Ruta física, por ejemplo
C:\inetpub\FoxIDs.Control - Enlace de dominio
httppara tu dominio, por ejemplohttp://control.my-domain.com - Cambia la versión .NET CLR del grupo de aplicaciones a
No Managed Code
Opcionalmente agrega los dos dominios al archivo
hostsdel servidorC:\Windows\System32\drivers\etc\hostspara habilitar pruebas locales en el servidor:127.0.0.1 id.my-domain.com 127.0.0.1 control.my-domain.com
HTTP y HTTPS
FoxIDs admite HTTP y HTTPS, pero siempre debes usar HTTPS en producción.
Puedes omitir esta sección si deseas ejecutar FoxDs en HTTP sin certificado.
Puedes usar tus propios certificados o hacer que Let’s Encrypt cree un certificado.
Usar tus propios certificados
Instala tus propios certificados en el servidor y configura enlaces https para los dos sitios web.

Certificado creado por Let’s Encrypt
Crea y agrega un certificado Let’s Encrypt a los dos sitios web con win-acme.
Descarga el archivo win-acme.v2.x.x.x64.pluggable.zip desde la última versión de win-acme.
- Descomprime y coloca la carpeta
win-acme.v2.x.x.x.x64.pluggableen un lugar permanente, por ejemplo en la unidad C. El componente se registra posteriormente para ejecutarse en el Programador de tareas de Windows. - Inicia un símbolo del sistema elevado en modo administrador
- Navega a la carpeta
win-acme.v2.x.x.x.x64.pluggable - Ejecuta
wacs.exe - Haz clic en
N - Selecciona los sitios web
FoxIDsyFoxIDs.Control, probablemente escribiendo:2,3 - Haz clic en
A - Elige el sitio
FoxIDscomo host principal - Acepta los términos (haz clic en
Ny luego enY) - Agrega tu correo electrónico
Los dos sitios web ahora tienen enlaces https con el certificado Let’s Encrypt y el certificado se actualizará automáticamente cada 3 meses aproximadamente.
Desplegar FoxIDs en los sitios web con Xcopy
Descarga el archivo FoxIDs-x.x.x-win-x64.zip desde la versión de FoxIDs y descomprime el archivo ZIP. El archivo zip contiene dos carpetas, una para el sitio FoxIDs y otra para el sitio FoxIDs Control.
- Copia la carpeta FoxIDs del archivo zip en la ruta física del sitio web, por ejemplo
C:\inetpub\FoxIDs - Y copia la carpeta FoxIDs.Control del archivo zip en la ruta física del sitio web, por ejemplo
C:\inetpub\FoxIDs.Control
Configura el sitio FoxIDs y el sitio FoxIDs Control en los archivos appsettings.json, ubicados por ejemplo en C:\inetpub\FoxIDs\appsettings.json y C:\inetpub\FoxIDs.Control\appsettings.json
- Establece el dominio del sitio FoxIDs en FoxIDsEndpoint, por ejemplo
http://id.my-domain.comohttps://id.my-domain.com - Solo en el sitio FoxIDs Control. Establece el dominio del sitio FoxIDs Control en FoxIDsControlEndpoint, por ejemplo
http://control.my-domain.comohttps://control.my-domain.com - Si el dominio comienza con
http://..., elimina el comentario de"UseHttp": true, - Configura el acceso a la base de datos, ya sea a MongoDB
o a PostgreSql con la contraseña de tu usuario"Options": { "Log": "Stdout", "DataStorage": "MongoDb", "KeyStorage": "None", "Cache": "MongoDb", "DataCache": "None" }, "MongoDb": { "ConnectionString": "mongodb://localhost:27017" },postgres"Options": { "Log": "Stdout", "DataStorage": "PostgreSql", "KeyStorage": "None", "Cache": "PostgreSql", "DataCache": "None" }, "PostgreSql": { "ConnectionString": "Host=localhost;Username=postgres;Password=xxxxxxxx;Database=FoxIDs" }, - Opcionalmente configura el envío de correos con SMTP.
Estrategia de parches y actualización
Actualizar FoxIDs sigue la misma mecánica que el despliegue Xcopy, pero un poco más de estructura reduce el tiempo de inactividad y ofrece una ruta de reversión sencilla.
- Planificar la ventana - Revisa las notas de la versión más recientes, FoxIDs es compatible hacia atrás (a menos que se especifique lo contrario en las notas de la versión), y programa una ventana corta de mantenimiento. Si los dos sitios están detrás de un balanceador, drena el tráfico de un nodo a la vez.
- Preparar los binarios - Descarga el último
FoxIDs-x.x.x-win-x64.zip, descomprímelo en carpetas temporales comoC:\temp\FoxIDs.newyC:\temp\FoxIDs.Control.new, y copia tus archivosappsettings*.jsonyweb*.configexistentes. - Tomar una instantánea de la instalación actual - Detén los dos sitios IIS (o sus App Pools). Copia o renombra las carpetas en producción, por ejemplo
C:\inetpub\FoxIDs→C:\inetpub\FoxIDs.2025-11-11.bak. Haz lo mismo para el sitio Control. Un backup comprimido o un snapshot de VM también funciona, pero copias rápidas de carpetas suelen ser suficientes. - Cambiar la actualización - Copia las carpetas preparadas a las rutas en producción (
C:\inetpub\FoxIDsyC:\inetpub\FoxIDs.Control) y comprueba que los permisos NTFS heredados siguen incluyendo las identidades de los App Pools correspondientes. Inicia los App Pools/sitios de nuevo para calentar las aplicaciones. - Verificar y monitorizar - Abre el sitio Control, completa un inicio de sesión de ida y vuelta, ejecuta una búsqueda rápida de tenant/track y observa la carpeta de registros (
C:\inetpub\logs\LogFiles\foxids) para detectar errores. Si usas OpenSearch, revisa los registros y errores en OpenSearch. - Revertir si es necesario - Si algo falla, detén los sitios, renombra las carpetas recién desplegadas a
.failed, restaura las carpetas.baka sus nombres originales y reinicia IIS de nuevo. Debido a que el esquema de base de datos es compatible hacia atrás, los binarios anteriores se reanudarán de inmediato.
Repite el proceso en cada versión; en configuraciones multi-servidor, parchea un servidor a la vez para mantener la disponibilidad del servicio.
Archivos de registro de FoxIDs
Los archivos de registro de FoxIDs se guardan de forma predeterminada en la carpeta C:\inetpub\logs\LogFiles\foxids\. Puedes cambiar la ruta en el archivo web.config de los dos sitios web.
Crea la carpeta \foxids\ en C:\inetpub\logs\LogFiles\ y concede acceso total a los dos App Pools de IIS iis apppool\foxids y iis apppool\foxids.control a la carpeta \foxids\.
Los registros contienen errores, advertencias, eventos y trazas.
OpenSearch
Dependiendo de la carga, considera usar OpenSearch en producción en lugar de archivos de registro.
Descarga OpenSearch o descárgalo desde la página de descargas.
- Crea una carpeta en un lugar permanente, por ejemplo
C:\opensearchen la unidad C. OpenSearch se instala posteriormente para ejecutarse como un servicio de Windows. - Mueve el archivo descargado
opensearch-x.x.x-windows-x64.zipa la carpetaC:\temp(u otra carpeta con un nombre corto) y descomprime el archivo - los nombres de archivo son demasiado largos para descomprimirlos en la carpeta de descargas predeterminada - Mueve los archivos descomprimidos a la carpeta
C:\opensearch - Inicia un símbolo del sistema elevado en modo administrador
- Navega a la carpeta
C:\opensearch - Establece una contraseña de administrador, ejecuta
set OPENSEARCH_INITIAL_ADMIN_PASSWORD=<custom-admin-password> - Inicia el servicio, ejecuta
\opensearch-windows-install.bat - Inicia otro símbolo del sistema
- Prueba OpenSearch, ejecuta la solicitud de prueba
curl.exe -X GET https://localhost:9200 -u "admin:<custom-admin-password>" --insecure - Prueba los plugins de OpenSearch, ejecuta la solicitud de prueba
curl.exe -X GET https://localhost:9200/_cat/plugins?v -u "admin:<custom-admin-password>" --insecure - Vuelve al símbolo del sistema de OpenSearch y detén OpenSearch haciendo clic en
ctrl+cy luegoy - La configuración se encuentra en
C:\opensearch\config\opensearch.yml, por favor revisa la configuración. - Navega a la carpeta
C:\opensearch\binen el símbolo del sistema de OpenSearch - Ejecuta
opensearch-service.bat installpara instalar el servicio de Windows OpenSearch - Ejecuta
opensearch-service.bat managerpara abrir la configuración del servicio de Windows OpenSearch - Establece Startup type: en
Automaticy haz clic en OK - Ejecuta
opensearch-service.bat startpara iniciar el servicio de Windows OpenSearch
OpenSearch se inicia por defecto con un certificado autofirmado. Puedes configurar un dominio y un certificado, pero en esta guía se conserva el certificado autofirmado y FoxIDs está configurado para aceptar el certificado.
Configura OpenSearch tanto en el sitio FoxIDs como en el sitio FoxIDs Control en los archivos appsettings.json, ubicados por ejemplo en C:\inetpub\FoxIDs\appsettings.json y C:\inetpub\FoxIDs.Control\appsettings.json
"Options": {
"Log": "OpenSearchAndStdoutErrors",
//DB configuration...
},
"OpenSearch": {
"Nodes": [ "https://admin:xxxxxxxx@localhost:9200" ],
"LogLifetime": "Max180Days",
"AllowInsecureCertificates": true //Accept self-signed certificate
},
First login
Abre tu sitio FoxIDs Control (http://control.my-domain.com o https://control.my-domain.com) en un navegador.
Debería redirigir al sitio FoxIDs donde inicias sesión con el usuario administrador predeterminado admin@foxids.com y la contraseña FirstAccess! (debes cambiar la contraseña en el primer inicio de sesión).
Luego se te redirige de nuevo al sitio FoxIDs Control en el tenant master. Puedes agregar más usuarios administradores en el tenant master.
Después, haz clic en el tenant main e inicia sesión de nuevo con el mismo usuario administrador predeterminado admin@foxids.com y la contraseña FirstAccess! (de nuevo debes cambiar la contraseña).
El usuario administrador predeterminado y la contraseña son los mismos para el tenant
mastery el tenantmain, pero son dos usuarios diferentes.
Ahora has iniciado sesión en el tenant main y puedes empezar a configurar tus aplicaciones y métodos de autenticación.