-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Привет
Только начал изучать веб-разработку. Делаю приложение на Net.Framwork MVC, без Entity и без технологии CodeFirst.
Стал вопрос по авторизации и идентификации пользователей на сайте.
Набрел на статью Identity without EF. Попробовал, все работает! Респект!
Далее, создал свою БД, в ней создал таблицу с пользователями, в этой таблице поле PasswordHash, где хранятся пароли, как и в вашем примере - нехешированные текстовые значения.
В переменную, _sampleUsers в классе AccountService передаю всех пользователей из базы данных.
Все по прежнему работает, все ОК, но если изменить пароль с помощью менеджера ChangePassword, то в базу сохраняется уже хеш пароля. И после этого зайти в этот аккаунт уже нельзя. Только если при авторизации на сайте передавать хеш.
Понимаю, что в AccountController в методе Login [HttpPost] функция SignInManager.PasswordSignInAsync должна сопоставить, строку пароля переданную в из LoginViewModel.Password с хеш-паролем из PasswordHash. Но она возвращает результат SignInStatus.Failure
Подскажите как заставить SignInManager.PasswordSignInAsync работать с хеш-паролями?
Заранее спасибо.
aspyrin@i.ua
aspyrin77@gmail.com