OAuth 2.0 指定了存取资源的存取令牌,但它没有提供提供身份信息(ID Token)的标准方法,这就是 OpenID Connect(ODIC)出现的原因。
. (身份、认证)+ OAuth 2.0 = OpenID Connect
. OIDC 是第三代OpenID 技术,它与 OAuth 2.0 对齐并从 XML 切换到 JSON。
. OIDC 通过ID 令牌处理身份和身份验证,而 OAuth 2.0 通过存取/承载令牌处理授权。
. 由於 OIDC 建立在 OAuth 2.0 之上,因此OpenID 提供程序与OAuth 2.0 授权服务器基本相同。
身份令牌(ID Token)
-理解 ID Token 由 Takahiko Kawasaki
不记名令牌(Bearer Token)
拥有不记名令牌(“持有者”)的任何一方都可以使用它来存取相关资源(无需证明拥有加密密钥)。为了防止滥用,需要保护不记名代币在存储和运输过程中不被泄露。
来源:RFC 6750
Microsoft.AspNetCore.Authentication.JwtBearer是一个软件组件,用於处理 .NET 5.0 中的承载令牌。
OpenID Connect (OIDC) 和 OAuth 2.0
OpenID Connect 是一种基於 OAuth 2.0 系列规范的可互操作的身份验证协议。它使用简单的 REST/JSON 消息流,其设计目标是“让简单的事情变得简单,让复杂的事情成为可能”。与之前的任何身份协议相比,开发人员集成起来非常容易。
OpenID Connect 使开发人员无需拥有和管理密码文件即可跨网站和应用程序验证其用户。对於应用程序构建器,它为以下问题提供了一个安全的可验证答案:“当前使用与我连接的浏览器或本机应用程序的人的身份是什麽?”
OpenID Connect 允许所有类型的客户端(包括基於浏览器的 JavaScript 和本机移动应用程序)启动登录流程并接收有关登录用户身份的可验证断言。
(身份、认证)+ OAuth 2.0 = OpenID Connect
来源:OpenID Connect 常见问题和问答
OpenID 的早期版本(Earlier Versions of OpenID)
OpenID Connect 是第三代 OpenID 技术。第一个是最初的 OpenID,这是一个有远见的工具,从未获得太多商业采用,但让行业领导者思考什麽是可能的。OpenID 2.0考虑得更周全,提供了出色的安全性,并且在正确实施时运行良好。然而,它受到一些设计限制——其中最重要的是依赖方可以是网页而不是本机应用程序;它还依赖於XML,导致一些采用问题。
OpenID Connect 的目标是对开发人员更加友好,同时扩展可以使用的用例集。它已经在这方面取得了成功;有大规模运行的生产部署。任何有足够经验通过 HTTP 发送和接收 JSON 消息的程序员(现在大多数是这样)应该能够使用标准的加密签名验证库从头开始实现 OpenID Connect。幸运的是,大多数甚至不必走那麽远,因为有很好的商业和开源库来处理身份验证机制。
来源:OpenID Connect 常见问题和问答
OAuth 2.0 抽象协议流程(OAuth 2.0 Abstract Protocol Flow)
OAuth 2.0 Abstract Protocol Flow
OIDC 协议流程(OIDC Protocol Flow)
OpenID Connect协议,在抽象的,遵循下列步骤。
这些步骤如下图所示:
OIDC Protocol Flow
参考
. RFC 6749:OAuth 2.0 授权框架
. RFC 6750:OAuth 2.0 授权框架:不记名令牌的使用
. OAuth 2.0
. 欢迎使用 OpenID Connect
. OpenID Connect 常见问题和问答
. OAuth 2.0 / OpenID Connect 说明
. 了解 ID 令牌
. 将标识提供程序存取令牌传递到 Azure Active Directory B2C 中的应用程序
. AccessToken Vs ID Token Vs Refresh Token – 什麽?为什麽?什麽时候?
资料来源: Wentz Wu QOTD-20210622
My Blog: https://choson.lifenet.com.tw/
>>: Day11 职训(机器学习与资料分析工程师培训班): Python程序设计, 建立Model+载入
大家好,我是乌木白,今天想和大家聊聊遇到挫折时给如何解决。 遇到挫折 不知道大家,在人生的阶段,有...
还在烦恼不知道送什麽礼物给同学/同事或是家人另一半吗?本期教你制作AR明信片。 1.准备材料 电脑、...
12 第 k 短路径 给一个有向无负圈图,以及两个点 s 和 t、还有一个正整数 k。请找出所有不同...
Object Contents 虽然 Object 的 property 是 key (也就是 n...
//兴趣记录一下~希望退休以後可以回味,各位别嫌弃,感谢各位!! /// //VLAN的重要性,实作...