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

Agregar el sitio web FoxIDs:

  • Nombre del sitio FoxIDs

  • Ruta física, por ejemplo C:\inetpub\FoxIDs

  • Enlace de dominio http para tu dominio, por ejemplo http://id.my-domain.com

  • Cambia la versión .NET CLR del grupo de aplicaciones a No Managed Code

     Windows Server with IIS - add the FoxIDs website

Y agregar el sitio web FoxIDs Control:

  • Nombre del sitio FoxIDs.Control
  • Ruta física, por ejemplo C:\inetpub\FoxIDs.Control
  • Enlace de dominio http para tu dominio, por ejemplo http://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 hosts del servidor C:\Windows\System32\drivers\etc\hosts para 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.

 Windows Server with IIS - add the FoxIDs website

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.

  1. Descomprime y coloca la carpeta win-acme.v2.x.x.x.x64.pluggable en un lugar permanente, por ejemplo en la unidad C. El componente se registra posteriormente para ejecutarse en el Programador de tareas de Windows.
  2. Inicia un símbolo del sistema elevado en modo administrador
  3. Navega a la carpeta win-acme.v2.x.x.x.x64.pluggable
  4. Ejecuta wacs.exe
  5. Haz clic en N
  6. Selecciona los sitios web FoxIDs y FoxIDs.Control, probablemente escribiendo: 2, 3
  7. Haz clic en A
  8. Elige el sitio FoxIDs como host principal
  9. Acepta los términos (haz clic en N y luego en Y)
  10. 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

  1. Establece el dominio del sitio FoxIDs en FoxIDsEndpoint, por ejemplo http://id.my-domain.com o https://id.my-domain.com
  2. Solo en el sitio FoxIDs Control. Establece el dominio del sitio FoxIDs Control en FoxIDsControlEndpoint, por ejemplo http://control.my-domain.com o https://control.my-domain.com
  3. Si el dominio comienza con http://..., elimina el comentario de "UseHttp": true,
  4. Configura el acceso a la base de datos, ya sea a MongoDB
    "Options": {
        "Log": "Stdout",
        "DataStorage": "MongoDb",
        "KeyStorage": "None",
        "Cache": "MongoDb",
        "DataCache": "None"
    },
    "MongoDb": {
        "ConnectionString": "mongodb://localhost:27017"
    },
    
    o a PostgreSql con la contraseña de tu usuario postgres
    "Options": {
        "Log": "Stdout",
        "DataStorage": "PostgreSql",
        "KeyStorage": "None",
        "Cache": "PostgreSql",
        "DataCache": "None"
    },
    "PostgreSql": {
      "ConnectionString": "Host=localhost;Username=postgres;Password=xxxxxxxx;Database=FoxIDs"
    },
    
  5. 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.

  1. 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.
  2. Preparar los binarios - Descarga el último FoxIDs-x.x.x-win-x64.zip, descomprímelo en carpetas temporales como C:\temp\FoxIDs.new y C:\temp\FoxIDs.Control.new, y copia tus archivos appsettings*.json y web*.config existentes.
  3. 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\FoxIDsC:\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.
  4. Cambiar la actualización - Copia las carpetas preparadas a las rutas en producción (C:\inetpub\FoxIDs y C:\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.
  5. 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.
  6. Revertir si es necesario - Si algo falla, detén los sitios, renombra las carpetas recién desplegadas a .failed, restaura las carpetas .bak a 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.

  1. Crea una carpeta en un lugar permanente, por ejemplo C:\opensearch en la unidad C. OpenSearch se instala posteriormente para ejecutarse como un servicio de Windows.
  2. Mueve el archivo descargado opensearch-x.x.x-windows-x64.zip a la carpeta C:\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
  3. Mueve los archivos descomprimidos a la carpeta C:\opensearch
  4. Inicia un símbolo del sistema elevado en modo administrador
  5. Navega a la carpeta C:\opensearch
  6. Establece una contraseña de administrador, ejecuta set OPENSEARCH_INITIAL_ADMIN_PASSWORD=<custom-admin-password>
  7. Inicia el servicio, ejecuta \opensearch-windows-install.bat
  8. Inicia otro símbolo del sistema
  9. Prueba OpenSearch, ejecuta la solicitud de prueba curl.exe -X GET https://localhost:9200 -u "admin:<custom-admin-password>" --insecure
  10. 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
  11. Vuelve al símbolo del sistema de OpenSearch y detén OpenSearch haciendo clic en ctrl+c y luego y
  12. La configuración se encuentra en C:\opensearch\config\opensearch.yml, por favor revisa la configuración.
  13. Navega a la carpeta C:\opensearch\bin en el símbolo del sistema de OpenSearch
  14. Ejecuta opensearch-service.bat install para instalar el servicio de Windows OpenSearch
  15. Ejecuta opensearch-service.bat manager para abrir la configuración del servicio de Windows OpenSearch
  16. Establece Startup type: en Automatic y haz clic en OK
  17. Ejecuta opensearch-service.bat start para 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 master y el tenant main, 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.

Tu privacidad

Usamos cookies para mejorar tu experiencia en nuestros sitios web. Haz clic en «Aceptar todas las cookies» para aceptar su uso. Para rechazar cookies no esenciales, haz clic en «Solo cookies necesarias».

Visita nuestra política de privacidad para saber más