小编Tom*_*mek的帖子

ASP.NET MVC授权和使用模型类的权限

这是我在这里发表的第一篇文章,所以你好:)好吧,让我们谈谈......我在ASP.NET MVC框架中编写我的第一个应用程序,我在检查使用模型类实例的权限时遇到了问题(阅读,编辑).示例代码如下所示:

// Controller action

[CustomAuthorize(Roles="Editor, Admin")]
public ActionResult Stats(int id)
{
    User user = userRepository.GetUser(id);

    if (user == null || !user.Activated || user.Removed)
        return View("NotFound");
    else if (!user.IsCurrentSessionUserOwned)
        return View("NotAuthorized");

    return View(user);
}
Run Code Online (Sandbox Code Playgroud)

到目前为止授权属性只保护控制器动作,所以我的问题是:如何使CustomAuthorize属性不仅检查用户角色,用户名,还要检查在动作方法中实例化的资源(上图:用户类,但还有其他ORM LINQ2SQL类新闻,照片等)所有这些要检查的对象都有自己的唯一ID,因此用户实体拥有自己的ID,新闻将其ID和UserID字段引用到Users表.我该如何解决这个问题?

asp.net-mvc authorization

5
推荐指数
1
解决办法
2645
查看次数

标签 统计

asp.net-mvc ×1

authorization ×1