asp.net 基本身份验证

本文关键字:身份验证 net asp | 更新日期: 2024-10-25 17:43:18

我有一个具有基本身份验证的内部站点。

是否有可能只有一页不要求可信度?就像允许任何人只访问一个页面一样?

可以在web.config中为单个页面设置某些内容吗?

asp.net 基本身份验证

将以下元素添加到 web.config 的configuration节点:

<location path="aFolder/aPageToExclude.aspx">
     <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>

有关详细信息和用法,请查看 MSDN 文档:位置元素(ASP.NET 设置架构)

我所做的是我不使用 ASP.Net 身份验证。我所做的是当用户输入他们的用户名和密码时,我检查数据库是否存在具有该用户名和密码的行。

您可以使用 objDataSet.Tables[0].Rows.Count > 0 .您可以将其置于"if"条件,然后获取用户名并将其放入会话中。你这样做是这样的:

Session["username"] = (Username Variable Here) .然后,创建两个母版页,一个用于仅供登录者访问的页面,另一个用于供任何人访问的页面。在仅向登录人员授予访问权限的母版页中,可以检查会话数据是否为 null。如果为 null,则可以将该人员重定向回登录页面。"登录"母版页可以保持原样。如果已有母版页,则可以复制它并添加该条件。如果尚未实现母版页,则可以将条件放在需要用户登录才能访问该页的每个页面的页面加载中。由于您使用的是会话而不是cookie,因此用户将更难入侵此系统。

您需要

覆盖 web.config 文件设置。
您需要创建一个文件夹,并在该文件夹中再创建一个 web.config 文件。
然后将 Page.aspx 放入该文件夹中。
然后修改该 web.config 文件代码,如下所示:

<authentication mode="Forms">
</authentication>

注意:

1)您不必提及用户=*它会自动允许所有用户访问该文件夹下的页面。

您可以做的是,如果您已经在为页面使用目录结构,那么您可以将该页面.aspx保留在具有登录页面的同一级别。