【问题标题】:Asp.net identity. Remember me, don't workAsp.net 身份。记住我,不要工作
【发布时间】:2021-11-24 23:01:53
【问题描述】:

我创建了一个新的 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-mvc identityserver4 asp.net-core-3.1


    【解决方案1】:

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

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

    Troy Hunt: How to build (and how not to build) a secure “remember me” feature

    【讨论】:

    • 如果选中“记住我”复选框,我如何在 chrome 中打开,显示窗口密码保存?
    • 与“记住我”复选框无关。 Chrome 或任何其他现代浏览器将在用户登录时提供保存凭据,并在用户返回登录页面时提供使用保存的凭据。你不需要做任何事情。
    • 问题是在浏览器中,“记住密码”窗口打开了一次(如果您选择记住或不记住)。必要时可以调用这个窗口吗?
    • @Denis 用户可以选择如何管理自己的密码。您的代码不能。
    猜你喜欢
    • 1970-01-01
    • 2013-12-13
    • 2010-10-05
    • 1970-01-01
    • 2011-06-11
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 2011-06-18
    相关资源
    最近更新 更多