IsPersistent not working PasswordSignInAsync Identity asp.net core(IsPersistent不工作PasswordSignInAsync标识ASP.NET核心)
本文介绍了IsPersistent不工作PasswordSignInAsync标识ASP.NET核心的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在我的网站中使用DotNet核心5和身份进行授权。我的身份有一个自定义类User。
这是我的ConfigureServices:
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"), o => o.UseQuerySplittingBehavior(QuerySplittingBehavior.SplitQuery)));
services.AddDefaultIdentity<User>(e =>
{
e.Password.RequireDigit = false;
e.Password.RequireLowercase = false;
e.Password.RequireNonAlphanumeric = false;
e.Password.RequireUppercase = false;
e.Password.RequireLowercase = false;
e.Password.RequiredUniqueChars = 2;
e.Password.RequiredLength = 5;
e.SignIn.RequireConfirmedPhoneNumber = false;
e.SignIn.RequireConfirmedEmail = false;
}).AddRoles<IdentityRole>().AddRoleManager<RoleManager<IdentityRole>>()
.AddDefaultTokenProviders().AddEntityFrameworkStores<ApplicationDbContext>();
services.AddControllersWithViews();
在我的配置中,我有:
app.UseAuthentication();
app.UseAuthorization();
这是我的登录控制器:
[ValidateAntiForgeryToken]
[HttpPost("/Login")]
public async Task<IActionResult> Login(LoginViewModel model)
{
if (ModelState.IsValid)
{
var result =
await _signInManager.PasswordSignInAsync(model.UserName, model.Password, model.RememberMe, true);
if (result.Succeeded)
{
return Redirect(model.ReturnUrl);
}
else
{
ModelState.AddModelError("", "Invalid Usename or password");
return View();
}
}
else
{
return View();
}
}
但即使Model.RememberMe为true,登录也不是持久的,用户需要每隔20分钟登录一次。
我如何解决此问题?
推荐答案
尝试设置Cookie的ExpireTimeSpan。下面是将ExpireTime设置为1天的示例:
services.ConfigureApplicationCookie(options =>
{
options.ExpireTimeSpan = TimeSpan.FromDays(1);
});
这篇关于IsPersistent不工作PasswordSignInAsync标识ASP.NET核心的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:IsPersistent不工作PasswordSignInAsync标识ASP.NET核心
猜你喜欢
- MoreLinq maxBy vs LINQ max + where 2022-01-01
- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01
- C# 中多线程网络服务器的模式 2022-01-01
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- C#MongoDB使用Builders查找派生对象 2022-09-04
- 输入按键事件处理程序 2022-01-01
