ASp.net 标识 MVC5 中的登录尝试



在简单成员资格提供程序中,我们可以执行以下操作来跟踪无效登录尝试的次数。

WebSecurity.IsAccountLockedOut(userName, allowedPasswordAttempts, intervalInSeconds)

这在 ASP NET 标识 (http://www.asp.net/identity/overview/getting-started/introduction-to-aspnet-identity) 中不受支持。

我正在尝试在大约 5 次登录尝试后在无效登录尝试时显示 ReCaptcha。 我找不到ASP NET Identity MVC 5的任何示例。有什么帮助吗?

尝试将 ApplicationOAuthProvider 中的 GrantResourceOwnerCredentials 方法.cs更改为:

public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
    {
        T user = await _userManager.FindAsync(context.UserName, context.Password);
        if (user == null)
        {
            if (((int) HttpContext.Current.Session["Tries"]) >= 5)
            {
                context.SetError("maximum_tries", "You tried too many times");
                return;
            }
            context.SetError("invalid_grant", "The user name or password is incorrect.");
            HttpContext.Current.Session["Tries"] = ((int)HttpContext.Current.Session["Tries"]) + 1;
            return;
        }
        ClaimsIdentity oAuthIdentity = await _userManager.CreateIdentityAsync(user,
            context.Options.AuthenticationType);
        var ticket = new AuthenticationTicket(oAuthIdentity, GenerareProperties(user));
        context.Validated(ticket);
        ClaimsIdentity cookiesIdentity = await _userManager.CreateIdentityAsync(user,
            CookieAuthenticationDefaults.AuthenticationType);
        context.Request.Context.Authentication.SignIn(cookiesIdentity);
        HttpContext.Current.Session["Tries"] = 0;
    }

简单地说,我使用会话来跟踪用户写入无效密码的次数。如果会话值等于 5,则我们显示另一条消息。

最近公布了最新版本的 ASP.NET Identity:2.0.0-beta1,ASP.NET Identity使用了两个名为UserManager和UserStore的新类。

您可以从以下链接获取 ASP.NET 身份介绍:

http://www.c-sharpcorner.com/UploadFile/4b0136/getting-started-with-Asp-Net-identity-in-visual-studio-2013/

如果要通过使用 ASP.NET Identiy 应用注册和登录,以下链接很有帮助:

http://www.c-sharpcorner.com/UploadFile/4b0136/working-with-mvc-using-Asp-Net-identity-2-0-0-beta1/

http://www.c-sharpcorner.com/UploadFile/4b0136/working-with-new-Asp-Net-identity-2-0-0-in-Asp-Net-applicati/

相关内容

  • 没有找到相关文章

最新更新