官网:https://identityserver4.readthedocs.io/en/latest/quickstarts/2_interactive_aspnetcore.html
官网例子:https://github.com/IdentityServer/IdentityServer4/tree/main/samples/Quickstarts
is4,我的理解是,独立的用户认证授权框架,为多个不同系统,提供一个公共的认证授权服务,a系统,b系统,c系统都 在 is4服务器上“注册得有策略” ,其中密匙什么的,只有a、b、c系统与is4服务器是知道的,用户访问各人的系统时, 需要先到is4服务器去获得认证,获得了令牌后,带入头部,bearer认证,然后再去访问a b c的后端api。因为 a b c分别与is4之间是信任的,当 a的前端带带着头部认证进入a的后端api后,a系统后端就会验证这个头部是否是is4给的token,如果是伪造的就不行。当然应该不用每次都先要访问is4服务,肯定是可以设置token过期时间的,过期后,再去请求is4服务。其关键就在于,a b c 在 is4 上注册的认证策略,也不叫什么注册,就是互相通个气,几个关键文字只有a b c与is4服务器知道就行了,背后的加密算法,最后算出来的token,只有得到is4的一些关键信息之后才能解析成功。官网的例子里,没有在api端写密匙,而是给的一个is4服务的url地址,应该是api在验证token时,还去请求了这个url的;按我的感觉,直接写上is4上给出的密匙,验证token的时候,不再去访问那个url地址应该是可行的吧,就想JWT认证类似。
或者这个url地址是映射到某个在a服务器的文件的,如果文件存在,就不去访问is4服务器了,然后,token的认证就靠这个文件,依稀记得官网上是提了一下这个文件的。
来个官网的图,就更清楚了。

a b c 系统之间还能通过is4实现互相登陆,只需要其中一个系统中有注册的用户,比如a系统,在is4上获得了认证后,就可以在 b c系统上登陆了,b c 系统缺少的用户的信息可以通过token传送,实现的时候,就把is4上的用户身份信息保存在各自的系统。设计系统的时候,感觉可以把 a b c 系统 公用的用户信息设计到is4的服务器上。

jwt认证和is4 .net core 也有一套接口,jwt和is4分别实现了这样的接口,所以看.net core的代码 这两个东西代码都相似。

最后,我联想到 https协议的加密,网站管理人员在ca机构注册了,给你发个密匙,生成一个公共证书。也是靠个证书,和私匙完成加密的。我浏览器请求网址时,首次访问,会提示安装证书,安装后,访问你的网站,其内容就加密了,我服务器的私匙就可以解密这些信息,也只能是这个密匙能解密。

我对IdentityServer4的初步了解的更多相关文章

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

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

  2. .net core 3.0 搭建 IdentityServer4 验证服务器

    叙述 最近在搞 IdentityServer4  API接口认证部分,由于之前没有接触过 IdentityServer4 于是在网上一顿搜搜搜,由于自己技术水平也有限,看了好几篇文章才搞懂,想通过博客 ...

  3. IdentityServer4系列 | 资源密码凭证模式

    一.前言 从上一篇关于客户端凭证模式中,我们通过创建一个认证授权访问服务,定义一个API和要访问它的客户端,客户端通过IdentityServer上请求访问令牌,并使用它来控制访问API.其中,我们也 ...

  4. IdentityServer4系列 | 快速搭建简易项目

    一 .前言 从上一篇关于 常见术语说明中,主要是对IdentityServer4的说明,以及其中涉及常见的术语的表述说明,包括对身份认证服务器.用户.客户端.资源以及各个令牌等进行对比区别说明. 而在 ...

  5. IdentityServer4 之Client Credentials走起来

    前言 API裸奔是绝对不允许滴,之前专门针对这块分享了jwt的解决方案(WebApi接口裸奔有风险):那如果是微服务,又怎么解决呢?每一个服务都加认证授权也可以解决问题,只是显得认证授权这块冗余,重复 ...

  6. IdentityServer4之Authorization Code(授权码)相对更安全

    前言 接着授权模式聊,这次说说Authorization Code(授权码)模式,熟悉的微博接入.微信接入.QQ接入都是这种方式(这里说的是oauth2.0的授权码模式),从用户体验上来看,交互方式和 ...

  7. 移动端之Android开发的几种方式的初步体验

    目前越来越多的移动端混合开发方式,下面列举的大多数我都略微的尝试过,就初步的认识写个简单的心得: 开发方式 开发环境 是否需要AndroidSDK 支持跨平台 开发语言&技能 MUI Win+ ...

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

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

  9. CSharpGL(29)初步封装Texture和Framebuffer

    +BIT祝威+悄悄在此留下版了个权的信息说: CSharpGL(29)初步封装Texture和Framebuffer +BIT祝威+悄悄在此留下版了个权的信息说: Texture和Framebuffe ...

  10. Android自定义View初步

    经过上一篇的介绍,大家对于自定义View一定有了一定的认识,接下来我们就以实现一个图片下显示文字的自定义View来练习一下.废话不多说,下面进入我们的正题,首先看一下我们的思路,1.我们需要通过在va ...

