【问题标题】:How to deny anonymous users to virtual directory如何拒绝匿名用户访问虚拟目录
【发布时间】:2013-02-11 05:51:12
【问题描述】:

如何拒绝那些尚未登录我的 asp.net 网站的人访问我的虚拟目录?

我已将我的网站连接到服务器上的虚拟目录设置(使用 IIS 7)。 VD 包含 pdf 文件,我希望只有登录用户才能访问。然而,我的问题是,我似乎也无法“拒绝”匿名用户访问这些文件。目前,如果我在我的虚拟目录中键入 pdf 文件的直接路径,我可以访问它,即使我没有登录到我的网站。

我在虚拟目录的根目录中有一个 web.config 文件设置,如下所示:

 <?xml version="1.0"?>
 <configuration>
   <system.web>
     <authentication mode="Forms">
        <forms loginUrl="Login.aspx" />
     </authentication>
     <authorization>
        <deny users="?" />
     </authorization>
   </system.web>
 </configuration>

知道如何解决这个问题吗?

谢谢

【问题讨论】:

    标签: asp.net forms-authentication virtual-directory


    【解决方案1】:

    这里:

     <?xml version="1.0"?>
     <configuration>
       <system.web>
         <authentication mode="Forms">
            <forms loginUrl="Login.aspx" />
         </authentication>
         <authorization>
            <deny users="?" />
            <allow users="*"/>
         </authorization>
       </system.web>
     </configuration>
    

    &lt;deny users="?"/&gt; 将拒绝匿名用户,而 &lt;allow users="*"/&gt; 将允许所有经过身份验证的用户

    参考:Setting authorization rules for a particular page or folder in web.config

    【讨论】:

      【解决方案2】:

      点击你有身份验证的IIS下的虚拟目录,点击它,你将能够看到匿名身份验证禁用它。

      【讨论】:

        猜你喜欢
        • 2015-11-19
        • 2012-09-11
        • 2020-01-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-26
        • 2012-12-28
        相关资源
        最近更新 更多