IIS Konfiguration
Diese Seite beschreibt die aktuelle IIS-Konfiguration für Windows-Installationen mit:
- der Legacy Website
ROOMS - der
RoomsPro API
Beide Rollen können auf demselben Server oder getrennt betrieben werden. Wenn beide Rollen auf einer Maschine installiert werden, müssen auch beide Voraussetzungen erfüllt sein.
Voraussetzungen
- Windows Server x64 mit IIS 10 oder neuer
- Für die Legacy Website
ROOMS:.NET Framework 4.8 - Für die
RoomsPro API: ASP.NET Core Hosting Bundle für.NET 10(x64)
Wichtige Hinweise:
- WebDAV auf der ROOMS Website nicht aktivieren
- Die
RoomsPro APIist keine klassische ASP.NET-4.x-Anwendung und benötigt stattdessenAspNetCoreModuleV2 - Die Legacy Website verwendet weiterhin klassische ASP.NET-4.x-Komponenten
Empfohlene IIS-Rollen und Features
Für die Legacy Website ROOMS
- Common HTTP Features
- Default Document
- HTTP Errors
- Static Content
- HTTP Redirection
- Health and Diagnostics
- HTTP Logging
- Performance
- Static Content Compression
- Dynamic Content Compression
- Security
- Request Filtering
- Anonymous Authentication
- Windows Authentication oder Basic Authentication nur für explizite Legacy-Sonderfälle
- Application Development
.NET Extensibility 4.8ASP.NET 4.8ISAPI ExtensionsISAPI Filters
- Windows Features
.NET Framework 4.8 Features
Für die RoomsPro API
- IIS mit eigenem Site- oder Application-Eintrag
- installiertes ASP.NET Core Hosting Bundle für
.NET 10(x64) AspNetCoreModuleV2verfügbarAnonymous Authenticationaktiviert
Gemeinsame Identität
Beide Application Pools werden mit demselben ROOMS-Service-Account betrieben, der auch für die Windows-Dienste ROOMS und RoomsPro Worker verwendet wird.
- Nehmen Sie den Account auf dem Webserver in die Gruppe IIS_IUSRS auf oder vergeben Sie gleichwertige Rechte.
- Geben Sie ihm Lese- und Ausführungsrechte auf beide Installationsverzeichnisse.
- Geben Sie ihm Lesezugriff auf die verteilten Konfigurations- und Lizenzdateien.
- Geben Sie ihm Schreibrechte auf die vorgesehenen Logverzeichnisse.
Legacy Website ROOMS konfigurieren
Im IIS einen eigenen Application Pool für die Legacy Website anlegen, zum Beispiel
ROOMS.Verwenden Sie als Identity den gemeinsamen ROOMS-Service-Account.
Die Website auf das Installationsverzeichnis der Legacy Website zeigen lassen, standardmässig:
C:\inetpub\wwwroot\ROOMSBindings, Hostname und SSL-Zertifikate gemäss Umgebung setzen.
Authentifizierung passend zur Umgebung konfigurieren.
Typische Variante:
Anonymous AuthenticationaktiviertWindows AuthenticationdeaktiviertBasic Authenticationdeaktiviert
Für die aktuelle Standardinstallation wird die Legacy Website anonym betrieben; die eigentliche Authentisierung erfolgt über die API beziehungsweise den IdentityServer/OpenIddict-Flow. Von dieser Default-Konfiguration sollte nur abgewichen werden, wenn bewusst ein spezieller Legacy-Authentifizierungsweg betrieben wird.
Hinweis:
- Frühere Hinweise zu einem separaten Unterverzeichnis
WebServicesbetreffen Altinstallationen. Für die aktuelleRoomsPro APIwird eine eigene IIS-Site oder Application verwendet.
RoomsPro API konfigurieren
Im IIS eine eigene Site oder Application für die
RoomsPro APIanlegen.Als Physical Path das API-Verzeichnis verwenden, standardmässig:
C:\inetpub\wwwroot\APIVerwenden Sie für die API einen separaten Application Pool.
Verwenden Sie als Identity denselben ROOMS-Service-Account wie beim Legacy Application Pool und den Windows-Diensten.
Stellen Sie für den API Application Pool No Managed Code ein. Die Anwendung wird über
AspNetCoreModuleV2gestartet.Aktivieren Sie
Anonymous Authentication.Stellen Sie sicher, dass das ASP.NET Core Hosting Bundle korrekt installiert ist und
AspNetCoreModuleV2geladen werden kann.Prüfen Sie vor dem ersten Start, dass folgende Datei vorhanden ist und die richtige Datenbankverbindung enthält:
C:\inetpub\wwwroot\API\config\appsettings.jsonLassen Sie den Application Pool bis zum erfolgreichen Abschluss von
db migrategestoppt.
SSL und Betrieb
- Für produktive Umgebungen ist HTTPS für Legacy Website und
RoomsPro APIempfohlen. - DNS-Namen und Zertifikate für beide Sites sauber trennen und dokumentieren.
- Nach Änderungen an IIS, Bindings oder Hosting Bundle die Sites neu starten und die Logs prüfen.
Deinstallation
- IIS-Sites, Application Pools und Bindings bei Bedarf manuell löschen oder umkonfigurieren.
- Installierte Dateien werden über das MSI entfernt; die IIS-Konfiguration ist anschliessend separat zu bereinigen.