繁体   English   中英

用户单击按钮时重定向到登录页面

[英]Redirecting to login page when user clicks a button

我希望我的匿名用户能够在整个网站中导航,但如果他按下网站内的任何按钮,他应该被重定向到登录页面。 我该如何实现这一目标?

是否有我应该在FormAuthentication类中使用的函数?

不幸的是,您需要为此编写自己的自定义代码(当然,您可以使用ASP.NET基础结构)。 概要将是

  1. 配置表单身份验证,以便将所有页面标记为不安全(即允许匿名访问)
  2. 单击任何按钮,检查用户是否已通过身份验证,如果没有,则重定向到登录页面(使用FormsAuthentication.RedirectToLoginPage方法)

从更好的使用体验,我将生成一个java脚本,它将弹出登录提示(模式对话框),如果有必要,并通过ajax调用登录,然后重新提交形成。 使用诸如jquery之类的库,您可以在表单上附加必要的script-let到所有提交按钮(或标有特定类的按钮)。

您可以通过web.config中的某些设置来设置文件中的身份验证。

这将允许您导航所有页面。 现在,对于页面中的任何事件,例如按钮单击或其他内容,您可以编写一个函数,您可以在其中检查成员资格提供程序的用户身份验证和授权

using System.Security.Authentication

Public void IsValidUser()
{
   if(User.Identity.Name!=string.empty)
     Response.Redirect("~login.aspx");
   else
   {
      if(!User.Identity.IsAuthenticated)
        Response.Redirect("~login.aspx");
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM