我有一個我想限制訪問的API。我可以提供訪問密鑰並在每次請求時檢查它們,但我不確定這將會走多遠。如何使Web API私有
該API由應用程序使用,但它也被某個Web應用程序使用,該應用程序只能查看源代碼。如果他們這樣做了,他們將擁有密鑰並可以輕鬆地進行API調用。
有沒有一種更可靠的方法來保護訪問?我不確定這裏的標準做法是什麼。
編輯:思考完後,我可以使用雙叉法。 Web應用程序可以使用POST和CSRF,並且應用程序可以使用API密鑰。任何其他想法,或者這是一個普遍接受的解決方案? (請注意,這仍然不適用於第三方Web應用程序。)
對,問題是網絡應用程序是公開的。然而,我的CSRF思想基本上遵循相同的原則,而不是要求登錄和生成令牌。 – 2015-04-05 04:52:14
@LukeSapan CSRF與公共或私有API無關。無論如何,當API向公衆開放時,爲什麼攻擊者想模仿您網站上的另一個匿名用戶? – 2015-04-05 04:59:10
我更多的是試圖阻止API在未經授權的應用程序中使用。通過在不使用API密鑰時添加CSRF要求,這使得它變得更加困難(儘管我認爲技術上仍然可行)。 – 2015-04-05 05:01:45