加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET会员密码到期

发布时间:2020-12-15 18:39:22 所属栏目:asp.Net 来源:网络整理
导读:我正在使用ASP.NET成员身份验证我的网络应用程序。这对我来说很好。我现在必须实现密码到期。 如果密码已经过期,则用户应该被重定向到ChangePassword屏幕,不应该允许访问应用的任何其他部分而不用更改密码。 有很多aspx页面。如果密码已过期,一个解决方案
我正在使用ASP.NET成员身份验证我的网络应用程序。这对我来说很好。我现在必须实现密码到期。

如果密码已经过期,则用户应该被重定向到ChangePassword屏幕,不应该允许访问应用的任何其他部分而不用更改密码。

有很多aspx页面。如果密码已过期,一个解决方案可能是重定向到每个aspx的ChangePassword屏幕OnInit。是否有任何其他解决方案或建议。

谢谢,
ai

解决方法

再到 csgero’s answer,我发现你不需要在ASP.Net 2.0(3.5)中明确地添加一个这个事件的事件处理程序。

您可以在global.asax中简单地创建以下方法,并将其连接起来:

void Application_PostAuthenticateRequest(object sender,EventArgs e)
{
    if (this.User.Identity.IsAuthenticated)
    {
        // get user
        MembershipUser user = Membership.GetUser();

        // has their password expired?
        if (user != null
            && user.LastPasswordChangedDate.Date.AddDays(90) < DateTime.Now.Date
            && !Request.Path.EndsWith("/Account/ChangePassword.aspx"))
        {
            Server.Transfer("~/ChangePassword.aspx");
        }
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读