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. java关键字native、static、final详解

    native: native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中.Java语言本身不能对操作系统底层进行访问和操作,但是可 ...

  2. .Net 之进制转换 余位补全

    十进制转二进制 Convert.ToString(n, 2) 其中 n -- 源类型 可以是shrot Byte Int Uint Long 2 -- 目标位 可以是2,8,10,16 同理十进制转1 ...

  3. 【C++】 四种强制类型转换(static_cast 与 dynamic_cast 的区别!)

    强制类型转换 1. static_cast 2. dynamic_cast 3. const_cast 4. reinterpret_cast 5. 为什么要需要四种类型转换? 1. static_c ...

  4. Servlet的类加载器

    Java虚拟机中内嵌的一个类加载器:Bootstrap,属于Java虚拟机的内核,负责加载Java核心包中的类(即rt.jar文件中的类):Java核心包中有另外两个类加载器:ExtClassLoad ...

  5. php 字符串分割输出

    分割字符串 //利用 explode 函数分割字符串到数组 复制代码代码如下:<?php $source = "hello1,hello2,hello3,hello4,hello5&q ...

  6. linux centos7 控制台下的一些操作

    2021-08-20一. 快捷键1. Ctrl+d       退出当前用户2. Ctrl+Insert  复制3. Shift+Insert 粘贴4. Ctrl+l       清屏二. 基础命令1 ...

  7. 20210824 Prime,Sequence,Omeed

    考场 T1 貌似是 luogu 上原题 T2 计数,想起了这题和这题,但没有 \(n^2\) 一档的分...准备打个表 T3 期望 DP,但暴力是 \(O(qn)\) 的,发现 \(combo\) 的 ...

  8. 《openssl编程》:第一章基础知识

    第一章 基础知识 1.1 对称算法 对称算法使用一个密钥.给定一个明文和一个密钥,加密产生密文,其长度和明文大致相同.解密时,使用读密钥与加密密钥相同. 对称算法主要有四种加密模式: (1) 电子密码 ...

  9. C# List集合类常用操作 (一)

    所有操作基于以下类 class Employees { public int Id { get; set; } public string Name { get; set; } public stri ...

  10. Sentry Web 前端监控 - 最佳实践(官方教程)

    系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...