【发布时间】:2010-11-12 04:40:03
【问题描述】:
这将是我的第一个带有表单身份验证的 ASP.NET MVC 应用程序,因此我正在努力确保不会遗漏任何内容。场景是这样的:公共/安全区域。
在私人区域内,它甚至进一步仅限于特定区域/用户。这些“区域”由对每个用户组自定义的基本区域的自定义定义。
例如,用户可以访问 url /Area/Controller/Action。他们需要获得安全区域的权限,否则他们将被重定向到登录视图。
我一直在阅读有关 AuthorizeAttribute 的信息,但我不确定应该如何/在哪里进行这些基本检查。我最初的预感是在成功登录后使用用户的 IP 和有关他们有权访问的内容等的详细信息在会话中存储一个用户对象。
每个安全控制器调用的授权检查将验证会话中是否存在有效的用户对象、IP 仍然匹配以及用户有权访问特定区域。这个设置有什么明显的漏洞吗?
编辑:我在哪里/如何实施这些检查,以便当控制器被标记为 [Authorize] 时,它将执行这些会话对象检查?
任何指针或建议将不胜感激。谢谢。
【问题讨论】:
标签: c# asp.net asp.net-mvc security forms-authentication