Windows Server med IIS

Deploy FoxIDs på Windows Server med Internet Information Services (IIS).

Dette er en beskrivelse af hvordan du laver en standard deployment og logger ind første gang.

En FoxIDs installation er som en bucket, der er ingen eksterne dependencies og det er let at opnå meget høj oppetid med lille indsats. FoxIDs opdateres ved at downloade FoxIDs-x.x.x-win-x64.zip filen fra den nye release og derefter opdatere filerne i de to websites (uden at overskrive appsettings.json). Nye FoxIDs releases er backwards compatible, se release notes før du opdaterer.

En gyldig licens kræves for at få adgang til FoxIDs releases, hvor du kan downloade de nødvendige deployment filer.

Forudsætninger:

  • Du har en Windows Server (eller Windows 10/11) med Internet Information Services (IIS).
  • Du har grundlæggende viden om Windows Servere og IIS.

Denne guide beskriver hvordan du installerer FoxIDs på en enkelt server, men du kan dele installationen på flere servere.

Denne deployment omfatter:

  • To websites en til FoxIDs og en til FoxIDs Control (Admin Client og API).
  • De to websites eksponeres på to forskellige domæner / sub-domæner.
  • NoSQL database der indeholder alle data inklusiv tenants, miljøer og brugere. Deploy enten MongoDB Community Edition eller PostgreSQL.
  • FoxIDs logs gemmes som standard i filer. Afhængigt af belastningen, overvej at bruge OpenSearch i produktion.

Deployment

Deploymenten udføres i den beskrevne rækkefølge.

Installer database

Download og installer MongoDB Community Edition eller download og installer PostgreSQL.

MongoDB
En self-managed MongoDB deployment installeres som standard med access control deaktiveret. Overvej at konfigurere MongoDB autentifikation afhængigt af din installation.
MongoDB standard endpoint / connection string: mongodb://localhost:27017

Du kan installere MongoDB Compass (GUI) sammen med MongoDB Community Edition eller downloade og installere MongoDB admin applikationen separat.

PostgreSQL
PostgreSQL deployes som standard med brugeren postgres og et adgangskode du angiver under installationen.

  • Åbn pgAdmin og opret en database til FoxIDs med navnet FoxIDs

PostgreSQL standard endpoint / connection string: Host=localhost;Username=postgres;Password=xxxx;Database=FoxIDs

Tilføj to websites

Aktivér ASP.NET Core hosting og tilføj de to FoxIDs websites til IIS.

Tilføj ASP.NET Core Module (ANCM) til IIS

Tilføj FoxIDs website:

  • Site name FoxIDs

  • Physical path fx C:\inetpub\FoxIDs

  • http domænebinding for dit domæne fx http://id.my-domain.com

  • Sæt app service .NET CLR Version til No Managed Code

     Windows Server med IIS - tilføj FoxIDs website

Og tilføj FoxIDs Control website:

  • Site name FoxIDs.Control
  • Physical path fx C:\inetpub\FoxIDs.Control
  • http domænebinding for dit domæne fx http://control.my-domain.com
  • Sæt app service .NET CLR Version til No Managed Code

Tilføj valgfrit de to domæner til serverens hosts fil C:\Windows\System32\drivers\etc\hosts for at aktivere lokal test på serveren:

   127.0.0.1     id.my-domain.com
   127.0.0.1     control.my-domain.com

HTTP og HTTPS

FoxIDs understøtter både HTTP og HTTPS, men du bør altid bruge HTTPS i produktion.

Du kan springe denne sektion over hvis du vil køre FoxDs på HTTP uden et certifikat.

Du kan enten bruge dine egne certifikat(er) eller få et certifikat oprettet af Let's encrypt.

Brug dine egne certifikater
Installer dine egne certifikater på serveren og konfigurer https bindinger for de to websites.

 Windows Server med IIS - tilføj FoxIDs website

Certifikat oprettet af Let's encrypt
Opret og tilføj Let's encrypt certifikat til de to websites med win-acme.

Download win-acme.v2.x.x.x64.pluggable.zip filen fra den seneste win-acme release.

  1. Pak ud og placer win-acme.v2.x.x.x.x64.pluggable mappen et permanent sted fx på C drevet. Komponenten registreres efterfølgende til at køre i Windows Task Scheduler.
  2. Start en elevated Command Prompt i administrativ tilstand
  3. Navigér til win-acme.v2.x.x.x.x64.pluggable mappen
  4. Kør wacs.exe
  5. Klik N
  6. Vælg websites FoxIDs og FoxIDs.Control, sandsynligvis ved at skrive: 2, 3
  7. Klik A
  8. Vælg FoxIDs sitet som hovedhost
  9. Accepter vilkårene (klik N og derefter Y)
  10. Tilføj din e-mail

De to websites har nu https bindinger med certifikatet fra Let's encrypt, og certifikatet opdateres automatisk hver 3. måned eller deromkring.

