限制 REST API 访问

问题描述 投票:0回答:1

我有一个面向公众的 API,它在内部使用 Google 地图 API 服务返回一些数据。该 API 目前主要用于内部目的,通过 Web 应用程序调用。 但是,我希望限制此 API 的使用,即仅当用户(未注册)浏览它时,才应从我的 Web 应用程序(或移动应用程序)调用它。不应授权直接向此 API 发出 http 请求。

我无法使用 API 密钥,因为 web 应用程序流程也应该适用于非注册用户。

rest web-services web-applications
1个回答
0
投票

如果您不使用 HTTPS,任何安全机制都是有缺陷的,因为它可以被复制。恕我直言,您可以添加一个 HTTP 标头(例如“Request-source: YourApp”)并检查它在您的 API 中是否存在。

当然,一旦以某种方式记录下来,任何人都可以模仿这个标题。但是,如果您使用 HTTPS 并创建其他人未知的标头,则可以防止这种情况发生。

© www.soinside.com 2019 - 2024. All rights reserved.