zoukankan      html  css  js  c++  java
  • 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 ConnectOAuth2.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/

  • 相关阅读:
    线性表的各种基本操作
    malloc&&free的系统运行机制及其源代码的理解
    剪枝的定义&&hdu1010
    hdu 1045
    hdu2094 stl之set的应用
    关联式容器的总结
    STL之map容器的详解
    2018-2019 ACM-ICPC 焦作赛区 部分题解
    2018-2019 ACM-ICPC 沈阳赛区 K. Let the Flames Begin
    2018-2019 ACM-ICPC 徐州区域赛 部分题解
  • 原文地址:https://www.cnblogs.com/Vincent-yuan/p/11030223.html
Copyright © 2011-2022 走看看