1、开篇

首先明确一点,文章只是学习过程的笔记,参考目前网络上的博客,主要便于自己加深理解,同时也督促自己持续学习,没有其他目的。感谢网上资源的提供者。

IdentityServer是为ASP.NET Core2.x系列打造的一款基于OpenID Connect和OAnth2.0认证框架。其特点或者说是用途有以下几点:

认证服务

可以为网站、本地应用、移动端、服务等做集中的登录逻辑和工作流控制(未接触)

单点登录

在各种类型的应用中实现单点登录登出(SSO)

API访问控制

为客户端颁发access token,比如服务之间的通讯,网站应用、本地应用或者移动应用等

2、 专业术语

身份认证服务器(IdentityServer)是基于OpenId Connect协议标准的身份认证和授权程序,在软件应用中为客户端颁发令牌并用于安全访问。

可以实现的功能:
  • 保护你的资源

  • 使用本地账户或通过外部身份提供程序对用户进行身份验证

  • 会话管理和单点登录

  • 管理和验证客户机

  • 向客户发出标识和访问令牌

  • 验证令牌

需要了解几个专业术语:

用户(User)

用户是使用已注册的客户端(在IdentityServer中已经注册)访问资源的人

客户端(Client)

客户端就是从IdentityServer请求令牌的软件(可以简单理解为一个app),既可以通过身份认证领来来验证识别用户身份,又可以通过授权令牌来访问服务器的资源。但是客户端首先必须在申请令牌前已经在IdentityServer服务中注册过。

客户端可以是,web应用程序、app或者桌面应用程序,SPA,服务器进程等

资源(Resources)

资源就是你想用IdentityServer保护的东西,可以是用户的身份数据或者api资源

每个资源都有一个唯一的名称,客户端使用这个唯一的名称来确定想访问哪一个资源(在访问之前,实际IdentityServer服务端已经配置好了那个客户端可以访问哪个资源,所以你不必理解为客户端只要指定名称他们就可以随便访问任何一个资源)。

用户的身份信息实际由一组claim组成,例如姓名或者邮件等都会包含在身份信息中(将来通过Identityserver校验后都会返回给被调用的客户端)。

API资源及时客户端需要调用的功能(通常以Json或者xml的形式返回给客户端,例如webapi,webservice,wcf),这里我们习惯使用json形式,通过webapi来建立模型。

身份令牌(Identity Token)

身份令牌指的就是对认证过程的描述。它标识某个用户的主要身份信息(claim)和该用户的认证时间和认证方式。当然也可以包含额外身份信息,根据开发具体情况而定。

访问令牌(Access Token)

访问令牌指的是客户端访问api资源。客户端请求访问令牌,然后使用令牌来访问api资源。 访问令牌包含有关客户端和用户的信息(如果存在)。 API使用该信息来授权访问其数据。

IdentityServer4 中文文档与实战

IdentityServer4 知多少

