我正在构建一个Web应用程序,我希望用户具有执行特定操作的特定权限。我不想在ASP.NET中使用默认权限和角色提供程序。
我在考虑让每个用户都与一个角色相关联。每个角色都映射到一组权限(CreatePost,ReadPost,UpdatePost,DeletePost等)。
我对此有几个问题。是否最好为角色或某种位域上的每个Permission都有一个布尔属性?我喜欢为此设置方法的想法,但需要将这些方法映射到为数据库中的角色存储的权限。
另外,我如何为每个操作/请求实现此操作?我正在考虑发布here的内容,但我不太确定。
谢谢!
答案 0 :(得分:0)
创建自己的角色提供程序并在web.config中注册它。查看MSDN以获取示例。注册后,它会将您提供的角色与校长相关联。
我刚刚为我的一个项目完成了这项工作并且工作正常。
要检查用户是否有权执行任务,您必须查看用户是否具有所需角色。在“普通”ASP.NET中,您必须在代码中执行此操作。在MVC中,您可以使用控制器中每个类/方法的属性来执行此操作。