api - 如何保护来自 CDN 上托管的静态站点的 API 连接
问题描述
如何保护从托管在 CDN 上的静态站点发送的 API 请求?
用例:使用 react 的单页应用程序托管在 S3 + Cloudfront 上。该网站调用 Yahoo Finance API 来请求一些市场数据。第三方 API 使用 API 密钥对请求进行身份验证。我只能将第三方 API 密钥存储在静态站点中,使其可供任何人使用。
注意事项:
- 静态站点和 API 不在同一个云提供商或服务中,因此使用角色的解决方案将不起作用。
- Lambda(函数)代理解决方案是目前 IMO 的最佳选择,但这仍然允许将请求直接发送到 Lambda(函数)。
- 对函数的请求也应该是安全的,使得上述选项仍然容易受到攻击。这意味着从源代码中获取代理函数的 URL 并调用该函数也是不可接受的。
环顾四周发布的其他一些问题,但我没有找到解决此处所述特定情况的问题。
解决方案
推荐阅读
- vue.js - 添加自定义标头Vue时请求失败
- r - ggplot2中具有许多组的条形宽度
- sql - Hive/Spark 重复密集排名 N 次
- javascript - 有没有办法将 Cesium 实体配置为显示为 ICRF?
- javascript - Javascript:获取与当前时间匹配的数组中日期范围的对象
- ios - 无法将数据从 Swift 映射到 Objective-C 模型
- javascript - Instagram 动态滑块
- c++ - 如果运行系统如何修复arduino中的问题
- neo4j - Neo4j/Cypher FOREACH 方括号和“THEN [1]”的使用
- javascript - 当我添加新的 TextInput 时,在 KeyboardAvoidingView 中自动滚动 ScrollView