OpenID vs OpenID Connect vs OAuth 使用哪个以及如何实施?

OpenID vs OpenID Connect vs OAuth which to use and how to implement?

我希望建立一个登录系统,我将在其中制作多个独立的网站(railsDjangonodephp 等)和android 供我学院学生使用的应用程序和所有这些应用程序应仅使用一个帐户和一个用户名和密码。我搜索了执行此操作的最先进方法,并发现了 OpenID, OpenID Connect and OAuth2.0。我确实理解它们之间的区别,但是,我感到困惑的是在这里使用哪个。

该系统应该类似于 Google 已经实施的系统。 Google 有 https://accounts.google.com,您可以在其中管理您的帐户、密码、个人资料等。同样,应该有一个网站供用户注册和创建他们的帐户(让它成为 accounts.xyz.com) .当您打开一个应用程序时,您应该输入您在 accounts.xyz.com 上设置的用户名和密码,这样应用程序就可以访问部分(或全部)用户数据。

或者,每个应用程序上可以有一个简单的 Sign in with accounts.xyz.com 按钮,其作用与用户名和密码登录相同。

这两种方法哪种更好,用什么来实现,如何实现?有没有更简单的方法来确保只有我学院的学生可以访问该应用程序?

已弃用 OpenID 以代替 OpenID Connect。

OAuth 2.0 用于授权应用程序访问 API。因此,请使用 OpenID Connect。

要使用 accounts.xyz.com 登录,您需要实施自己的 OpenID Connect 提供商或其他身份验证方法。