专栏首页Vincent-yuanIdentity和IdentityServer的区别及联系

Identity和IdentityServer的区别及联系

关于Identity和IdentityServer初学的时候可能会有一些疑惑(虽然我也不是很精深吧),但是,这里说一下自己关于这两者的一些理解,如有错误,欢迎指正

总体上,

  • ASP.NET Core Identity提供了一个用来管理和存储用户账户的框架.
  • IdentityServer是一个中间件,它可以添加符合OpenID Connect和OAuth2.0的终端(endpoints)到一个任意的ASP.NET Core应用.

关于Identity

ASP.NET Core Identity 是用来在ASP.NET Core 应用中增加登录功能的。用户可以使用存储在Identity中的登录信息创建一个账户,或者他们可以使用第三方登录,支持的一些第三方登录:Facebook,Google,Microsoft Account,Twitter。当然,你可以集成一些国内的,QQ等

Identity可以被配置为使用SQL Server数据库存储用户名,密码,和其他信息。当然,你也可以使用另一个持久化存储,例如Azure Table Storage

ASP.NET Core Identity提供了一个用来管理和存储用户账户的框架,在ASP.NET Core应用中。当你在创建项目时,身份验证选择的是Individual User Accounts(个人用户账户),Identity被添加到了你的项目中。Identity默认使用的是Entity Framework Core 数据模型。

关于这个,可以看下这个

关于IdentityServer

下面的表,包含了一些开源的关于认证(authentication)的提供者,其中就包含IdentityServer

上面关于认证的一些开源项目各有特点

下面简单说下IdentityServer

IdentityServer是用来帮助公司使用.net建立Identity(标识,注意这里不是上面说的ASP.NET Core Identity框架,而是表示一种标识,即识别用户的), 和access control(权限控制)的, 包括单点登录(single sign-on),Identity 管理,授权(authorization)和api 安全. 基于成功的开源项目例如IdentityServer, 可以提供了设计方案的灵活性来满足你的要求.

IdentityServer是一个中间件,它可以添加符合OpenID Connect和OAuth2.0的终端(endpoints)到一个任意的ASP.NET Core应用.

典型的,你建立一个应用,这个应用包含一个登录和登出页面,并且IdentityServer中间件添加必要的协议到应用中,以便客户端应用可以使用这些标准的协议和这个协议交流。

参考资料:

https://identityserver4.readthedocs.io/en/latest/index.html

https://docs.microsoft.com/en-us/aspnet/core/?view=aspnetcore-2.2

https://docs.microsoft.com/en-us/aspnet/core/security/authentication/community?view=aspnetcore-2.2

https://identityserver.io/

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SQL Server表分区

    但是如果是分区表的话,表数据就会按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下由多个cpu进行处理。...

    Vincent-yuan
  • 得分

    给出一个由O和X组成的串(长度为1-80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0.

    Vincent-yuan
  • 排列

    用1,2,3,...,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求 abc:def:ghi =1:2:3。

    Vincent-yuan
  • ASP.NET Core 介绍和项目解读

    标签: ASP.NETCore 1. 前言 作为一个.NET Web开发者,我最伤心的时候就是项目开发部署时面对Windows Server上贫瘠的解决方案...

    潘成涛
  • Asp.NETCore轻松学系列阅读指引目录

    耗时两个多月,坚持写这个入门系列文章,就是想给后来者更好更快的上手体验,这个系列可以说是从入门到进阶,适合没有 .NETCore 编程经验到小白同学,也适合从 ...

    梁规晓
  • 每日一问第1期 | 截取字符串

    本问题比较简单,思路是遍历字符串中的字符,然后判断字符串中的字符如果是大写字母就变成了小写,如果是小写字母就变为大写。在Java中我们可以使用toCharArr...

    AlbertYang
  • Asp.Net Core-----简介与安装

    目录 Asp.Net Core-----简介与安装 Asp.Net Core简介 ? ASP.NET Core 是一个全新的开源、跨平台框架,可以用它来构建基于...

    kmonkey
  • 教你几招,快速创建 MySQL 五百万级数据,愉快的学习各种优化技巧

    如果你打算好好学习一下 MySQL,性能优化肯定是绕不过去一个问题。当你撸起袖子准备开始的时候,突然发现一个问题摆在眼前,本地数据库中没那么大的数据量啊,几条数...

    古时的风筝
  • 使用开源软件搭建属于自己的在线教育平台

    酷瓜云课堂,依托腾讯云基础服务架构,采用C扩展PHP框架Phalcon开发,致力开源网课系统,开源网校系统,开源在线教育系统。

    xiaochong0302
  • 译 | .NET Core 3.0 Preview 6 已发布

    今天,我们宣布 .NET Core 3.0 Preview 6。它的更新包括编译程序集以改进启动、使用链接器和 EventPipe 改进优化应用程序的大小。我们...

    Edi Wang

扫码关注云+社区

领取腾讯云代金券