Potrzebuję zabezpieczenia całego folderu statycznych plików HTML. Celem jest to, że użytkownik nie może uzyskać dostępu do tych plików, chyba że są one uwierzytelnione i mają odpowiednią rolę.Autoryzacja dla plików statycznych w ASP.NET MVC w/Owin
Mamy uwierzytelnianie oparte na plikach cookie skonfigurowane za pomocą OWIN, ale bez względu na to, co próbuję, nie mogę wymyślić prawidłowej kombinacji zmian, aby wymagać uwierzytelnienia w folderze.
Pierwszy problem polega na tym, że usługi IIS całkowicie pomijają ASP.NET i po prostu obsługują pliki. Myślę, że prawdopodobnie można to obejść, ustawiając parametr runAllManagedModulesForAllRequests na wartość true. Ale dokąd pójdę?
Próbowałem wypychania elementów w Web.config, aby wymagały odpowiednich ról, ale to po prostu skutkuje KAŻDYM żądaniem odmowy (prawdopodobnie dlatego, że nie sprawdza właściwego cookie lub czegoś takiego).
Spędziłem cały dzień na tym i już niedługo stracę rozum.
Czy ktoś rozwiązał ten problem?
Utwórz klasę, która implementuje 'IHttpHandler', i umieść tam swoje zabezpieczenia. Zobacz http://stackoverflow.com/q/1146652 –
W tym scenariuszu chciałbym umieścić moje sprawdzanie roli i takie w RouteHandler? Nie jestem pozytywny, ale to nie wydaje się być właściwym miejscem na takie rzeczy. –
Następnie serwuj plik ze standardowej metody kontrolera. Pewnie tak bym to zrobił. Możesz je załadować z wyprzedzeniem, bez względu na to, jakie zabezpieczenia chcesz, a bogowie MVC będą zadowoleni. –