日期:2014-05-19  浏览次数:20834 次

控制用户访问某些页面!~ 如何去做.
如有多个用户和多个页面,权限分别为:
u1:   1,2,
u2:   2,
u3:   2,3,
.................


类似这种,   如果有权限1就能访问a.aspx  
                                权限2就能访问b.aspx  
                                权限3就能访问c.aspx  
                                .........................

这样用   Session   如何去做啊,谢谢各位.

------解决方案--------------------
访问页面的时候Page_Load判断权限,如果权限不符合,则跳转到其它指定页面
------解决方案--------------------
1.
比较高级点,应该选择 HttpModule


2.
基类实现法

internal class MyPageBase : System.Web.UI.Page
{
protected override void OnLoad(EventsArg e) {
// 执行权限与当前请求路径,通过 Request.Path 获取,判断比较是否有权限
// ...
base.OnLoad(e);
}
}

3.
不管如何,

最好将权限与路径对应关系,存储起来,比如xml文档,

切忌硬编码
------解决方案--------------------
如果你用的母版页,就直接在母版页中判断,把权限放在session中!
打开时就判断
------解决方案--------------------
楼主说你有几百个页面,但我想你不会这几百个页面的访问都要根据权限来判断是否有权访问吧,我想你要判断用户是否有权访问的页面应该也不会很多吧,一般你的网站肯定也有很多页面是任何用户都可以访问的,所以我觉得在你要设置权限访问的页面进行权限判断这个方法应该可以用吧!
------解决方案--------------------
session那就用继承类的方式吧
建议用FORM登录来实现这个过程
------解决方案--------------------
学习