1、首先,数据库里,有用户表,角色表,再建一个页面权限表,和一个角色权限表(角色和页面权限的对应关系)
2、这样我把网站中每个页面对应的pageID作为一个常量记录下来(比如说放在页面的隐藏控件中);
3、page_load事件中,从session或者cookie中获取用户角色,查找数据库获取该角色的所有页面权限。若果该页面的PageID在这些权限里。则判断用户有访问本页面的权限。
4、可是有问题是:如果我们要修改了数据库中的页面权限表pages,对应还必须来每个页面上手动修改pageID.这样很麻烦,也很容易出现漏洞,错误。
5、最好写一个公共方法,每个页面的load事件都调用一下!我目前做的一个系统都是这样实现的。很实用的
6、用户表用户-角色角色表角色-功能功能表功能表结构{功能名称功能ID功能类型(菜单、殳陌抻泥页面、按钮)所属子系统。}佯鲅烫侬写3个方法第一个方法供菜单加载时读取菜单权限第二个方法当页面加载时读取用户是否有此页面权限底三个方法当页面加载时读取用户在页面上所具有的按钮权限(功能ID即按钮ID和页面名称,在页面加载里面更具页面名称和按钮id进行相应的跳转和禁用)