• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

如果判断一个用户或角色对某一文件夹有访问权限?

jaden1024 技术总监  2008-12-10 05:48:59
如果判断一个用户或角色对某一文件夹有访问权限?
web.config内容如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="系统管理员" />
<deny users="?" />
</authorization>
</system.web>
</configuration>
我要在登录时判断用户是否对此文件夹有访问权限,如果此用户不属于“系统管理员”组则提示登录失败
...全文
71 点赞 收藏 7
写回复
7 条回复
supremeholy 2008年12月11日
参考:
http://blog.csdn.net/cityhunter172/archive/2005/11/06/524043.aspx
http://blog.csdn.net/cityhunter172/archive/2005/11/13/528463.aspx
http://blog.csdn.net/cityhunter172/archive/2005/12/06/545301.aspx
http://blog.csdn.net/cityhunter172/archive/2005/12/31/567479.aspx
回复 点赞
supremeholy 2008年12月11日
在网站的web.config中,与system.web同一级别,可以设置对某一文件夹的访问权限,需要用form认证。
<location path="UserCenter">
<system.web>
<!--<authentication>
<forms name="UserLoginAuth" loginUrl="~/UserLogin.aspx" defaultUrl="~/UserCenter/UserCenter.aspx"></forms>
</authentication>-->
<authorization>
<allow users="User"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
<location path="AdminCenter">
<system.web>
<authorization>
<allow users="Admin"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
<location path="SupplierCenter">
<system.web>
<authorization>
<allow users="Supplier"/>
<deny users="*"/>
</authorization>
</system.web>
</location>

在用户登录时:
System.Web.Security.FormsAuthentication.SetAuthCookie("Admin", false);//Admin对应配置文件中的<allow users="Admin"/>,是一组用户的标示,不是具体的登录用户名,但也可以设置为用户登录名
Response.Redirect("......");
回复 点赞
jaden1024 2008年12月11日
顶一下
回复 点赞
jaden1024 2008年12月10日
我的意思是:如何根据用户或用户所属role结合web.config的配置来做比较,判断用户能否访问此文件夹
不知我说清楚了没有。。。
回复 点赞
智者知已应修善业 2008年12月10日
更喜欢自己设计在数据库中进行配置更加自由
回复 点赞
sobaby 2008年12月10日
修改一下你的web.config文件

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="系统管理员" />
<deny users="*" /> 这里是修改的
</authorization>
</system.web>
</configuration>

允许管理员组访问 拒绝所有用户
  上面的配置看起来是是有冲突的,但是.net会优先匹配第一个满足条件的
回复 点赞
YiCaoYiMu08 2008年12月10日
form 验证?
根目录中web.config中
<authentication mode="Forms">
<forms name="AdminUser" loginUrl="~/Admin/Default.aspx"></forms>
</authentication>

文件夹中web.config中
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
<authorization>
<deny users="?"/>
<allow users="AdminUser"/>
</authorization>
</system.web>
</configuration>

用户登录时:
System.Web.Security.FormsAuthentication.SetAuthCookie("AdminUser", true);

上面的是允许AdminUser访问

回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告