簡體   English   中英

Web API OAuth 不記名令牌安全性

[英]Web API OAuth Bearer Token security

我確定我在這里遺漏了一些東西,所以希望這里有人可以填補我。

我正在查看 .NET 4.5 Web API(我猜是第 2 版?)中的 OAuth 2.0 實現,並且我已經實現了一個非常簡單的演示,其中我有一個調用一些基本操作的控制台應用程序。 我從“/Token”端點獲得一個令牌,並將它作為授權標頭中的“承載”令牌傳回。 一切正常。

但是,我缺少的是它如何不易受到 MITM、重放或其他攻擊的影響? 如果我只是簡單地傳遞憑據(以令牌的形式),並且它們始終是相同的憑據,那么圍繞它進行什么樣的安全保護以確保沒有人只是竊取了我的令牌並冒充我?

誠然,我也在使用 SSL,但這是圍繞此構建的唯一安全性嗎? 也許我也應該使用某種隨機數,或者時間戳檢查? 如果是這樣,如何在 Web API 中做到這一點?

無論如何,我確定這里有一個非常簡單的解釋,所以我很感激這些信息。

另請注意,我在兩個 Visual Studio 2013 Web 應用程序項目中運行兩台服務器,這些項目位於在不同端口上運行的不同 VS 2013 解決方案中。 我不確定這是否重要,但我想我會提到它。

OAuth 2.0 不記名令牌的安全性完全依賴於 SSL/TLS,沒有內部保護或不記名令牌。 如果你有令牌,你就是所有者。 在許多中繼 OAuth 2.0 的 API 提供商中,他們以粗體表示客戶端開發人員應該安全地存儲並在傳輸過程中保護令牌。

您可以閱讀 Eran Hammer 的這篇有趣的帖子,他曾經與標准化 OAuth 2.0 的社區合作,但我相信他讓他們留下了意見沖突。 查看他的帖子OAuth Bearer Tokens are a Terrible Idea ,您也可以閱讀這篇文章

但最終它正在成為標准方式,您必須通過 https 傳輸它並安全地存儲它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM