如何允许匿名用户浏览Style文件夹

时间:2011-03-02 07:43:00

标签: asp.net web-config authorization

在我的网络应用程序中,我希望匿名用户只浏览登录页面,现在没关系,但它看起来没有风格!

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

</system.web>

<location path="Style">
  <system.web>
    <authorization>
      <allow users="?" />
    </authorization>
  </system.web>
</location>

任何帮助!

3 个答案:

答案 0 :(得分:3)

从此article

  

图片和CSS文件

     

假设您将所有图像和CSS放在一个名为images的单独文件夹中,并且您拒绝匿名访问您的网站。在这种情况下,您可能会在登录页面上看到,您无法看到应用于登录页面控件的图像(如果有)和css(如果有)。

     

在这种情况下,您可以将web.config添加到images和css文件夹,并允许访问该文件夹的所有人。因此,您在images文件夹中的web.config应如下所示:

<configuration>
   <system.web>
      <authorization>
        <allow users="*"/> //Allow everyone
      </authorization>
   </system.web>
</configuration>

答案 1 :(得分:1)

最受欢迎的答案:

<configuration>
   <system.web>
      <authorization>
        <allow users="*"/> //Allow everyone
      </authorization>
   </system.web>
</configuration>

..是正确的..但是如果这无效,那么您需要验证身份验证是否按预期设置,并且配置匿名运行的用户对您需要的所有文件夹具有读取权限。

注意:如果您有多个web.configs,则可能需要使用自己的web.config检查每个文件夹。

检查Web应用程序

打开Web应用程序的“IIS /身份验证”,然后在标记为“匿名身份验证”的条目上单击“编辑”。

  • 如果指定了特定用户,请确保指定的用户有权访问您的文件夹。
  • 如果设置了“应用程序池标识”,则需要检查应用程序池配置。

检查应用程序池

找到您应用的应用程序池,然后单击“高级设置”并搜索名为“身份”的项目。

如果标识是“ApplicationPoolIdentity”,则您需要将该文件的访问权限授予“IIS_IUSRS”。

有关“IIS_IUSRS”的更多信息,请参阅:http://learn.iis.net/page.aspx/140/understanding-built-in-user-and-group-accounts-in-iis/

答案 2 :(得分:0)

使用

        <allow users="*" />

对于样式文件夹,因此每个用户都可以使用该样式。

  1. 使用

    <location path="admin">
           <system.web>
                <authorization>
                     <deny users="*" />
                     <allow users="?" />
                </authorization>
          </system.web>
    </location>
    
  2. 您只能为经过身份验证的用户访问Admin文件夹。

相关问题