之前可能会问过这个问题,但我搜索了很多关于在MVC4中使用area提供安全实现的简单描述的教程。我关心的是,我的应用程序中有两个区域,分别命名为Admin和Public。现在我希望如果有人试图访问管理员页面,那么他首先面对登录页面,然后一旦验证凭据,用户就可以查看管理页面。现在我已经实现了ASP的默认身份验证模板,它允许我在有/无登录的情况下访问管理页面。所以为了安全起见我提供了
[Authorize()]
对于我想要保护的所有页面,现在这个过程正在运行,但仍然存在一个问题,即它给了我以下错误
现在我不希望我的公共区域安全,所以我怎样才能使它专门针对管理区域。我想要除了显示
未经授权的访问
我怎样才能让它在登录页面上重定向,因为它曾经发生在传统的asp.net应用程序中。我在root web.config文件中进行了以下更改。
<authentication mode="Forms">
<forms loginUrl="~/Areas/Admin/Account/Index"/>
</authentication>
提前致谢
答案 0 :(得分:0)
您需要在arearegistration中添加区域路由。请记得在那里添加命名空间