Windows Server with IIS
Déployez FoxIDs sur Windows Server avec Internet Information Services (IIS).
Ceci décrit comment effectuer un déploiement par défaut et se connecter pour la première fois.
Une installation FoxIDs est comme un seau, il n’y a pas de dépendances externes et il est facile d’atteindre une très haute disponibilité avec peu d’effort.
FoxIDs se met à jour en téléchargeant le fichier FoxIDs-x.x.x-win-x64.zip de la nouvelle version, puis en mettant à jour les fichiers dans les deux sites web (sans écraser appsettings.json).
Les nouvelles versions de FoxIDs sont rétrocompatibles, veuillez consulter les notes de version avant de mettre à jour.
Prérequis :
- Vous disposez d’un Windows Server (ou Windows 10/11) avec Internet Information Services (IIS).
- Vous avez des connaissances de base sur Windows Server et IIS.
Ce guide décrit comment installer FoxIDs sur un seul serveur, mais vous pouvez répartir l’installation sur différents serveurs.
Ce déploiement inclut :
- Deux sites web, un pour FoxIDs et un pour FoxIDs Control (client d’administration et API).
- Les deux sites web sont exposés sur deux domaines / sous-domaines différents.
- Une base de données NoSQL contenant toutes les données, y compris les tenants, environnements et utilisateurs. Déployez MongoDB Community Edition ou PostgreSQL.
- Les journaux FoxIDs sont par défaut enregistrés dans des fichiers. Selon la charge, envisagez d’utiliser OpenSearch en production.
Deployment
Le déploiement est réalisé dans l’ordre décrit.
Installer la base de données
Téléchargez et installez MongoDB Community Edition ou téléchargez et installez PostgreSQL.
MongoDB
Un déploiement MongoDB auto-géré est installé par défaut avec le contrôle d’accès désactivé. Envisagez de configurer l’authentification MongoDB selon votre installation.
Point de terminaison / chaîne de connexion par défaut de MongoDB : mongodb://localhost:27017
Vous pouvez installer MongoDB Compass (GUI) avec MongoDB Community Edition ou télécharger et installer l’application d’administration MongoDB séparément.
PostgreSQL
PostgreSQL est installé par défaut avec l’utilisateur postgres et un mot de passe fourni par vous lors de l’installation.
- Ouvrez pgAdmin et créez une base de données pour FoxIDs appelée
FoxIDs
Point de terminaison / chaîne de connexion par défaut de PostgreSQL : Host=localhost;Username=postgres;Password=xxxx;Database=FoxIDs
Ajouter deux sites web
Activez l’hébergement ASP.NET Core et ajoutez les deux sites web FoxIDs à IIS.
Ajouter le module ASP.NET Core (ANCM) pour IIS
- Installez le programme d’installation du bundle d’hébergement .NET Core (téléchargement direct) pour ajouter le module ASP.NET Core (ANCM) pour IIS, requis pour exécuter les applications ASP.NET Core, même si les sites FoxIDs sont auto-contenus.
- Redémarrez IIS ou le serveur
Ajouter le site FoxIDs :
Nom du site
FoxIDsChemin physique, par exemple
C:\inetpub\FoxIDsLiaison de domaine
httppour votre domaine, par exemplehttp://id.my-domain.comChanger la version .NET CLR du pool d’applications en
No Managed Code
Et ajouter le site FoxIDs Control :
- Nom du site
FoxIDs.Control - Chemin physique, par exemple
C:\inetpub\FoxIDs.Control - Liaison de domaine
httppour votre domaine, par exemplehttp://control.my-domain.com - Changer la version .NET CLR du pool d’applications en
No Managed Code
Ajoutez éventuellement les deux domaines au fichier
hostsdu serveurC:\Windows\System32\drivers\etc\hostspour permettre des tests locaux sur le serveur :127.0.0.1 id.my-domain.com 127.0.0.1 control.my-domain.com
HTTP et HTTPS
FoxIDs prend en charge HTTP et HTTPS, mais vous devez toujours utiliser HTTPS en production.
Vous pouvez ignorer cette section si vous souhaitez exécuter FoxDs en HTTP sans certificat.
Vous pouvez utiliser vos propres certificats ou faire créer un certificat par Let’s Encrypt.
Utiliser vos propres certificats
Installez vos propres certificats sur le serveur et configurez des liaisons https pour les deux sites web.

Certificat créé par Let’s Encrypt
Créez et ajoutez un certificat Let’s Encrypt aux deux sites web avec win-acme.
Téléchargez le fichier win-acme.v2.x.x.x64.pluggable.zip depuis la dernière version win-acme.
- Décompressez et placez le dossier
win-acme.v2.x.x.x.x64.pluggableà un emplacement permanent, par exemple sur le disque C. Le composant est ensuite enregistré pour s’exécuter dans le planificateur de tâches Windows. - Démarrez une invite de commandes élevée en mode administrateur
- Naviguez vers le dossier
win-acme.v2.x.x.x.x64.pluggable - Exécutez
wacs.exe - Cliquez sur
N - Sélectionnez les sites web
FoxIDsetFoxIDs.Control, probablement en tapant :2,3 - Cliquez sur
A - Choisissez le site
FoxIDscomme hôte principal - Acceptez les conditions (cliquez sur
Npuis surY) - Ajoutez votre email
Les deux sites web disposent maintenant de liaisons https avec le certificat Let’s Encrypt et le certificat sera automatiquement renouvelé tous les 3 mois environ.
Déployer FoxIDs vers les sites web avec Xcopy
Téléchargez le fichier FoxIDs-x.x.x-win-x64.zip depuis la version FoxIDs et décompressez le fichier ZIP. Le fichier zip contient deux dossiers, un pour le site FoxIDs et un pour le site FoxIDs Control.
- Copiez le dossier FoxIDs du fichier zip vers le chemin physique du site web, par exemple
C:\inetpub\FoxIDs - Et copiez le dossier FoxIDs.Control du fichier zip vers le chemin physique du site web, par exemple
C:\inetpub\FoxIDs.Control
Configurez le site FoxIDs et le site FoxIDs Control dans les fichiers appsettings.json, situés par exemple dans C:\inetpub\FoxIDs\appsettings.json et C:\inetpub\FoxIDs.Control\appsettings.json
- Définissez le domaine du site FoxIDs dans FoxIDsEndpoint, par exemple
http://id.my-domain.comouhttps://id.my-domain.com - Dans le site FoxIDs Control uniquement. Définissez le domaine du site FoxIDs Control dans FoxIDsControlEndpoint, par exemple
http://control.my-domain.comouhttps://control.my-domain.com - Si le domaine commence par
http://..., supprimez le commentaire de"UseHttp": true, - Configurez l’accès à la base de données, soit vers MongoDB
soit vers PostgreSql avec le mot de passe de votre utilisateur"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" }, - Configurez éventuellement l’envoi d’emails avec SMTP.
Stratégie de patching et de mise à jour
La mise à jour de FoxIDs suit la même mécanique que le déploiement Xcopy, mais un peu plus de structure réduit le temps d’arrêt et offre un chemin de retour simple.
- Planifier la fenêtre - Consultez les dernières notes de version, FoxIDs est rétrocompatible (sauf mention contraire dans les notes de version), et planifiez une courte fenêtre de maintenance. Si les deux sites sont derrière un répartiteur de charge, drainez le trafic d’un nœud à la fois.
- Préparer les binaires - Téléchargez le dernier
FoxIDs-x.x.x-win-x64.zip, décompressez-le dans des dossiers temporaires tels queC:\temp\FoxIDs.newetC:\temp\FoxIDs.Control.new, et copiez vos fichiersappsettings*.jsonetweb*.configexistants. - Faire un instantané de l’installation actuelle - Arrêtez les deux sites IIS (ou leurs App Pools). Copiez ou renommez les dossiers en production, par exemple
C:\inetpub\FoxIDs→C:\inetpub\FoxIDs.2025-11-11.bak. Faites de même pour le site Control. Une sauvegarde compressée ou un snapshot de VM fonctionne aussi, mais des copies rapides de dossiers suffisent souvent. - Basculer la mise à jour - Copiez les dossiers préparés vers les chemins en production (
C:\inetpub\FoxIDsetC:\inetpub\FoxIDs.Control) et vérifiez que les autorisations NTFS héritées incluent toujours les identités des App Pools correspondants. Redémarrez les App Pools/sites pour chauffer les applications. - Vérifier et surveiller - Ouvrez le site Control, effectuez un aller-retour de connexion, faites une recherche rapide de tenant/track et surveillez le dossier des journaux (
C:\inetpub\logs\LogFiles\foxids) pour détecter des erreurs. Si vous utilisez OpenSearch, vérifiez les journaux et les erreurs dans OpenSearch. - Revenir en arrière si nécessaire - Si quelque chose ne fonctionne pas, arrêtez les sites, renommez les dossiers nouvellement déployés en
.failed, restaurez les dossiers.bakà leurs noms d’origine et redémarrez IIS. Comme le schéma de base de données est rétrocompatible, les binaires précédents reprendront immédiatement.
Répétez le processus à chaque version ; sur des configurations multi-serveurs, patchez un serveur à la fois pour conserver la disponibilité du service.
Fichiers journaux FoxIDs
Les fichiers journaux FoxIDs sont par défaut enregistrés dans le dossier C:\inetpub\logs\LogFiles\foxids\. Vous pouvez modifier le chemin dans le fichier web.config des deux sites web.
Créez le dossier \foxids\ dans C:\inetpub\logs\LogFiles\ et accordez aux deux App Pools IIS iis apppool\foxids et iis apppool\foxids.control un accès complet au dossier \foxids\.
Les journaux contiennent des erreurs, avertissements, événements et traces.
OpenSearch
Selon la charge, envisagez d’utiliser OpenSearch en production plutôt que des fichiers journaux.
Téléchargez OpenSearch ou téléchargez depuis la page de téléchargement.
- Créez un dossier à un emplacement permanent, par exemple
C:\opensearchsur le disque C. OpenSearch est ensuite installé pour s’exécuter comme un service Windows. - Déplacez le fichier téléchargé
opensearch-x.x.x-windows-x64.zipvers le dossierC:\temp(ou un autre dossier avec un nom court) et décompressez-le - les noms de fichier sont trop longs pour être décompressés dans le dossier de téléchargement par défaut - Déplacez les fichiers décompressés vers le dossier
C:\opensearch - Démarrez une invite de commandes élevée en mode administrateur
- Naviguez vers le dossier
C:\opensearch - Définissez un mot de passe administrateur, exécutez
set OPENSEARCH_INITIAL_ADMIN_PASSWORD=<custom-admin-password> - Démarrez le service, exécutez
\opensearch-windows-install.bat - Démarrez une autre invite de commandes
- Testez OpenSearch, exécutez la requête de test
curl.exe -X GET https://localhost:9200 -u "admin:<custom-admin-password>" --insecure - Testez les plugins OpenSearch, exécutez la requête de test
curl.exe -X GET https://localhost:9200/_cat/plugins?v -u "admin:<custom-admin-password>" --insecure - Revenez à l’invite de commandes OpenSearch et arrêtez OpenSearch en cliquant sur
ctrl+cpuisy - Les paramètres se trouvent dans
C:\opensearch\config\opensearch.yml, veuillez les vérifier. - Naviguez vers le dossier
C:\opensearch\bindans l’invite de commandes OpenSearch - Exécutez
opensearch-service.bat installpour installer le service Windows OpenSearch - Exécutez
opensearch-service.bat managerpour ouvrir les paramètres du service Windows OpenSearch - Définissez Startup type: sur
Automaticpuis cliquez sur OK - Exécutez
opensearch-service.bat startpour démarrer le service Windows OpenSearch
OpenSearch est démarré par défaut avec un certificat auto-signé. Vous pouvez configurer un domaine et un certificat, mais dans ce guide, le certificat auto-signé est conservé et FoxIDs est configuré pour accepter le certificat.
Configurez OpenSearch dans le site FoxIDs et dans le site FoxIDs Control dans les fichiers appsettings.json, situés par exemple dans C:\inetpub\FoxIDs\appsettings.json et 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
Ouvrez votre site FoxIDs Control (http://control.my-domain.com ou https://control.my-domain.com) dans un navigateur.
Il doit rediriger vers le site FoxIDs où vous vous connectez avec l’utilisateur administrateur par défaut admin@foxids.com et le mot de passe FirstAccess! (vous devez changer le mot de passe lors de la première connexion).
Vous êtes ensuite redirigé vers le site FoxIDs Control dans le tenant master. Vous pouvez ajouter d’autres utilisateurs administrateurs dans le tenant master.
Ensuite, cliquez sur le tenant main et authentifiez-vous à nouveau avec le même utilisateur administrateur par défaut admin@foxids.com et le mot de passe FirstAccess! (vous devez à nouveau changer le mot de passe).
L’utilisateur administrateur par défaut et le mot de passe sont identiques pour le tenant
masteret le tenantmain, mais ce sont deux utilisateurs différents.
Vous êtes maintenant connecté au tenant main et pouvez commencer à configurer vos applications et méthodes d’authentification.