首页 > 解决方案 > Asp.net 身份。记住我,不要工作

问题描述

我创建了一个新的 ASP.NET Core 3.1 MVC 项目。身份验证更改:在应用程序中存储用户帐户。

添加新的脚手架项目 -> 身份 -> 选择帐户\登录并注册

环境:

ConfigureServices(IServiceCollection services)
{
    services.AddDbContext<ApplicationDbContext>(options =>
          options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
 
    services.AddDefaultIdentity<IdentityUser>(options => options.SignIn.RequireConfirmedAccount = true)
                .AddEntityFrameworkStores<ApplicationDbContext>();
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    app.UseAuthentication();
    app.UseAuthorization();
}

接下来我跑了Update-database

用户注册成功。

但是,如果我使用“记住我”标志登录。然后下次我去日志页面。字段名称和密码为空。如何实现这些字段的自动填充?

标签: asp.net-core-mvcidentityserver4asp.net-core-3.1

解决方案


“记住我”选项确定身份验证 cookie 是否在当前浏览器会话之后持续存在。它不会 - 也不应该 - 尝试将您的凭据保存在任何地方。

所有现代浏览器都内置了密码管理器,并且有很多扩展可供第三方密码管理器使用。让浏览器负责记住登录详细信息。其他任何事情都将不可避免地变得非常不安全。

Troy Hunt:如何构建(以及如何不构建)安全的“记住我”功能


推荐阅读