在Azure AD B2C上的Microsoft文档中,我阅读了
如果您要构建托管在服务器上并通过浏览器访问的Web应用程序,则建议使用OpenID Connect。如果要使用Azure AD B2C向移动或桌面应用程序添加身份管理,则应使用OAuth 2.0而不是OpenID Connect。
Azure AD B2C中OpenID Connect和OAuth 2.0的作用是什么,它们分别支持哪些功能?
答案 0 :(得分:2)
这个问题不是很正确。在同一页面上,您可以阅读
OpenID Connect扩展了OAuth 2.0授权协议,以用作 认证协议。通过此身份验证协议,您可以 执行单点登录。它介绍了ID令牌的概念, 允许客户端验证用户身份并获得 有关用户的基本个人资料信息。
OpenID Connect(OIDC)是OAuth 2.0的扩展或超集标准/ RFC。两种协议都定义了身份验证流程,而OAuth2有点通用,这是一个通用框架,它提供了很多选择自由,OIDC详细指定了重要方面。 OIDC除了将访问令牌,混合流,令牌自省端点等流添加到OAuth2外,还以JWT格式添加了id_token。
通常OAuth2与OIDC一起提供。如果您想详细了解不同之处,则可以使用OIDC和OAuth2
的RFC。因此,您的问题是关于协议差异的,除了RFC外,您还可以找到很多信息。这是IMO的好文章link。
简而言之:
OAuth2
OIDC
B2C专注于从消费者应用程序的客户端应用程序一侧使用。创建IdP提供程序时,Azure B2C支持已经存在的社交提供程序(Facebook,Microsoft等),实际上是具有专有扩展名的OIDC或自定义OIDC IdP提供程序。就API和身份验证流程而言,这对于任何IdP提供程序来说都是非常典型的,它同时支持两者,因此您可以将HTTP API用于OAuth2或OIDC,建议使用OIDC。