我需要保护静态HTML文件的整个文件夹。目的是用户不能访问这些文件,除非它们被认证并且具有必要的作用。ASP.NET MVC中的静态文件授权w Owin
我们已经使用OWIN设置了基于cookie的身份验证,但无论我尝试了什么,我似乎都无法弄清楚需要对文件夹进行身份验证的更改的正确组合。
第一个问题是IIS完全跳过ASP.NET并仅仅提供文件。我认为可能通过将runAllManagedModulesForAllRequests设置为true来解决这个问题。但我从哪里去?我试过在Web.config中的填充元素来要求正确的角色,但它只是导致每个请求被拒绝(大概是因为它没有检查正确的cookie或其他东西)。
我已经度过了整整一天的时间,我即将失去理智。
有没有人解决过这个问题?
创建一个实现“IHttpHandler”的类,并将您的安全性放在那里。请参阅http://stackoverflow.com/q/1146652 – 2014-09-29 22:09:58
在这种情况下,我会将我的角色检查和等等放入RouteHandler中?我不积极,但这似乎并不适合这种事情。 – 2014-09-29 22:13:45
然后从标准控制器方法提供文件。这可能是我如何做到的。你可以用你想要的任何安全性来加载,MVC神将会得到满足。 – 2014-09-29 22:15:17