您的位置:首页 >ASP.NET Core Identity认证入门教程
发布于2025-12-10 阅读(0)
扫一扫,手机访问
ASP.NET Core 中最推荐的用户认证方式是使用微软官方内置的 Identity 框架,它开箱即用,支持注册、登录、角色管理、密码重置和双因素认证等功能,并通过 UserManager、SignInManager 等核心服务实现安全可控的用户生命周期管理。

ASP.NET Core 中实现用户认证,最常用、最推荐的方式就是使用内置的 Identity 框架。它不是第三方库,而是微软官方提供的、开箱即用的用户管理解决方案,支持注册、登录、角色、密码重置、双因素认证等核心功能。
新建 ASP.NET Core Web App(MVC 或 Razor Pages)时,在“身份验证类型”中选择“个人账户”(Individual User Accounts),Visual Studio 会自动为你配置好 Identity(基于 EF Core + SQLite/SQL Server)。
如果你用 CLI 创建项目,可加参数:
dotnet new mvc -au Individual
这样生成的项目已包含:
• 用户注册/登录/登出页面(Account 控制器或 Pages/Account)
• ApplicationDbContext 继承自 IdentityDbContext
• ApplicationUser 类(可扩展的用户模型)
• 默认数据库迁移脚本
Identity 不是黑盒,关键类有这几个:
IdentityUser,是你自己的用户实体(可加 Phone、Avatar 等字段)IdentityDbContext<ApplicationUser>,负责与数据库交互这些服务在 Program.cs 中通过 AddDefaultIdentity<ApplicationUser>() 自动注册,无需手动 AddScoped。
如果项目没带 Account 页面(比如 API 项目或空模板),你可以手动添加:
Program.cs 中确保已调用:builder.Services.AddDefaultIdentity<ApplicationUser>(options => options.SignIn.RequireConfirmedAccount = false).AddEntityFrameworkStores<ApplicationDbContext>();Configure 方法里启用认证中间件:app.UseAuthentication();
app.UseAuthorization();(顺序不能错)UserManager<ApplicationUser> 和 SignInManager<ApplicationUser> 即可调用 CreateAsync、CheckPasswordSignInAsync 等方法例如登录逻辑片段:
var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false);
if (result.Succeeded) { return RedirectToAction("Index", "Home"); }
Identity 灵活,大部分定制只需改配置或继承:
Program.cs 配置 IdentityOptions:options.User.RequireUniqueEmail = true;
options.User.AllowedUserNameCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@.-_+";options.Password.RequireDigit = true;
options.Password.RequiredLength = 8;IdentityUser 加 PhoneNumber 字段,并在注册逻辑中设置 user.PhoneNumber = model.Phone,再启用短信验证(需集成 SMS 服务)[Authorize(Roles = "Admin")] 或策略授权(Policy-based Authorization)基本上就这些。Identity 入门不难,关键是理解 UserManager / SignInManager 的职责边界,别试图绕过它们自己写 Cookie 或查数据库——框架已经帮你兜底了。
上一篇:百度输入法图标消失怎么恢复
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9