Meine Asp.Net Core mvc-Webanwendung erfordert Windows-Authentifizierung. In Entwicklung, auf IIS Express, funktioniert alles gut dank dieser Einstellung
launchSettings.json
%Vor%Beim Bereitstellen in IIS erhalte ich eine leere Seite. Die Anfrage an meine Website erhält einen 500 Fehlercode.
Ich habe versucht, diese Konfiguration zu Startup.cs hinzuzufügen, wie hier ohne Erfolg.
%Vor%Wenn ich die Authentifizierungsparameter direkt in IIS anschaue, ist die Windows-Authentifizierung aktiviert.
Ich habe Post über ein Paket namens Microsoft.AspNetCore.Server.WebListener
und andere über die Implementierung einer benutzerdefinierten Middleware gefunden. Ich kann mir nicht vorstellen, dass diese grundlegende Funktion so viel Arbeit erfordert. Fehle ich etwas?
launchSettings.json
-Datei wird nur von VS verwendet. Wenn Sie Ihre App veröffentlichen (oder ohne VS ausführen), wird launchSettings.json
nicht verwendet. Wenn Sie mit IIS / IISExpress arbeiten, müssen Sie nur sicherstellen, dass Ihre web.config die richtigen Einstellungen hat. In Ihrem Fall fehlt das Attribut forwardWindowsAuthToken
in der Datei web.config oder ist auf false
gesetzt. Er muss auf true
gesetzt sein, damit die Windows-Authentifizierung funktioniert. Ein Beispiel web.config vor der Veröffentlichung würde so aussehen:
Sie müssen web.config in Ihrem Projektverzeichnis überprüfen. Diese Einstellungen haben mir geholfen.
%Vor%Für mich musste ich die Zeile hinzufügen
services.AddAuthentication(IISDefaults.AuthenticationScheme);
in der Methode ConfigureServices
in Startup.cs
Meine App ermöglicht sowohl Windows als auch anonyme Benutzer.
Tags und Links iis asp.net-core windows-authentication