ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 14. ASP.NET Core Identity 入门

Posted wangjunwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 14. ASP.NET Core Identity 入门相关的知识,希望对你有一定的参考价值。

默认的身份认证好授权系统
技术图片

技术图片
UserManager用来操作用户的类,
技术图片
Singi用来身份认证的
技术图片
添加AccountController
技术图片
先声明SignInManager和UserManager这两个服务
技术图片
快捷键Ctrl+.
技术图片
两个都需要分别进行Ctrl+.快速的生成
技术图片
创建登陆的Action Login
技术图片
建立View
技术图片
创建LoginViewModel
技术图片
主要是用户名和密码两个字段
技术图片

技术图片
登陆的逻辑
技术图片
注册的逻辑
技术图片
技术图片
技术图片
退出的逻辑
技术图片
创建regiser的视图页面
技术图片
在_Lauout里面添加了注册和登陆的链接

技术图片
点击注册发现报错了。没有注册服务

注册服务

这里按照官方文档来就可以了
技术图片
这里么有ApplicationDbContext
技术图片

这里修改为IdentityContext
技术图片
先进行数据迁移
技术图片
报错,项目里面多余一个DbContext。一个是自己的DbConext 一个是Identity的DbContext
技术图片
所以需要指定具体的DbContect
技术图片
技术图片
注册服务的时候,指明迁移的类库名称
技术图片
再次尝试成功
技术图片

技术图片

技术图片
上面只是配置了DbConext,还需要注册IdentityUser的服务
技术图片
技术图片
前面多加了一个叹号
技术图片
密码严格要求了
技术图片
参考官方文档:把这块复制过去进行修改

技术图片
技术图片
判断用户登陆成功后就不再显示,注册和登陆的按钮,在View页面注册ItentityUser

技术图片
技术图片

技术图片
运行页面并不好用,没有使用中间件
技术图片
登陆成功后
技术图片

授权

添加一个学生,要求只有登陆的用户才可以进去添加
授权使用Authorize这个属性,这样就只有登陆的用户才可以访问这个Create页面
技术图片
这个标签可以作用于Controller也可以作用于action,这里我们先作用于Create的两个Action就可以了
技术图片
Authorize属性也可以加一些参数。。。、这里展示先不加
测试页面。
技术图片
需要一个LoginPartial页面,一旦没有权限就会跳转到这个页面。这里我们先不做,
技术图片
 

以上是关于ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 14. ASP.NET Core Identity 入门的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 17. 基于Claim和Policy的授权 上

ASP.NET Core 配置 MVC - ASP.NET Core 基础教程 - 简单教程,简单编程

基础教程:ASP.NET Core 2.0 MVC筛选器

[MVC&Core]ASP.NET Core MVC 视图传值入门

视频ASP.NET Core MVC 中级教程 - 04. 中间件

[MVC&Core]ASP.NET Core MVC 视图传值入门