Xcopy deploy FoxIDs til websites

Download FoxIDs-x.x.x-win-x64.zip filen fra FoxIDs release og pak ZIP filen ud. ZIP filen indeholder to mapper en til FoxIDs site og en til FoxIDs Control site.

  • Xcopy ZIP mappen FoxIDs til websites fysiske sti fx C:\inetpub\FoxIDs
  • Og Xcopy ZIP mappen FoxIDs.Control til websites fysiske sti fx C:\inetpub\FoxIDs.Control

Konfigurer både FoxIDs site og FoxIDs Control site i appsettings.json filerne, placeret i fx C:\inetpub\FoxIDs\appsettings.json og C:\inetpub\FoxIDs.Control\appsettings.json

  1. Sæt FoxIDs site domæne i FoxIDsEndpoint fx http://id.my-domain.com eller https://id.my-domain.com
  2. Kun i FoxIDs Control site. Sæt FoxIDs Control site domæne i FoxIDsControlEndpoint fx http://control.my-domain.com eller https://control.my-domain.com
  3. Hvis domænet starter med http://..., fjern kommenteringen af "UseHttp": true,
  4. Konfigurer database adgang, enten til MongoDB
    "Options": {
        "Log": "Stdout",
        "DataStorage": "MongoDb",
        "KeyStorage": "None",
        "Cache": "MongoDb",
        "DataCache": "None"
    },
    "MongoDb": {
        "ConnectionString": "mongodb://localhost:27017"
    },
    
    eller til PostgreSql med dit postgres brugeradgangskode
    "Options": {
        "Log": "Stdout",
        "DataStorage": "PostgreSql",
        "KeyStorage": "None",
        "Cache": "PostgreSql",
        "DataCache": "None"
    },
    "PostgreSql": {
      "ConnectionString": "Host=localhost;Username=postgres;Password=xxxxxxxx;Database=FoxIDs"
    },
    
  5. Konfigurer valgfrit e-mail afsendelse med SMTP.

Patching og update strategi

Opdatering af FoxIDs følger samme mekanik som Xcopy deployment, men lidt ekstra struktur holder nedetid lav og giver en nem rollback.

  1. Plan vinduet - Gennemgå de nyeste release notes, FoxIDs er backward compatible (medmindre andet er angivet i release notes), og planlæg et kort maintenance window. Hvis de to sites er bag en load balancer, drain trafik én node ad gangen.
  2. Stage binaries - Download den nyeste FoxIDs-x.x.x-win-x64.zip, pak ud til midlertidige mapper som C:\temp\FoxIDs.new og C:\temp\FoxIDs.Control.new, og kopier dine eksisterende appsettings*.json og web*.config.
  3. Snapshot den aktuelle installation - Stop de to IIS sites (eller deres App Pools). Xcopy eller omdøb live mapperne, fx C:\inetpub\FoxIDsC:\inetpub\FoxIDs.2025-11-11.bak. Gør det samme for Control sitet. En komprimeret backup eller VM snapshot kan også, men hurtige mappekopier er ofte tilstrækkelige.
  4. Swap opdateringen - Xcopy de staged mapper til live stierne (C:\inetpub\FoxIDs og C:\inetpub\FoxIDs.Control) og dobbelttjek at arvede NTFS tilladelser stadig inkluderer de relevante App Pool identities. Start App Pools/sites igen for at varme applikationerne op.
  5. Verificér og monitorér - Åbn Control sitet, gennemfør en login round-trip, kør en hurtig tenant/track lookup og overvåg logmappen (C:\inetpub\logs\LogFiles\foxids) for fejl. Hvis du bruger OpenSearch, tjek logs og fejl i OpenSearch.
  6. Rollback hvis nødvendigt - Hvis noget går galt, stop sites, omdøb de nydeployede mapper til .failed, gendan .bak mapperne til deres oprindelige navne og start IIS igen. Fordi databaseskemaet er backward compatible, vil de tidligere binaries fungere med det samme.

Gentag processen for hver release; ved multi-server setups patcher du én server ad gangen for at bevare tilgængelighed.

FoxIDs logfiler

FoxIDs logfiler gemmes som standard i C:\inetpub\logs\LogFiles\foxids\ mappen. Du kan ændre stien i web.config filen i de to websites.

Opret \foxids\ mappen i C:\inetpub\logs\LogFiles\ og giv de to IIS App Pools iis apppool\foxids og iis apppool\foxids.control fuld adgang til \foxids\ mappen.

Loggene indeholder fejl, advarsler, events og trace.

OpenSearch

Afhængigt af belastningen kan du overveje at bruge OpenSearch i produktion i stedet for logfiler.

