引用和自包含令牌(Reference Tokens and Introspection)
访问令牌可以有两种形式:自包含的和引用的。
自包含令牌(Self-contained tokens):
使用受保护的、有时间限制的数据结构,该结构包含元数据,并声明通过网络传递用户或客户机的身份。一种流行的格式是JSON Web令牌(JWT)。自包含令牌的接收方可以通过检查签名、预期的发布方名称和预期的受众或范围来在本地验证令牌。
引用令牌(Reference tokens):
(有时也称为不透明令牌)只是存储在令牌服务上的令牌的标识符。令牌服务将令牌的内容存储在某个数据存储中,将其与一个不可猜测的id关联起来,并将id传递回客户机。然后,接收者需要打开到令牌服务的后端通道,将令牌发送到验证端点,如果有效,则检索作为响应的内容。
引用标记的一个很好的特性是您可以对它们的生命周期进行更多的控制。如果自包含令牌在过期之前难以撤销,则引用令牌仅在其存在于STS数据存储中时有效。这允许出现以下情况:
- 在“紧急”情况下撤销令牌(丢失电话、网络钓鱼攻击等)
- 在用户注销时间或应用程序卸载时使令牌无效
- 引用令牌的缺点是需要从资源服务器到STS的反向通道通信。
从网络的角度来看,这可能是不可能的,有些人还担心额外的往返和STS上的负载。使用缓存可以很容易地修复后两个问题。
我把过去几年的这个概念介绍给我的许多客户,他们喜欢的架构变得越来越像这样:
如果令牌离开了公司的基础设施(例如浏览器或移动设备),则使用引用令牌在整个生命周期内完全控制。如果令牌仅在内部使用,则自包含令牌是可以的。
翻译原文地址:
https://leastprivilege.com/2015/11/25/reference-tokens-and-introspection/
引用和自包含令牌(Reference Tokens and Introspection)的更多相关文章
- 【Java面试题】12 内部类可以引用它的包含类的成员吗?有没有什么限制?
完全可以.如果不是静态内部类,那没有什么限制! 如果你把静态嵌套类当作内部类的一种特例,那在这种情况下不可以访问外部类的普通成员变量,而只能访问外部类中的静态成员,例如,下面的代码: class Ou ...
- Windows server 2008 R2 桌面服务器管理器打开提示:试图引用不存在的令牌
来源:https://social.technet.microsoft.com/Forums/zh-CN/90f376a3-2b52-46c1-be34-4a2dbf4fdea2/winserver2 ...
- 第5章 令牌自省端点(Token Introspection Endpoint) - IdentityModel 中文文档(v1.0.0)
OAuth 2.0令牌自省的客户端库是作为HttpClient扩展方法提供的. 以下代码将引用令牌发送到内省端点: var client = new HttpClient(); var respons ...
- IdentityServer4【Topic】之保护APIs
Protecting APIs 保护api 默认情况下IdentityServer将access token发布成JWT(json web token)格式的. 现在,每个相关的平台都支持验证JWT令 ...
- IdentityServer4系列之中文文档及实际项目经验分享
0.前言 原文:http://docs.identityserver.io/en/release/声明: 1.目录一至五章节根据IdentityServer英文文档翻译而来,有些内容会根据自己的理解来 ...
- Binders 与 Window Tokens(窗体令牌)
原文地址:http://www.androiddesignpatterns.com/2013/07/binders-window-tokens.html 安卓的一项核心设计思想是希望能提供一个不须要依 ...
- Delphi XE5教程11:Tokens
内容源自Delphi XE5 UPDATE 2官方帮助<Delphi Reference>,本人水平有限,欢迎各位高人修正相关错误!也欢迎各位加入到Delphi学习资料汉化中来,有兴趣者可 ...
- iOS开发--引用计数与ARC
以下是关于内存管理的学习笔记:引用计数与ARC. iOS5以前自动引用计数(ARC)是在MacOS X 10.7与iOS 5中引入一项新技术,用于代替之前的手工引用计数MRC(Manual Refer ...
- JSON WEB TOKENS
用JWT来保护我们的ASP.NET Core Web API 在上一篇博客中,自己动手写了一个Middleware来处理API的授权验证,现在就采用另外一种方式来处理这个授权验证的问题,毕竟现在也 ...
随机推荐
- java复制对象之深拷背
在java开发中,有时我们需要复制对象,并且确保修改复制得到的对象不会影响原来的对象. 于是,有些人可能会写出类似以下的代码: public class CloneTest { public stat ...
- .htaccess tricks总结
目录 .htaccess tricks总结 一.什么是.htaccess 二.利用条件 三.利用方式 && tricks 1.将指定后缀名的文件当做php解析 2.php_value利 ...
- html5 input number类型使用整理
一. html5 input中的数字number类型, 只能输入整数,如果要输入浮点数呢,可以通过max.min和step去定义. type="number" 数字类型 mi ...
- [Web] 取消Promise
转载自 为Promise插上可取消的翅膀 const makeCancelable = (promise) => { let hasCanceled_ = false; const wrappe ...
- ethtool 强制设置网卡运行模式为100M
ethtool -s eth0 autoneg off speed 100 duplex full
- javascript prototype理解
如图比较好的阐述了prototype和__proto__ 简单的可以这么理解: 狗类A( function foo()),狗类A的模板描述:A.模板 (foo.prototype)是一个对象objec ...
- Visionworks OpenVX
[TOC] Visionworks OpenVX OpenVX heterogeneous computation framework Spec OpenVX 1.2源碼解析 - 目錄結構 除了官方的 ...
- Java基础 awt Graphics2D 生成矩形图片并向其中画一条直线
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...
- Java12新特性 -- 默认生成类数据共享(CDS)归档文件
默认生成类数据共享(CDS)归档文件 同一个物理机/虚拟机上启动多个JVM时,如果每个虚拟机都单独装载自己需要的所有类,启动成本和内 存占用是比较高的.所以Java团队引入了类数据共享机制 (Clas ...
- ThinkPHP5远程代码执行高危漏洞(附:升级修复解决方法)
漏洞描述 由于ThinkPHP5框架对控制器名没有进行足够的安全检测,导致在没有开启强制路由的情况下,黑客构造特定的请求,可直接GetWebShell. 漏洞评级 严重 影响版本 ThinkPHP 5 ...