Google的“OpenID Connect”和“使用Google登录”有什么区别?

16
我希望用户能使用Google账号来进行我的网站的身份验证和登录。主要用例是用户将编辑和生成内容,我们希望以安全的方式记录所有权。我们不感兴趣获取用户的Google数据,我们只想要一种认证用户的手段。
在谷歌上搜索后,我找到了一些文档,似乎解释了如何做到这一点 OpenID Connect (OAuth 2.0 for Login)。但是文档立即指出:“注意:如果您想为您的网站或应用提供“使用Google登录”按钮,则建议使用Google+登录...”,当您按照链接时,最终会带您进入Google+ Sign-In
这两个文档页面之间有什么区别?为什么第一个文档告诉你去第二个文档,却没有说第一个文档已过时?这两个文档中的任何一个对我的用例都适用吗?所有文档只是说“我们建议”,但我想知道为什么,为什么他们推荐使用Google+登录?

更新:我还发现了另一个链接,似乎记录了另一种方法https://developers.google.com/accounts/docs/OAuth2WebServer。我认为这只是用于“授权”,即授权您的应用程序调用谷歌API来获取用户数据,因此不能用于身份验证/登录。

顺便说一下,我正在使用Scala Spray BE REST API和NG JS FE构建我的网站。

1个回答

6

这里提供了两种方式的比较,请点击此处

使用 Google+ Sign-In 和 profile scope

  • 拥有 Google 客户端库,可用 OAuth 2.0 进行身份验证,并支持 Google+ 和其他 Google 服务(如获取用户社交信息)。另外,这也使得实施更容易,需要的代码更少
  • 拥有 Google+ Sign-In 按钮以简化登录过程 没有预构建的小部件
  • 支持 Android 上的OTA安装

OAuth 登录主要是用于低级别的身份验证,通过创建原始的 HTTP 请求,而没有 API。

OpenID Connect 协议(OAuth 2.0 登录) 如果你使用 openid 范围进行配置并使用 getOpenIdConnect 获取用户配置文件,则Google+ Sign-In支持 OIDC 互通性。

OAuth 2.0 登录直接支持 OIDC。将其用于向应用程序中登录用户,该应用程序不需要社交功能且在 Google+ Sign-In 不支持的平台上运行。


我不同意你的初步总结,但是你提供的链接确实包含了一个有用的比较表格。我会编辑你的回答并加入这个表格,然后接受这个回答。谢谢。 - samthebest
糟糕!有用的表格现在成了404错误页面。 - Mote Zart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接