WedX - журнал о программировании и компьютерных науках

Попытка входа в ASp.net Identity MVC5

В Simple Membership Provider мы могли бы сделать что-то вроде ниже, чтобы отслеживать количество недопустимых попыток входа в систему.

WebSecurity.IsAccountLockedOut(userName, allowedPasswordAttempts, intervalInSeconds)

Это не поддерживается в ASP NET Identity (https://www.asp.net/identity/overview/getting-started/introduction-to-aspnet-identity)

Я пытаюсь отобразить ReCaptcha при неудачной попытке входа после примерно 5 попыток входа. Я не могу найти ни одного примера из ASP NET Identity MVC 5. чем помочь?


Ответы:


1

Попробуйте изменить метод GrantResourceOwnerCredentials внутри ApplicationOAuthProvider.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, то мы показываем другое сообщение.

01.01.2014
  • я даже не вижу этот файл ApplicationOAuthProvider.cs в шаблоне MVC5. я это новый файл мне нужно создать? 02.01.2014
  • @JustinHomes Можете ли вы показать мне свой Startup.Auth.cs (в папке App_Start) и AccountController.cs? 02.01.2014
  • Кажется, я не могу получить доступ к HttpContext.Current.Session в этой функции, есть ли что-то еще, что вам нужно сделать, чтобы разрешить это? 23.03.2014

  • 2

    Недавно была представлена ​​последняя версия ASP.NET Identity: 2.0.0-beta1, и два новых класса с именами UserManager и UserStore используются ASP.NET Identity.

    Вы можете получить введение в ASP.NET Identity по следующей ссылке:

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

    Если вы хотите применить регистрацию и вход с помощью ASP.NET Identiy, вам будут полезны следующие ссылки:

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

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

    24.02.2014
    Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]