2

我正在構建一個爲某些應用程序提供數據的Web API。C#web api上用戶身份驗證的最佳做法是什麼?

這個場景就像Server001上的一個web api託管的方法GET/POST/PUT/Delete可用。

Server002是另一種技術的網站,例如PHP,它將使用提供API的數據向用戶展示。網站/ ios/android/wp8其他應用程序也可以從我的webapi獲取數據(當然,權限爲web api)。

所以我想爲註冊的每個應用程序生成密鑰。每個Get/Post的頭文件都會發送這個密鑰,這樣我知道應用程序是否被允許。

之後,我想想用戶如何登錄?如果用戶在IOS APP中通過PHP請求日誌,我想知道並想要顯示給他。因爲Gmail今天可以。所以我需要管理應用程序以及每個用戶登錄的位置。我怎麼能這樣做?有準備好的解決方案?

在MemoryCache上保存所有登錄到所有應用程序的用戶是否正確?如果我有成千上萬的用戶在同一時間連接成爲一個問題,我很害怕嗎?

我在安全方面是全新手,我不想在三個月後重做它。

謝謝

回答

1

我認爲它將對你有好處:OAuth(非標準授權)。
DotNetOpenAuth - 用於.NET的OAuth庫。

+0

如果你有任何與DotNetOpenAuth的樣本的鏈接,請讓我知道。我會閱讀有關:) – 2013-05-05 18:10:54

+0

請參閱此處:[https://github.com/DotNetOpenAuth/DotNetOpenAuth.Samples](https://github.com/DotNetOpenAuth/DotNetOpenAuth.Samples) – 2013-05-06 09:14:27

相關問題