标题:转侯老铲解答,关于web.config的身份验证问题
只看楼主
JonnyLiu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-4-27
 问题点数:0 回复次数:7 
转侯老铲解答,关于web.config的身份验证问题
我在web.config里面把<allow users="*">改成了<deny users="?">,页面自动跳转了,可是每次都跳转到index.htm,而我需要定位到login.aspx啊,我怎么办呢?
搜索更多相关主题的帖子: web config 身份 验证 users 
2006-06-01 11:38
JonnyLiu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-4-27
得分:0 
老铲不在吗
2006-06-01 14:15
JonnyLiu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-4-27
得分:0 
没有人理会我吗
2006-06-01 15:28
铲铲
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:506
专家分:0
注 册:2006-5-2
得分:0 

那么在网站根目录上的
配置节authentication添加属性
如下:
<authentication mode="Forms" loginUrl="login.aspx" />


本来如果对请求的资源访问受限的话,他会自动定向到login.aspx而无需你自己设置(该设置在machine.config中),而且URL中应该含有一串ReturnUrl=...的参数,以便验证通过时重新定向到刚才无法访问的页面。
你试一下


铲铲是也
2006-06-01 15:39
JonnyLiu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-4-27
得分:0 

我明白了,谢谢你
还有我需要做一个权限分配的工作,能给个思路吗?我现在一点感觉也没有哦
麻烦你了,我还有一天时间

2006-06-01 16:17
JonnyLiu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-4-27
得分:0 
提示是:无法识别的属性“loginUrl”。

怎么搞呢
2006-06-01 16:20
铲铲
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:506
专家分:0
注 册:2006-5-2
得分:0 

啊,不好意思,我把标记弄错了。应该是这样写:
<authentication mode="Forms">
<forms name="name" loginUrl="url" ></forms>
</authentication>

关于权限的分配,在我的文章《利用ASP.NET框架创建网站登陆》中作了说明。
为每个验证通过的用户分配一个或若干个角色。对于资源的访问,在需要限制的目录内写web.config文件覆盖根目录继承来的授权设置即可达到效果。或者还可以针对特定的某个文件。

或者在代码中使用Userd对象的User.IsInRole(string RoleName)等。

假如,管理目录之能让具有管理角色的登陆用户访问,则在此目录中重写web.config文件,如下内容:
<configuration>
<location path="userabc.aspx">
<system.web>
<authorization>
<allow roles="管理员" />
<deny users="*" />
</authorization>
</system.web>
</location>
</configuration>

关于如何为登陆用户分配角色等问题,更详细的请参阅这篇文章:http://www.bc-cn.net/bbs/dispbbs.asp?boardID=113&ID=67635&page=1


铲铲是也
2006-06-01 22:08
JonnyLiu
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2006-4-27
得分:0 
问题解决了,太感谢了,有空请你吃饭哦
2006-06-02 11:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-68966-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022704 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved