Outstanding's Blog

outstanding

.NET 的安全性配置

请看下面的Web.config文件片断:

<authorization>
        
<deny users="?"/>
        
<allow roles="SomeRole"/>
        
<deny  users="*"/>
    
</authorization>

在Windows 2003 Server 中,相应的页面谁可以访问?

一般的回答是属于Role"SomeRole"的User都可以访问。

但结果出乎我们的意料。在我的实际项目中,结果是谁都不能访问。改变一下web.config,改成如下的样式:
<authorization>
        
<deny users="?"/>
        
<allow roles="MyComputerOrDomain\SomeRole"/>
        
<deny  users="*"/>
    
</authorization>

结果就正确了。

结论:在windows 2003 中,如果指定具体的用户或角色,则用户名或角色名应写完整,即格式为domain\user或domain\role的格式。如果服务器用户或角色为具体的不在域中的独立服务器,则domain为相应的计算机名。

posted on 2005-01-24 13:33  Outstanding  阅读(409)  评论(0)    收藏  举报

导航