我有一个基于基本身份验证的内部网站。
是否可能只有一个页面不要求凭据? 也就是说,只允许任何人访问该页面吗?
可以在web.config中为单个页面设置某些内容吗?
我有一个基于基本身份验证的内部网站。
是否可能只有一个页面不要求凭据? 也就是说,只允许任何人访问该页面吗?
可以在web.config中为单个页面设置某些内容吗?
在你的web.config文件的configuration
节点中添加以下元素:
<location path="aFolder/aPageToExclude.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
欲了解更多信息和使用方法,请查看MSDN文档:位置元素(ASP.NET设置模式)
<location path="Page.aspx"> <system.web> <authorization> <allow users="*"/> </authorization> </system.web> </location>
并且放置在 <configuration>
标签内。 - user1468537objDataSet.Tables[0].Rows.Count > 0
进行检查。您可以将其放在“if”条件中,然后将用户名放入会话中,方法如下:Session["username"] = (这里是用户名变量)
。然后,创建两个主页面,一个用于仅允许已登录用户访问的页面,另一个可供任何人访问。在仅允许已登录用户访问的主页面中,您可以检查会话数据是否为空。如果为空,您可以将该人重定向回登录页面。LoggedIn主页面可以保持不变。如果您已经有了一个主页面,则可以复制它并添加该条件。如果您尚未实现主页面,则可以将该条件放在需要用户登录才能访问该页面的每个页面的页面加载中。因为您使用的是会话而不是cookie,所以对于用户来说,攻击此系统会更加困难。您需要覆盖您的 web.config 文件设置。
您需要创建一个文件夹并在该文件夹中创建另一个 web.config 文件。
然后将 Page.aspx 放入该文件夹中。
然后修改该 web.config 文件的代码如下:
<authentication mode="Forms">
</authentication>