什么是OpenID Connect
OpenID Connect1.0是一个位于OAuth2.0之上的简单的身份层。其允许客户端通过授权服务器验证终端用户身份,通过互操作性和REST-like性获取终端客户的基本概要信息。
OpenID连接允许所有类型的客户,包括网络、手机、和JavaScript客户,请求和接收经过身份验证的会话和最终用户的信息。规范套件是可扩展的,提供可选特性,例如加密身份数据、发现OpenID提供者、会话管理,这些都是有意义的。
http://openid.net/connect/faq/,关于OpenID连接的常见问题的答案。
OpenID Connetcton与OpenID 2.0的区别
OpenID连接与OpenID 2.0有许多相同的功能,例如友好的API使得本机和移动应用程序可用。OpenID连接定义可选的健壮的签名和加密机制。集成OAuth 1.0和2.0 OpenID所需的扩展,在OpenID连接,OAuth 2.0功能集成协议本身。(Whereas integration of OAuth 1.0a and OpenID 2.0 required an extension, in OpenID Connect, OAuth 2.0 capabilities are integrated with the protocol itself.不理解这句话)
规范组织
OpenID Connect1.0规范由以下6个文件组成:
- 核心功能(Core)- 定义了OpenID Connection的核心功能:认证建立在OAuth2.0之上,使用声明与终端用户交流信息。
- 发现 (Discovery) -(可选)定义用户如何动态发现OpenID提供商。
- 动态登记 (Dynamic Registration) -(可选)定义客户端如何动态注册到OpenID提供商。
- OAuth2.0多种响应类型 - 定义几种具体的新的OAuth2.0响应类型。
- OAuth2.0表单发送请求响应模式 - (可选)定义OAuth2.0认证响应参数(包括OpenID 连接认证响应参数)如何返回,终端用户使用HTTP POST自动提交HTML表单指。
- 会话管理 (Session Management) -(可选)定义如何管理OpenID Connect会话,包括基于发送消息的注销功能。
- 基于HTML的注销 - (可选)定基于HTTP的注消机制,而不是在RP页面使用OP框架。
两个实现指南也可以作为基本网络依赖方的独立参考:
- 基本客户端实现指南 - 基于web依赖方的核心功能的简单子集使用认证码流。
- 隐式客户端实现指南 - 基于web依赖方的核心功能的简单子集使用认证隐式流。
当然,一个迁移规范的协议也是可行的:
- OpenID2.0迁移到OpenID连接 - 定义了OpenID2.0如何迁移到Open连接上。
OpenID连接协议、实现指南和规范都在下面的图框中。点击下图中的框,查看规范。
时间: 2024-09-27 22:19:38