0

请注意,这是对我之前的问题的轻微变化..

我正在使用 c# .NET Web Forms 4.0

我有一个像下面这样的文件夹,我需要密码保护,所以想要查看页面的任何人(任何外部用户也可以查看站点)需要首先输入用户 ID、密码(我们告诉他们)才能查看页面。

例子:

    www.abc.com/srlv/

所以在 srlv 下我有需要密码保护的网页。

请注意,只有当用户访问 /srlv/ 下的文件时,我们才需要进行身份验证

请注意,这些是 .html 文件,而不是 .aspx 文件。

      www.abc.com/srlv/index.html, www.abc.com/srlv/about.html

但是如果用户说 www.abc.com 它将允许他们在没有任何身份验证的情况下查看该网站

我正在考虑使用以下内容:

    <authenticaton mode="Forms">
    <forms loginUrl="/srcs/login.aspx" timeout="30" defaultUrl="/srlv/index.aspx" cookieless="UseUri">
    <credentials passwordFormat="Clear">
    <user name="Usw" password="pass123"/>
    </credentials>
   </forms>
   </authentication>

但是我怎么说只有当您访问其中的任何文件时才进行身份验证

    www.abc.com/srlv/
4

3 回答 3

1

您需要web.config在目标文件夹中创建一个包含以下内容的文件。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <authorization>
          <allow users="Usw"/>
          <deny users ="*,?" />
        </authorization>
    </system.web>
</configuration>

它只是说,允许用户Usw但拒绝其他人。

于 2013-01-17T11:57:34.940 回答
1

您可以使用 web.config 中的 location 元素来配置网站部分的权限

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

这将拒绝匿名用户的访问。

于 2013-01-17T11:57:40.563 回答
1

位置可以帮助你..

http://support.microsoft.com/kb/316871

只需访问所有未经授权的用户并仅阻止特定文件夹。

<configuration>
    <system.web>
        <authentication mode="Forms" >
            <forms loginUrl="login.aspx" name=".ASPNETAUTH" protection="None" path="/" timeout="20" >
            </forms>
        </authentication>
<!-- This section denies access to all files in this application except for those that you have not explicitly specified by using another setting. -->
        <authorization>
            <deny users="?" /> 
        </authorization>
    </system.web>
<!-- This section gives the unauthenticated user access to the Default1.aspx page only. It is located in the same folder as this configuration file. -->
        <location path="default1.aspx">
        <system.web>
        <authorization>
            <allow users ="*" />
        </authorization>
        </system.web>
        </location>
<!-- This section gives the unauthenticated user access to all of the files that are stored in the Subdir1 folder.  -->
        <location path="subdir1">
        <system.web>
        <authorization>
            <allow users ="*" />
        </authorization>
        </system.web>
        </location>
</configuration>
于 2013-01-17T11:58:17.250 回答