我希望设置一个登录系统,我将创建多个独立的网络(rails
,Django
,node
,php
等)和android应用程序由我所在学院的学生使用,所有这些应用程序应该只使用一个帐户和一个用户名和密码。我搜索了最先进的方法,并找到了关于OpenID,OpenID Connect和OAuth2.0的信息。我确实理解它们之间的区别,然而,我感到困惑的是在这里使用哪些。
该系统应与Google实施的类似。 Google有https://accounts.google.com,您可以在其中管理自己的帐户,密码,个人资料等。同样,应该有一个用户注册并创建帐户的网站(让它为accounts.xyz.com
)。当您打开应用程序时,应输入在accounts.xyz.com
上设置的用户名和密码,这样应用程序就可以访问某些(或所有)用户数据。
或者,每个应用程序上都有一个简单的 Sign in with accounts.xyz.com
按钮,它与用户名和密码登录功能相同。
这两种方法中的哪一种更好,用于实现它的方法以及如何实现它?是否有更简单的方法可以确保我所在学院的学生只能访问该申请?
答案 0 :(得分:2)
不推荐使用OpenID代替OpenID Connect。
OAuth 2.0用于委派应用程序访问API。所以,使用OpenID Connect。
要使用accounts.xyz.com登录,您需要实施自己的OpenID Connect Provider或其他一些身份验证方法。