2011-06-29 24 views
0

我有一个在.NET MVC 2中构建的Web应用程序。我想用密码(基本身份验证)来保护目录。在IIS 6中,我只需转到安全设置中的目录并删除匿名。密码保护IIS 7(.Net MVC 2)中的目录

但在IIS 7中,我无法让它工作。

在认证网站的根目录中,我启用了匿名功能,因为我希望任何人访问该网站。明显。

然后,我转到我想保护的MVC目录(Views/Admin),并在启用基本身份验证时禁用匿名。这不起作用。我尝试了授权规则,但它也没有工作。

这是因为MVC使用排序吗?我的意思是,views/admin文件夹实际上是website.com/admin,我想这是一个虚拟目录。

那么,如何在IIS 7上的.NET MVC 2中设置密码保护的子目录?

感谢

斯特凡

+0

这是一个不是MVC路线的实际目录吗?站点是否在集成管道模式下运行的池中配置? – Kev

+1

伙计们......这不是Web Masters的问题。请去阅读他们的FAQ。这似乎是关于确保一个ASP.NET路由,并有一个ASP.NET MVC解决方案。 – Kev

回答

0

如果有人绊倒在此...

您需要的AuthorizeAttribute添加到您的任何控制,以保护整个事情或特定的行动方法。

如在ASP.NET Tutorials中所述,在请求期间遇到此属性时,它将检查用户是否在访问控制器或操作的角色中正确验证并正确授权。如果没有,它会向用户请求认证。