混合身份验证部署ASP.NET模块(MADAM)正是我在MVC2中构建的项目所需要的。我不是身份验证方面的专家,能不能快速地对MVC管道进行改造?
http://msdn.microsoft.com/en-us/library/aa479391.aspx

发布于 2011-05-25 22:44:37
根据您的服务器版本的IIS,您将需要将女士模块放置在web.config文件中的不同位置。
IIS 6
<system.web>
<httpHandelers>
<-- Madam Modules go here -->
</httpHandelers>
</system.web>IIS 7
<system.webServer>
<httpHandelers>
<-- Madam Modules go here -->
</httpHandelers>
</system.webServer>发布于 2011-03-31 07:46:01
我也一直在考虑在我目前的工作项目中使用女士,但我似乎无法让它着火。
似乎ASP.Net处理请求和处理HttpModules的方式发生了变化,或者是ASP.Net MVC管道中的不同之处。
我所能找到的最快的解决方案是将项目拆分为两个单独的项目,并将它们作为不同的应用程序托管在IIS中,否则身份验证将无法按预期工作。
就我所知,如果您将表单身份验证设置为打开,则MADAM不会触发,并且您希望使用Http-Basic身份验证的任何路径都将重定向到登录/或默认页面。如果关闭了窗体身份验证,则Http-Basic身份验证将起作用,但窗体身份验证将不起作用,因为它无法自动读取.ASPXAUTH cookie。
除非我偶然发现了某种方法使其正常工作,否则我将不得不将此项目一分为二,并将每个项目作为一个单独的应用程序托管在IIS中。
如果你有任何其他的解决办法,我们将非常感谢。
发布于 2011-03-31 11:22:00
我没有使用HttpApplication.AuthorizeRequest,但根据图表,我看不出有任何理由不能在AuthorizationFilter中实现此流程或将其直接连接到MADAM事件。ASP.NET MVC仍然受制于ASP.NET HttpApplication生命周期。
https://stackoverflow.com/questions/5488215
复制相似问题