随机推荐

  1. 多线程-多个子线程执行结果插入List集合

    业务场景:将多个子线程的执行结果存入List,但是总会出现List集合的长度小于子线程的执行数的情况 1.错误示例(多个线程同时操作同一个List对象,List是线程不安全) package unit ...

  2. HarmonyOS如何高效上架原子化服务?这个平台帮你搞定!

    以往HarmonyOS应用和原子化服务都是在AGC(App Gallery Connect)上架,二者的上架流程一样.但应用的形态更加复杂庞大,上架时有很多必填字段,审核标准也相对复杂,而原子化服务的 ...

  3. DevEco Studio新特性分享-跨语言调试,让调试更便捷高效

     原文:https://mp.weixin.qq.com/s/JKVLQXu1z1zAoF5q49YEGg,点击链接查看更多技术内容.   HUAWEI DevEco Studio是开发Harmony ...

  4. 重新点亮shell————测试命令[六]

    前言 我们写好脚本之后希望有一个测试. 正文 介绍一下exit,如果exit 0,那么表示正常退出. 如果exit 10,也就是非0,那么就是异常退出. 然后这个test 标准为[]和 [[]]这样子 ...

  5. 将项目封装进docker进行迁移和使用

    首先要理解docker的基本使用,本文不做过多阐述,博主也对docker没有了解透彻. 这里列一下docker的基本命令: docker info # 查看docker信息 docker -v # 查 ...

  6. background-blend-mode

    由于 mix-blend-mode 这个属性的强大,很多应用场景和动效的制作不断完善和被发掘出来,遂另起一文继续介绍一些使用 mix-blend-mode 制作的酷炫动画. CSS3 新增了一个很有意 ...

  7. 力扣605(java&python)-种花问题(简单)

    题目: 假设有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去. 给你一个整数数组  flowerbed 表示花坛,由若干 0 和 1 ...

  8. 如果千百年前有视觉AI算法,世界将会是什么样的光景呢?

    视觉AI算法在近些年取得了一定的突破,被应用在了越来越多的地方,我相信距离真正的AI普及这个大目标也越来越近了.我时常在想假如古代也有视觉AI算法,那是不是很多故事的结局都将被改写?<伯乐相马& ...

  9. 阿里云CDN产品经理陈章炜:边缘创新技术和落地实践

    简介: CDN除了加速外,不断被赋予更多价值.在阿里云CDN推出的<极速奔跑吧 2021>首场直播中,阿里云架构师和产品经理不仅对近期阿里云发布的CDN产品最佳实践图进行了详细解读,还对C ...

  10. 喜马拉雅 Apache RocketMQ 消息治理实践

    ​简介:本文通过喜马拉雅的RocketMQ治理实践分享,让大家了解使用消息中间件过程中可能遇到的问题,避免实战中踩坑. 作者:曹融,来自喜马拉雅,从事微服务和消息相关中间件开发. ​ 本文通过喜马拉雅 ...