开发者

User restrictions on views based on customer user properties

I'm using ASP.NET MVC 3.

I would like to create an action filter to determine if a user can access a view. I have a User class with properties like IsAdministrator, IsTrusteeUser and IsAuditUser. How would I create an action filter to block certain users if the don't belong in some of these roles?

And aslo how would I use this in my views to hide/display certain开发者_高级运维 controls? I would appreciated some code :)


Why re-invent the wheel?

Put the [Authorize] action filter on the action/controller, specifying the role required:

[Authorize(Roles = "Administrator")]
public ActionResult SomeAdminPage() { // }

Either that, or you could implement your own custom authorization filter by implementing IAuthorizationFilter.


  1. You can implement IActionFilter interface for writing such an attribute extension for Users access permissions checking, a little about coding you can find on here

  2. To hide/display certain controls on UI, it is not the work of ActionFilters, rather you should either make separate views for each user and redirect him accordingly or do some

If/else

to acheive this.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