开发者

Best Practices in User Privileges/Session Variables in MVC3

开发者 https://www.devze.com 2023-04-04 06:45 出处:网络
Hi Stack Community Members, I am developing an application under MVC3 where users have department-specific CRUD priv开发者_高级运维ileges.In other words, all users can view data for all departments,

Hi Stack Community Members,

I am developing an application under MVC3 where users have department-specific CRUD priv开发者_高级运维ileges. In other words, all users can view data for all departments, but only certain users can make changes to the data for any one given department. User-department privilege data is held in a join table in a database.

What I typically do in this kind of situation (in PHP) is to create a Session variable (an array) on login which is populated with the id's of the departments which the user is allowed to edit. When a user then goes to access the editing feature a drop-down list is populated with only these specific departments. I also populate a few other session variables which are used frequently like the user's name and the id of the current time period (business quarter).

Is this type of approach a good way to go in MVC3, or is some alternative approach better? While I figure that I'm going to use Forms Authentication and some specific roles (employee, admin, etc.) these types of roles are just too broad to be able to target department-by-department access, and I'm not sure that MVC3 has an out-of-the-box method which is better than what I'm planning to do.

Your guidance is appreciated!


I'm using Forms Authentication, add specific roles, and combine them if needed. I don't mind being specific for the roles, as they can be combined anyway I want. I can still have broad roles for more general actions.


I store similar data (UserId, DepartmentId, etc) in session since it does not change for the user and it is a small amount of data. It is my opinion that session state would be a good approach for you also.

0

精彩评论

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

关注公众号