Download OpenSearch eller download fra download siden.

  1. Opret en mappe et permanent sted fx C:\opensearch på C drevet. OpenSearch installeres efterfølgende til at køre som en Windows Service.
  2. Flyt den downloadede fil opensearch-x.x.x-windows-x64.zip til C:\temp mappen (eller en anden mappe med et kort navn) og pak filen ud - filnavnene er for lange til at pakke ud i standard download mappe
  3. Flyt de udpakkede filer til C:\opensearch mappen
  4. Start en elevated Command Prompt i administrativ tilstand
  5. Navigér til C:\opensearch mappen
  6. Sæt en administratoradgangskode, kør set OPENSEARCH_INITIAL_ADMIN_PASSWORD=<custom-admin-password>
  7. Start service, kør .\opensearch-windows-install.bat
  8. Start en anden Command Prompt
  9. Test OpenSearch, kør test request curl.exe -X GET https://localhost:9200 -u "admin:<custom-admin-password>" --insecure
  10. Test OpenSearch plugins, kør test request curl.exe -X GET https://localhost:9200/_cat/plugins?v -u "admin:<custom-admin-password>" --insecure
  11. Gå tilbage til OpenSearch Command Prompt og stop OpenSearch ved at trykke ctrl+c og derefter y
  12. Indstillingerne findes i C:\opensearch\config\opensearch.yml, gennemgå indstillingerne.
  13. Navigér til C:\opensearch\bin mappen i OpenSearch Command Prompt
  14. Kør opensearch-service.bat install for at installere OpenSearch Windows Service
  15. Kør opensearch-service.bat manager for at åbne OpenSearch Windows Service indstillinger
  16. Sæt Startup type: til Automatic og klik OK
  17. Kør opensearch-service.bat start for at starte OpenSearch Windows Service

OpenSearch starter som standard med et self-signed certifikat. Du kan konfigurere et domæne og et certifikat, men i denne guide beholdes self-signed certifikatet, og FoxIDs konfigureres til at acceptere certifikatet.

Konfigurer OpenSearch i både FoxIDs site og FoxIDs Control site i appsettings.json filerne, placeret i fx C:\inetpub\FoxIDs\appsettings.json og C:\inetpub\FoxIDs.Control\appsettings.json

"Options": {
    "Log": "OpenSearchAndStdoutErrors",
    //DB konfiguration...
},
"OpenSearch": {
    "Nodes": [ "https://admin:xxxxxxxx@localhost:9200" ],
    "LogLifetime": "Max180Days", 
    "AllowInsecureCertificates": true //Accepter self-signed certifikat
},

Sikre connection strings

I produktion anbefales det at bruge connection strings med adgangskoder til MongoDB, PostgreSQL og OpenSearch.

Gem ikke adgangskoder i appsettings.json. Behold ikke-følsomme værdier i appsettings.json og konfigurer secrets som environment variables i IIS for både FoxIDs sitet og FoxIDs Control sitet. Environment variables overskriver værdier i appsettings.json.

Konfigurer disse environment variables i IIS:

  • MongoDb__ConnectionString
  • PostgreSql__ConnectionString
  • OpenSearch__Nodes__0 (første OpenSearch node inklusiv credentials)

Sæt kun de variabler du bruger.

Eksempelværdier:

MongoDb__ConnectionString=mongodb://foxids:<password>@localhost:27017
PostgreSql__ConnectionString=Host=localhost;Username=postgres;Password=<password>;Database=FoxIDs
OpenSearch__Nodes__0=https://admin:<password>@localhost:9200

Værdierne gemmes i IIS konfigurationen (applicationHost.config) uden for webroden. Begræns adgang til IIS konfigurationsfiler til administratorer.

Sådan konfigurerer du variablerne i IIS:

  1. Åbn IIS Manager.
  2. Vælg sitet (FoxIDs eller FoxIDs.Control).
  3. Åbn Configuration Editor.
  4. Gå til system.webServer/aspNetCore.
  5. Tilføj værdier under environmentVariables.
  6. Gentag for det andet site og genstart begge App Pools.

Første login

Åbn dit FoxIDs Control site (http://control.my-domain.com eller https://control.my-domain.com) i en browser. Det bør videresende til FoxIDs site hvor du logger ind med standard admin brugeren admin@foxids.com og adgangskoden FirstAccess! (du skal ændre adgangskoden ved første login).
Du bliver derefter videresendt tilbage til FoxIDs Control site i master tenant. Du kan tilføje flere admin brugere i master tenant.

Klik derefter på main tenant og autentificér igen med samme standard admin bruger admin@foxids.com og adgangskoden FirstAccess! (igen, du skal ændre adgangskoden).

Standard admin bruger og adgangskode er den samme for både master tenant og main tenant, men det er to forskellige brugere.

Du er nu logget ind på main tenant og kan begynde at konfigurere dine applikationer og autentifikationsmetoder.

Dit privatliv

Vi bruger cookies til at gøre din oplevelse på vores websites bedre. Klik på 'Acceptér alle cookies' for at acceptere brugen af cookies. For at fravælge ikke-nødvendige cookies, klik på 'Kun nødvendige cookies'.

Besøg vores privatlivspolitik for mere