首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MVC 3授权属性不在操作方法中工作

MVC 3授权属性不在操作方法中工作
EN

Stack Overflow用户
提问于 2012-06-13 19:06:40
回答 2查看 1.8K关注 0票数 0

在我的web应用程序中,我希望在控制器中的某些操作方法中添加授权,而不是在整个控制器上。我添加了以下内容

代码语言:javascript
运行
复制
  [Authorize]
  public ActionResult ManageResturant(long Id = 0)
  {
  }

在web.config中,我添加了

代码语言:javascript
运行
复制
<authentication mode="Forms" >
  <forms loginUrl="~/Auth/LogIn"/>
</authentication>

但是,当我转到页面正常加载的操作方法时,我希望页面重定向到登录页面

有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-13 20:22:54

感谢John的评论,在您的提示下,我真的找到了解决方案问题出在我的代码中

我使用一个会话来存储登录的用户,并使用FormsAuthentication来确保所有用户都是登录的,以使登录链接显示给他们

问题是,当会话到期时,FormsAuthentication仍会验证用户是否为已登录用户,因此看起来该用户已注销,但实际上他是使用表单身份验证登录的

因此,我所做的OnActionExecuting方法我检查会话是否为空,我为用户注销,因此在本例中,我确保用户已注销

票数 1
EN

Stack Overflow用户

发布于 2012-06-13 19:59:14

设置看起来没问题,您确定要调用此操作吗?你不是有一些不带Authorize注解的名为ManageResturant的操作吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11013563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档