2010-09-02 144 views
0

我有一个在Windows 7旗舰版的ASP.NET 4.0中运行的站点。
它正在使用FormsAuthentication,有一个很好的小登录页面,所有这些在登录和认证方面都很好。ASP.NET 4授权

什么是不工作好,但目录授权覆盖子目录。

我希望已通过身份验证的用户和未通过身份验证的用户都可以访问incimages目录,以便登录页面可以正确使用CSS样式,并且顶部有徽标等。

好吧,很简单吧?我试图让在根web.config这些文件夹的匿名访问由<location>标签像这样:

<location path="images"> 
    <system.web> 
     <authorization> 
      <allow users="*,?" /> 
     </authorization> 
    </system.web> 
</location> 

以及个别web.config文件在目标目录像这样:

<?xml version="1.0"?> 
<configuration> 
    <system.web> 
     <authorization> 
      <allow users="*,?" /> 
     </authorization> 
    </system.web> 
</configuration> 

但由于某些原因,它不允许匿名用户进入这些目录。我已经通过尝试直接转到图片的某个网址来验证它与授权的关系,并且失败。但登录后,我可以把它拉起来很好。

在.NET 4.0中,对于授权而言,这是不会起作用的吗?我已经在2.0和3.5网站上做了同样的事情,没有任何问题。

回答

0

想通了。我从默认状态移动了我的网站目录。尽管IIS已将IIS_IUSERS组权限授予该目录,但由于某些原因,它不会为而不是赋予该目录的IUSR用户权限。手动添加了他,并且BOOM,它工作!