2014-03-24 34 views
1

我正在實施一些WebApi來上傳/轉換/返回視頻。由PhoneGap應用程序調用的安全Web API

另一位開發人員將實現一個PhoneGap應用程序,該應用程序將調用我的WebApi上傳/轉換/顯示視頻給用戶。

PhoneGap應用程序使用OpenId允許用戶使用谷歌和臉譜登錄。

我的問題是,我想確保調用我的WebApi的客戶端已經使用谷歌或Facebook在PhoneGap應用程序上登錄。

我知道我所需要的只是客戶端向請求頭髮送令牌,我可以在Web API上「提取」以驗證用戶。我的問題是我的WebApi如何知道PhoneGap應用程序中由openId(google/fb)生成的令牌是什麼?

+0

您的WebAPI服務可以執行實際的OpenID登錄而不是實際的Phonegap應用程序嗎?這樣你就可以掌握登錄令牌和用戶名等。 – drdan

回答

1

嗯,我還搜索到這一點,我已經走到這一步,我將在下面的步驟與大家分享: -

1)當用戶撥打我的登錄頁面,我會在響應頭創建令牌,使確定請求來自合法用戶。就像mvc中的防僞標記一樣。

2)然後成功登錄後,我將創建身份驗證cookie並設置當前用戶上下文值,這將授權用戶並生成上述的另一個令牌。

3)然後,我將使用WEBApi提供的正常的授權,角色屬性。

讓我知道您的想法?我非常樂意貢獻。

另一種方法是當用戶登錄創建哈希令牌並將其添加到響應頭並創建自定義屬性時,獲取該令牌並根據數據庫進行檢查。這種方法的問題在於,你會一直在敲擊你的數據庫。

相關問題