两个子文件夹的表单身份验证问题

时间:2011-01-18 16:26:35

标签: forms-authentication

在我的应用程序中,有两个子文件夹需要进行身份验证。在我的应用程序web.config中,我给出了这样的

  <authentication mode="Forms">
        <forms loginUrl="Customer/My Accounts/Default.aspx"  name="formsauth1" 
             />
  </authentication>

这仅适用于具有路径Customer / My Accounts / Default.aspx的一个子文件夹,但我需要验证具有路径Arab / Customer / My Accounts / Default.aspx的另一个子文件夹。我想知道如何识别文件夹以及如何通过修改上述代码来验证它们

1 个答案:

答案 0 :(得分:1)

您希望将loginUrl设置为等于您的登录页面,而不是受限制的页面。

  <authentication mode="Forms">
        <forms loginUrl="Login.aspx"  name="formsauth1" />
  </authentication>

然后在子文件夹中,您要在每个文件夹中创建一个web.config,其中包含以下内容:

<configuration>
    <system.web>
        <authorization>
            <deny users="?" />
        </authorization>
    </system.web>
</configuration>

因此,当未经身份验证的用户尝试访问这些子文件夹时,<authorization>元素将拒绝它们并将其重定向到loginUrl。登录后,他们将返回到他们试图访问的原始页面。