这边文章很浅,主要是为了能快速了解ASP.NET Core 身份验证,官方文档看起来还是有点不好懂。主要是讲标识(Identity标识(
身份验证是确定用户身份的过程。在 ASP.NET Core 中,身份验证由身份验证服务 IAuthenticationService 负责,而它供身份验证中间件使用。 身份验证服务会使用已注册的身份验证处理程序来完成与身份验证相关的操作。
Identity标识
1,一个 API,它支持用户界面 (UI) 登录功能。 自己理解: “ASP.NET Core Web 应用”项目模板,选择身份认证,自动生成 ASP.NET Core Identity作为Razor类库提供的界面
2,管理用户、密码、配置文件数据、角色、声明、令牌、电子邮件确认等等。 自己理解:一堆代码,可以配置各种登录,身份验证相关的东西。不用自己写逻辑实现这些了。
注意
1,这篇文章中默认options.SignIn.RequireConfirmedAccount=true.需要确认电子邮件才能登录。未确认的话,登录提示“Invalid login attempt”。这里改成false就可以了注册后直接登录了
2,没有生成
/Identity/Account/Login
/Identity/Account/Logout
/Identity/Account/Manage
需要构建 Register、Login、LogOut 和 RegisterConfirmation 的基架时,选择对应的文件才会创建。
实例代码再 https://github.com/dotnet/AspNetCore.Docs.git库下aspnetcore\security\authentication\identity\sample\WebApp3项目,使用localdb能直接用。