2012-08-23 70 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,但隨後,圍繞什麼,我應該存儲在服務器上的問題帶來的。 –