2012-08-23 27 views
0

我正在写一个Android应用程序,将需要人来确定自己使用多种服务。我们认为最好的行动方式是不让人们在我们的服务器上注册,因为几乎每个人都有其他地方的主要服务(例如Google,Twitter,Facebook,Yahoo!)。潜在验证端点

的REST API正在围绕CakePHP的建造。这本身并不是我需要的关键点,但问题更多的是Android应用程序以及它与我们的API的沟通。基本上我想看到的是一个拥有X个设备的用户能够登录到他们已经有权访问的服务。

这身份会被我们的服务器被称为该用户的身份。然后,我的应用需要一种方法来告诉我们的API:“我是来自service example.com的John Doe,这里是证明”。这些服务器还会接受一个具有相同身份的新设备并将其与该用户绑定。

我卡在这里的一些问题:

  • OpenID的似乎是去(虽然我不知道如果Twitter支持OpenID的)的方式。但我怎么能从我的设备上做OpenID? 我不需要有人将我指向OpenID for Java。这不是我正在寻找的答案的100%。网站将重定向到哪里?
  • 将认证件是什么样子我的网络服务器和Android应用程序之间?我没有登录。我正在使用OpenID。我应该只是采取一些/所有的OpenID信息,并将其传递给Web服务器进行存储,然后再次传递它以检查每个API调用?

回答

0

Twitter不仅OpenID,但他们也有一个dedicated page谈论什么是流量和你需要存储。谷歌有一个similar page登录。 OpenID登录流程(大部分)是OAuth2。

+0

否,它们是不同的。这个例子不是OpenID这是OAuth。他们以相似的方式工作,但他们做了不同的事情。 OpenID就像您的汽车牌照和注册,而OAuth则是汽车的关键。他们只是在使用由第三方服务器验证的身份验证凭据相似。 – tomwardiii

+0

Twitter OpenID流将返回OAuth令牌和秘密。 Google OpenID流程返回OAuth令牌和秘密。他们用于不同的目的,但他们开始合并为一个协议 –

+0

不,有一个特定的OpenID/OAuth模式,像谷歌。您链接的页面似乎不遵循OpenID API标准,并且与OpenID无关。 有可能我还是可以看看的OAuth的东西,如Twitter,但随后,围绕什么,我应该存储在服务器上的问题带来的。 –