Я проверяю мой Login()
метод в почтальоне, и он всегда возвращает false.
В моей БД есть пользователь с электронной почтой: 111@ukr.net, имя пользователя: 111@ukr.net, пароль: 111111.
Когда я использую CheckPasswordAsync
для этого пользователя, я получаю значение true.
Когда я пытаюсь передать объекту user вместо имени пользователя в параметре, я тоже получаю значение false.
My post post
[HttpPost]
public async Task<IActionResult> Login()//[FromBody]UserModel model)
{
var result = await _signInManager.PasswordSignInAsync
("111@ukr.net", "111111", false, false);
//var user = await _userManager.FindByEmailAsync("111@ukr.net");
//var result1 = await _userManager.CheckPasswordAsync
// (user, "111111");
//var result = await _signInManager.PasswordSignInAsync
// (user, "111111", false, false);
if (result.Succeeded == true)
{
return Ok(result);
}
else
{
return BadRequest(result);
}
}
В почтальоне я всегда получаю
{
"succeeded": false,
"isLockedOut": false,
"isNotAllowed": true,
"requiresTwoFactor": false
}
код из моего Startup.cs
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddDbContext<ApplicationContext>();
services.AddIdentity<User, IdentityRole>(opts =>
{
opts.SignIn.RequireConfirmedAccount = true;
opts.Password.RequiredLength = 6;
opts.Password.RequireNonAlphanumeric = false;
opts.Password.RequireLowercase = false;
opts.Password.RequireUppercase = false;
opts.Password.RequireDigit = false;
})
.AddEntityFrameworkStores<ApplicationContext>();
services.AddTransient<IUnitOfWork, EFUnitOfWork>();
services.AddTransient<ITestService, TestService>();
services.AddTransient<IQuestionService, QuestionService>();
services.AddTransient<IAnswerService, AnswerService>();
services.AddTransient<IUserService, UserService>();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseAuthentication();
app.UseAuthorization();
app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}