Autorisierung für statische Dateien in ASP.NET MVC mit Owin

8

Ich muss einen ganzen Ordner mit statischen HTML-Dateien sichern. Die Absicht ist, dass ein Benutzer nicht auf diese Dateien zugreifen kann, wenn sie nicht authentifiziert sind und die erforderliche Rolle haben.

Wir haben Cookie-basierte Authentifizierung eingerichtet mit OWIN, aber egal was ich versuche, ich kann nicht scheinen, die richtige Kombination von Änderungen zu machen, um Authentifizierung für den Ordner zu verlangen.

Das erste Problem ist, dass IIS ASP.NET vollständig überspringt und nur die Dateien bereitstellt. Ich denke, es gibt wahrscheinlich einen Weg um runAllManagedModulesForAllRequests auf true zu setzen. Aber wo gehe ich von dort?

Ich habe versucht, Elemente in der Web.config zu stopfen, um die richtigen Rollen zu verlangen, aber es führt nur dazu, dass JEDE Anfrage verweigert wird (vermutlich, weil sie das richtige Cookie oder etwas nicht überprüft).

Ich habe meinen ganzen Tag damit verbracht und ich bin dabei, meine Gedanken zu verlieren.

Hat jemand dieses Problem gelöst?

    
Anthony Compton 29.09.2014, 22:04
quelle

1 Antwort

3
  1. IIS liefert statische Dateien . Wenn Sie anhalten möchten, können Sie den standardmäßigen statischen Dateihandler und dann jede Anfrage entfernen serverd von MVC / OWIN.
  2. Dann machen Sie statische Dateiverwaltung und Autorisierung in Ihrem Controller : Route anhören / zuordnen, wo sich statische Dateien befinden

zum Entfernen des standardmäßigen statischen Dateihandlers fügen Sie dies der Datei web.config hinzu:

%Vor%     
Davit Tvildiani 28.08.2015 11:09
quelle