启用RoleManage后,已登录用户禁止访问某页面,如何跳转至提示页?

CloneCenter 2010-11-18 05:33:13
在 web.config 中配置了用户登录为form验证,并且启用了 roleManage,现在未登录的用户都会自动跳转至登录页才能访问页面,现在的问题是:
权限不足的用户访问特定页面(即不在用户Roles中的页面被用户访问),程序也自动跳转至登录页面了。现在仅仅希望用户得到一个提示页面,告诉他无权访问而已,如何做?

需要用哪个全局事件吗?还是在web.config中配置什么?还是修改我的login页面?
...全文
513 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzz9413 2010-12-04
  • 打赏
  • 举报
回复
[Quote=引用 28 楼 clonecenter 的回复:]
这个不是用自己的代码来处理的吗?不是要这个的。

估计只有从login页面来处理了。
[/Quote]

看错,不好意思,我一直用自己的代码判断,没用过系统的那个权限管理,因为做项目用那个不合适
zzz9413 2010-12-04
  • 打赏
  • 举报
回复
BASEPAGE里:意思是页面的基页面,其他页面都继承它
如果不想继承,那就把BASEPAGE的代码复制到你的工作页,即有权限则显示,没权限则提示无权访问

你要先判断是否登录,没有登录就跳到登录页
已登录,就判断是否有权限显示


所以我的方法是在LOAD里写了2个方法:

//判断是否登录,这个方法里来实现没登录转登录页。
Utilities.CheckIsLogin();
// 判断是否有这个页面权限权限,
this.Authorized("Project.Admin");


//无权限则跳到无权限页
HttpContext.Current.Response.Redirect(无权限页的URL)
CloneCenter 2010-12-02
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 zzz9413 的回复:]
我是自己写了权限判断方法,具体方法实现比较长,我只帖了方法的思路。如果对这具体实现感兴趣,可以吧项目发给你。
主要是先判断是否登录,没登陆则转登陆页,登陆但没权限则给出提示:

C# code

BASEPAGE里:
//是否有权限
public void Authorized(string permissionItemCode)
{
// 若没有相应的权……
[/Quote]

这个不是用自己的代码来处理的吗?不是要这个的。

估计只有从login页面来处理了。
jshi123 2010-12-01
  • 打赏
  • 举报
回复
修改login页面,在Page_Load中加上:
if (Page.User.Identity.Name != "")
{
Response.Write("无权访问");
Response.End();
}
jauntyhand 2010-12-01
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 stickking 的回复:]
login页面中提示不就行了,提示加登陆表单。
[/Quote]
..
zzz9413 2010-12-01
  • 打赏
  • 举报
回复
我是自己写了权限判断方法,具体方法实现比较长,我只帖了方法的思路。如果对这具体实现感兴趣,可以吧项目发给你。
主要是先判断是否登录,没登陆则转登陆页,登陆但没权限则给出提示:

BASEPAGE里:
//是否有权限
public void Authorized(string permissionItemCode)
{
// 若没有相应的权限,那就跳转到没有权限的页面里
if (!LoginUtilities.UserIsLogin() || !IsAuthorized(permissionItemCode))
{
bool y = IsAuthorized(permissionItemCode);
HttpContext.Current.Response.Redirect(Utilities.AccessDenyPage + "?Code=" + permissionItemCode);
}
}


该页面LOAD中:
//判断是否登录,这个方法里来实现没登录转登录页。
Utilities.CheckIsLogin();
// 判断是否有这个页面权限权限
this.Authorized("Project.Admin");
stickking 2010-12-01
  • 打赏
  • 举报
回复
login页面中提示不就行了,提示加登陆表单。
CloneCenter 2010-12-01
  • 打赏
  • 举报
回复
看来这个问题本次提问是无希望了,过两天再结贴吧。
啾啾我 2010-11-25
  • 打赏
  • 举报
回复
想学习,期待高手!
CloneCenter 2010-11-25
  • 打赏
  • 举报
回复
没有人支持了吗?难道要回到原来的 Session方式?
CloneCenter 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 fendouaj 的回复:]

还是写多个Filter吧!这样可能好解决一些.
[/Quote]

说的原来是MVC模式下的 ActionFilter,我用的是 WebForm,不是MVC。
CloneCenter 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 fendouaj 的回复:]

还是写多个Filter吧!这样可能好解决一些.
[/Quote]
不懂 Filter 是什么?能解释一下吗?
CloneCenter 2010-11-22
  • 打赏
  • 举报
回复
看来没有什么好方法了?

M$的这个东西应该有很多人用的吧?还是大家基本都是用自己的Session来处理的?
fendouaj 2010-11-22
  • 打赏
  • 举报
回复
还是写多个Filter吧!这样可能好解决一些.
truecoffeefox 2010-11-22
  • 打赏
  • 举报
回复
以前我也遇到这样问题,没解决,在国外论坛也没有答案,可能属于无法解决吧。后来我自己编码做权限了……
ycproc 2010-11-22
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 sandy945 的回复:]

自动跳转至登录页
---------------

这个是可配置的么?

如果是的话,配置成跳到中转页

在中转页进行判断,是需要登录 还是需要提示
[/Quote]

这个方法好 。 尝试在中间页处理 这样 也许可行
CloneCenter 2010-11-19
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 zjing_19838 的回复:]
算了,你还是用session吧,这东西对你来说太深了
[/Quote]
11楼,能否说一下怎么处理?

我就是不懂才来这里问的。要是知道怎么弄,也就不用来提问了。
zjing_19838 2010-11-19
  • 打赏
  • 举报
回复
算了,你还是用session吧,这东西对你来说太深了
syb1045 2010-11-19
  • 打赏
  • 举报
回复
顶上去, 期待高手解决。
CloneCenter 2010-11-19
  • 打赏
  • 举报
回复
再为自己顶一次,希望有经验的达人快来帮忙。
加载更多回复(9)

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