【发布时间】:2019-04-08 04:19:46
【问题描述】:
这是更概念性的问题 - 当我们使用像 Angular 这样的 SPA 时,我们使用隐式流进行身份验证。在这个流程中,我们将令牌存储在 localStorage 或 sessionStorage 中。
当我们需要调用任何 API 时,我们会将该访问令牌传递给该 API 以获取数据或 POST 数据。
我有一个问题 - 如果任何恶意用户发现了该令牌,那么他可以使用邮递员或任何其他客户端使用一些垃圾数据进行数千次 POST API 调用。
我们怎样才能避免这种情况?
提前谢谢!!!!
我知道一些类似 REST API 的东西可以实现 CORS 来解决这个问题。 当有人调用 API 时,我们可以检查 ORIGIN Header。
但我读到 ORIGIN Header 也不安全。恶意用户可以通过代码轻松设置它,并且可以通过编程方式调用 API。那么如何处理这样的情况呢?
详情请看下图 -
【问题讨论】:
-
使用 https,经常刷新令牌,实现某种过滤器,如果每个间隔的请求太多,令牌就会失效。
-
@maljukan - 感谢 maljukan 的回复。我们已经在 REST API 中实现了节流。但是如果有人每隔 10 分钟左右发布一些垃圾数据呢???
-
@sudarshan1933 你到处都在拍摄。您在评论中引用的内容与您的问题无关。它是需要缓解DDOS attacks 的主机。他们有他们的工具。你不应该也不能在应用程序级别处理 DDOS。
标签: angular angular5 local-storage session-storage stateless