OpenId Connect - 规范中的 2 种令牌交换方式?

OpenId Connect - 2 way exchange of tokens in spec?

OpenId 是否支持在规范中的任何位置进行双向令牌交换?具体允许双方以某种方式相互共享代币,以便彼此共享服务?

我已经 looked through the spec,但看不到任何详细说明此类情况的信息。

我正在开发的应用程序已将自身与受信任的 OpenId 提供商集成,我们称之为 Acme。

我们还想向 Acme 提供访问令牌和刷新令牌,因为他们也想访问我们服务的功能。

在我们从 Acme 获取令牌的交互过程中,我们希望向他们公开令牌似乎很自然。

规范中有这一部分吗?或者唯一的方法是自己成为一个完整的身份提供者?

您可以将令牌作为请求对象的一部分包含在内,请参阅:http://openid.net/specs/openid-connect-core-1_0.html#RequestObject 但这取决于与 Acme 的成对协议,因为它们需要处理非标准化的请求对象内容.

最好的前进方式是自己成为提供商,这样您就可以利用各种流程的所有功能,而无需依赖成对协议和随附的实施。

听起来您在某种程度上混淆了 OpenID Connect 和普通 OAuth2。

OpenID Connect 是一种规范,用于根据 OpenID 提供商的身份验证向客户端应用程序识别最终用户。从你的问题中不清楚最终用户是否甚至是图片的一部分,所以即使是普通的 OAuth2 也可能不相关(除非你只是使用 "client credentials" 授权)。

两个规范都没有提到代币的相互交换。如果您更详细地描述您预期的交互以及您希望使用哪些赠款,这可能会有所帮助。谁将向您的身份提供者进行身份验证,典型的客户端应用程序是什么?