视频地址:https://www.bilibili.com/video/av42364337 语雀地址:https://www.yuque.com/yuejiangliu/dotnet/solenovex-identityserver4 github代码地址:https://github.com/solenovex/Identity-Server-4-Tutorial-Demo-Code Identity Server 4 原理和实战(完结)_----选看 OAuth 2.0 简介(上) Ide…
创建项目 dotnet new -i IdentityServer4.Templates 多出来的这些模板 adminUI用来测试,想要用再生产环境,需要交钱 结合core的 Identity来使用 使用EF core把一些数据持久化到数据库里了 内存来存储信息 创建项目 创建一个内存里的项目叫做 Idp VS打开项目 直接运行: 这里看起来有点乱,这里显示注释掉 把上面这三被注释的代码放开注释: 这里添加用户,添加了一个测试用户 查看TestUser的源码 他是在代码里写死了两个用户; 往内存…
Code在Oauth2.0和OpenId Connect里面分别叫做不同的名字 OAuth只介绍了如何授权.没有介绍如何身份认证. OpenId Connect:既规定了怎么授权,也规定了怎么身份认证 OpenlD Connect是在OAuth2.0身份证协议之上做的身份认证协议,它里面规定了三种flow分别是 Authorization Code Flow.Implicit Flow. Hybird Flow 今天主要讲Authoriztion Code, OAuth2.0里面的流程图 Ope…
https://www.yuque.com/yuejiangliu/dotnet/cg95ni 代表资源所有者的凭据 授权 Authorization Grant 授权是一个代表着资源所有者权限的凭据,它可以被客户端应用来获取 Access Token. OAuth 2.0 里面定义了 4 种类型的授权,分别是: Auhtorization Code 授权码 Implicit Resource Owner Password Credentials Client Credentials OAuth…
idp授权资源的添加 如果下面哪个客户端想访问api2这个资源的话 就把它写上scope里面就可以了 nodeJS的客户端 python的库 MVC客户端分别访问API和API2 python客户端演示 登陆成功 mvcClient Hybird Client Angular 这就是单点登陆…
https://material.angular.io/ 第一部是安装angular cli --prefix=ac:前缀 --routing:默认使用路由 style=scss:样式使用scss --dry -run表示模拟这个流程,但是实际上不会生成这些文件 不模拟就是把后面的  --dry -run去掉 调整文字的大小 -o就是打开浏览器 使用npm run start也是可以的 出现这个画面就是正常的 使用官方的ui 安装依赖的一些库 另外一种安装的方法,安装依赖 还会对项目有一些配置…
服务端修改token的过期使劲为60秒 过期了 仍然还能获取到api1的资源 api1,设置每隔一分钟就验证token 并且要求token必须要有超时时间这个参数, 1分钟后提示超时,两边都是一分钟,可能会有时间差 官方文档refresh的协议 更新token的值 判断并刷新token的值 运行起来有个错误 这里要加上地址 清理cookie,再重新登陆 1分钟后走到refreshtoken的方法里 然后就获取到了一个新的AccessToken 关于refresh token 官方的示例有很多的写…
https://www.yuque.com/yuejiangliu/dotnet/asu0b9 端点 Endpoint Authorization Endpoint,授权端点 在浏览器里面和用户交互 资源所有者通过该端点对客户端应用进行授权操作 Token Endpoint,Token 端点 客户端应用向该端点展示它的授权(或 Refresh Token)以获得 Access Token 六种错误类型: invalid_request invalid_client(401) invalid_gr…
4分50 建立客户端 不需要身份认证 客户端叫做HybirdClient 配置IdentityServer服务端,先把客户端添加上 把userClaims添加到token里面 然后运行服务端就可以了 客户端配置 和之前的配置差不多,先把代码贴上 和之前的区别可能是这里的相应类型有区别 启动地址端口改成 7000端口 HomeController需要处理,首先需要登陆 服务端的端口也需要改成7000 运行测试 一运行客户端就会跳转到授权服务器 登陆,请求权限 成功跳转 访问被保护资源 之前把之前的…