2011-09-25 115 views
0

我正在開發一個應用程序,以託管在Google App Engine上。用戶將能夠使用他們的Google ID登錄到應用程序。該應用程序還有一個黑莓應用程序形式的客戶端。使用來自Blackberry的Google ID的GoogleApp Engine身份驗證

我的問題是 - 是否有我的應用程序收集用戶的Google憑據的建議方式,以便我可以使用OpenID語義對Google進行身份驗證?例如,在Android中,我可以使用Accounts API,因此我不需要明確要求用戶輸入憑據。在黑莓手機上做到這一點的方法是什麼?

我看到2種方式,這兩者都不是理想的:

  1. 寫我自己的形式在我的家鄉黑莓應用程序的用戶在其中輸入谷歌ID和密碼,然後我用它來獲得認證令牌和在幕後執行其餘的身份驗證。但重點是 - 要求用戶使用他們的Google憑證信任我的應用是不合適的。

  2. 使用標準的Google Open ID身份驗證機制 - 打開網絡瀏覽器並顯示Google的Open ID登錄頁面。雖然這是一次性事件(之後我可以保存身份驗證令牌,以便將來對GAE的請求不需要任何憑據提示),但用戶體驗仍然具有破壞性,因爲除了我的本地BB之外,它還涉及打開瀏覽器應用程序。

那麼,有什麼建議的方式呢?

回答

1

使用瀏覽器進行身份驗證幾乎是執行此操作的唯一標準方法。許多Android應用程序也爲OAuth或OpenID端點執行此操作。根據黑莓協議處理程序的工作方式,您應該能夠設置一個繼續URL,導致您的應用程序在身份驗證完成時被瀏覽器回叫。