2012-03-14 155 views
2

我有一个客户请求在他们的网站上使用oauth,以便用户可以使用他们的Facebook或Google凭据进行身份验证。我想知道在这个过程中哪些信息是持续的,所以我可以将它们链接到我的数据库中的帐户记录。OAUTH身份验证和数据关联

我的第一本能是使用最终的令牌(实际上是用来从任何网站请求信息的令牌),但是从我的理解中可以看出这些令牌会过期从而打破我的链接。如果令牌过期,我如何识别谁是谁?

如果你仍然不确定我的意思,以stackoverflow为例。我使用我的Google凭据登录到stackoverflow。 stackoverflow如何将我的oauth登录名与我的帐户信息相关联?有些事情必须坚持。

我觉得我错过了一些显而易见的东西,但由于某种原因,我无法连接点。很可能是由于我对oauth的无知。

任何有识之士将不胜感激。

编辑:我只是实现了stackoverflow使用openID。我吠叫错了树吗?这可以通过oAuth完成吗?

回答

2

这取决于你想要完成什么。如果客户希望能够从他们的网站操纵Facebook上的用户数据,那么类似的OAuth将是必要的。

如果客户端只是想让他们的用户不需要创建另一个用户名和密码,那么OpenID可能就是要走的路。

如果您使用OAuth,当令牌过期时,您必须再次通过登录过程并请求另一个。超时是一个有价值的安全功能。

+0

第二个案例是一个客户端所期待的。所以我想OpenID是要走的路。感谢澄清。我由于某种原因,得到了的OAuth和OpenID是为此目的可以互换的印象。 – Pizano 2012-03-14 22:53:57

+0

你可以做的OAuth的工作,但你必须通过更多的跳火圈,因为你可以用自己的Facebook帐户写访问结束了,即使你不想要它。我与Open ID相当肯定有没有办法让你的网站去触摸他们的Facebook信息。 – patrickmcgraw 2012-03-14 23:07:00