Tag: 表单 身份validation

如何基于Session数据在ASP.NET MVC中实现授权检查?

这将是我的第一个带有表单身份validation的ASP.NET MVC应用程序,所以我试图确保我不会错过任何东西。 场景是这样的:公共/安全区域。 在私人区域内,它甚至进一步限于特定区域/用户。 这些“区域”由对每个用户组自定义的基本区域的自定义项定义。 例如,用户可以访问url /Area/Controller/Action 。 他们需要获得安全区域的许可,否则他们将被重定向到登录视图。 我一直在阅读有关AuthorizeAttribute但我不知道我应该如何/在哪里进行这些基本检查。 我最初的预感是在用户的IP成功登录后,在会话中存储用户对象,以及他们有权访问的内容等详细信息。 每个安全控制器调用的授权检查将validation会话中是否存在有效用户对象,IP仍匹配,并且用户可以访问特定区域。 这个设置有没有明显的漏洞? 编辑:在哪里/如何实现这些检查,以便当控制器被[授权]标记时,它将执行那些会话对象检查? 任何指针或建议将不胜感激。 谢谢。

如何在ASP.NET中处理表单身份validation超时exception?

如果会话已过期且用户单击指向另一个webform的链接,则asp.net身份validation会自动将用户重定向到登录页面。 但是,有些用户没有点击指向其他网络表单的链接。 例如:在gridviews中编辑链接,当使用带文本框的AutoCompleteExtender并且应用程序尝试获取信息时,基本上,在每种情况下,当回发完成并且事件不是由asp.net身份validation自动处理时。 处理这些exception的最佳方法是什么? 更新:我刚刚修改了问题标题:表单身份validation超时,而不是初始会话超时。 谢谢你让我意识到这种差异。 更新:我刚刚针对我面临的具体问题创建了一个新问题: 如何使用UpdatePanel处理因过期身份validation票据而导致的exception? 。 令人惊讶的是,我没有找到很多关于它的信息。 我将衷心感谢您的帮助。