强制客户端从 ASP 中的特定入口点进入站点

本文关键字:入口 站点 客户端 ASP | 更新日期: 2023-09-27 18:32:46

我不太确定如何形成这个问题的搜索词,但我并没有真正找到我要找的东西,所以这里是:

我将如何强制客户仅从某些入口点进入我网站的某些部分?例如,我概述了我工作的公司目前正在进行的活动,但我只希望用户能够通过按"添加新活动"按钮进入负责添加新活动的页面。

这样您就不能仅通过键入URL来进入该页面。如何在ASP中实现这一点?

强制客户端从 ASP 中的特定入口点进入站点

我们在现实世界中这样做的方式相同,身份验证,授权。每当访问者查看您网站上的页面时。他们正在发送HTTP请求,以及该请求,您将收到您的Web应用程序在其计算机上设置的任何cookie,这些cookie在以前的任何访问中都会发生,这发生在每个请求上。

可以使用 cookie 识别经过身份验证的用户,通常发生的事情是......登录后,服务器将设置包含其身份的cookie。因此,当授权用户请求查看"foo.com/topsecret"并且服务器收到该请求时,服务器会解密存储在 cookie 上的数据并检查其是否被篡改......如果一切都好...已授予访问权限...如果没有...然后它只是被拒绝。

在您的情况下,您可以使用会话变量,并在登录时检查所有权限。

在您的页面中,您可以添加签入Page_Load如下所示:

User myUser = (User)Session["User"];
string page = Path.GetFileName( Request.Url.AbsolutePath );
if(!myUser.pageSee.Contains(page)){
  Response.Redirect("home.aspx");
}

你创建一个用户类,为您可以查看的页面创建一个字符串列表
您还可以为单个div 添加权限。