我使用 C#-MVC3(用于网络)。
我想创建一个要在站点中执行的操作列表(例如 - 打开一篇新文章、评论一篇文章等),并且站点的管理员将创建角色(管理员、文章管理员、编辑器、访客等)。 .) 并且对于每个角色 - 选择它可以执行的操作(从列表中)。
我想使用“角色”和“授权”属性,但它不是动态的。我怎样才能做到这一点?
我使用 C#-MVC3(用于网络)。
我想创建一个要在站点中执行的操作列表(例如 - 打开一篇新文章、评论一篇文章等),并且站点的管理员将创建角色(管理员、文章管理员、编辑器、访客等)。 .) 并且对于每个角色 - 选择它可以执行的操作(从列表中)。
我想使用“角色”和“授权”属性,但它不是动态的。我怎样才能做到这一点?
您可以创建一个 AuthorizationFilter 并实现它以包括对您的角色的动态检查。
使用此示例:http: //geekswithblogs.net/brians/archive/2010/07/08/implementing-a-custom-asp.net-mvc-authorization-filter.aspx
请注意,上面的示例使用了静态角色列表,但显示了 AuthorizationFiter 的基本设置。这可以通过修改 OnAuthorization() 方法轻松调整。