2017-10-09 52 views
0

我需要開發一個外部API,並且我希望使用客戶端ID和密鑰(如Facebook,Twitter,Google和Microsoft)進行身份驗證。Facebook,Twitter和Google等Web API身份驗證

我已閱讀了一些關於OAuth2的教程,但他生成的令牌是臨時的,並且客戶端需要傳遞用戶名和密碼才能獲得令牌。

所以,我想要的是給每個客戶端使用我的API的客戶端ID和密鑰,他們應該在他們調用的每個方法上傳遞這些數據。在返回結果之前,API會檢查請求是否有效。

這樣做的最好方法是什麼?

+0

那麼你的問題是什麼?只需使用[this](https://msdn.microsoft.com/en-us/library/wb9c8c67(v = vs.110).aspx)生成隨機字節數組,然後使用[this]將其轉換爲base64(https:/ /msdn.microsoft.com/en-us/library/dhx0d524(v=vs.110).aspx)並將該字符串存儲到每個用戶的db中。這個字符串將是一個API密鑰 –

+0

如果你想標準實現它的OAuth2協議..對於.net有多個服務器實現你可以使用.https://github.com/aspnet/Home/issues/1557 –

回答