IdentityServer4[1]:开篇的更多相关文章

  1. .NET Core IdentityServer4实战-开篇介绍与规划

    一.开篇寄语 由于假期的无聊,我决定了一个非常有挑战性的活动,也就是在年假给大家带来一个基于OAuth 2.0的身份授权框架,它就是 IdentityServer4 ,如果没有意外的话,一定可以顺利的 ...

  2. 从壹开始 [ Id4 ] 之一║ 授权服务器 IdentityServer4 开篇讲&计划书

    前言 哈喽大家周四好!时间过的很快,现在已经是三月份了,我的 IdentityServer4 教程也拖了一定的时间了,正好最近有精力学新东西了,主要中间被小伙伴要求写一个管理后台,目前1.0已经上线( ...

  3. 【.NET Core项目实战-统一认证平台】第九章 授权篇-使用Dapper持久化IdentityServer4

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章介绍了IdentityServer4的源码分析的内容,让我们知道了IdentityServer4的一些运行原理,这篇将介绍如何使用d ...

  4. 【.NET Core项目实战-统一认证平台】第八章 授权篇-IdentityServer4源码分析

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章我介绍了如何在网关上实现客户端自定义限流功能,基本完成了关于网关的一些自定义扩展需求,后面几篇将介绍基于IdentityServer ...

  5. IdentityServer4 使用OpenID Connect添加用户身份验证

    使用IdentityServer4 实现OpenID Connect服务端,添加用户身份验证.客户端调用,实现授权. IdentityServer4 目前已更新至1.0 版,在之前的文章中有所介绍.I ...

  6. 一年之计在于春,2015开篇:PDF.NET SOD Ver 5.1完全开源

    前言: 自从我2014年下半年到现在的某电商公司工作后,工作太忙,一直没有写过一篇博客,甚至连14年股票市场的牛市都错过了,现在马上要过年了,而今天又是立春节气,如果再不动手,那么明年这个无春的年,也 ...

  7. ASP.NET Web API 开篇示例介绍

    ASP.NET Web API 开篇示例介绍 ASP.NET Web API 对于我这个初学者来说ASP.NET Web API这个框架很陌生又熟悉着. 陌生的是ASP.NET Web API是一个全 ...

  8. Entity Framework入门系列(1)-扯淡开篇

    这是我在Cnblogs上的第一个系列,但愿能坚持下去: 惯例索引 Entity Framework入门系列(1)-开篇兼索引: Entity Framework入门系列(2)-初试Code First ...

  9. IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习保护API

    IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习之保护API. 使用IdentityServer4 来实现使用客户端凭据保护ASP.N ...

随机推荐

  1. ASP.NET Core教程:ASP.NET Core 程序部署到Windows系统

    一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core We ...

  2. 信号量-Semaphore、SemaphoreSlim

    核心类:Semaphore,通过int数值来控制线程个数. * 通过观察构造函数 public Semaphore(int initialCount, int maximumCount);: * in ...

  3. sparksql的三种join实现

    join 是sql语句中的常用操作,良好的表结构能够将数据分散在不同的表中,使其符合某种范式,减少表冗余,更新容错等.而建立表和表之间关系的最佳方式就是Join操作. sparksql作为大数据领域的 ...

  4. VPS系统后台性能优化实战

    作者: 刘用, 现任新东方APP团队高级软件工程师 2019年开始,新东方APP团队启动了长达半年以上的稳定性建设工作,为什么稳定性如此重要?因为随着每年30%以上的高速增长,现有的后端服务完全扛不住 ...

  5. APMServ中Apache启动失败的原因

    APMServ中Apache启动失败绝大多数的情况是因为APMServ得路径出错和80端口被占用,也有可能您使用的是WIN8系统,下面SJY根据不同情况告诉大家如何解决APMServ中Apache启动 ...

  6. BUUCTF-[CISCN2019 华北赛区 Day1 Web5]CyberPunk

    BUUCTF-[CISCN2019 华北赛区 Day1 Web5]CyberPunk 看题 看源码有提示?file=? 文件包含漏洞,可以利用这个漏洞读取源码. 分析 index.php?file=p ...

  7. 基于Linux系统的网络服务——高速缓存DNS及企业级域名解析服务

    1.DNS域名系统 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数 ...

  8. Mac shell 调节音量

    $ osascript -e 'get volume settings' $ osascript -e 'output volume of (get volume settings)' $ osasc ...

  9. spring boot 系列之八:SpringBoot处理定时任务

    项目经常会用到定时任务,springboot自然是可以通过整合相关组件来实现的. 目前常用的定时任务的实现有两种: 通过spring 自带的定时器任务@Schedule来实现 通过Quartz来实现 ...

  10. ELK数据迁移,ES快照备份迁移

    通过curl命令或者kibana快照备份,恢复的方式进行数据迁移 环境介绍 之前创建的ELK 因为VPC环境的问题,需要对ELK从新部署,但是还需要保留现有的数据,于是便有了这篇文档. 10.0.20 ...