我正在开发一个沙盒集群和一个由我在 MongoDB Stitch 中创建的新应用程序。
我需要了解 MongoDB Stitch App 中的“有效负载签名验证”。可以说,我需要创建一个 REST GET API,它将获取我的产品列表,但是这个 API 调用必须经过身份验证,即。只有注册/经过身份验证的用户才能拨打此电话。MongoDB Stitch 建议如下:
但是,我需要明白:
(1) 在哪里添加这个 BODY & SECRET ?据我所知,它必须保存在缝合应用程序中,因为您不得在客户端 JavaScript 中公开您的任何密钥。
(2) { "message":"MESSAGE" } 这是可配置的吗?如果是,我们应该在这里添加什么值?
此功能必须在 MongoDB Stitch App 中编码。这很清楚。此函数根据您在前面步骤中传递的“body”和“secret”返回“hash”。
现在,您必须在 API 请求中传递此哈希:
现在,问题是:
您可以轻松地在开发人员工具中看到任何正在传递给服务器的请求,任何人都可以轻松地复制它并通过 POSTMAN 传递它。所以:
-> 如何保护我的请求?(仅供参考:我还添加了“规则”,表示只有当域名包含 www.mysite.com 时才能执行此请求。但我能够从 localhost 成功执行请求。)
-> 如果,任何人都可以在 POSTMAN 中复制并粘贴我的请求并运行它。那么,生成该 HASH 有什么用?
-> 我如何让我的请求令牌在有限的时间内保持有效/有效,假设请求仅在接下来的 5 分钟内有效?(我的意思是我如何在 Stitch APP 中执行此操作?那个选项在哪里?)
-> 我如何获得刷新令牌?&即使我以某种方式得到它,我如何将它重新传递给请求?
所有此类查询在 MongoDB Stich 文档中都是 UN_ANSWERED:https ://docs.mongodb.com/stitch/
基本上我想了解 MongoDB Stitch App / Stitch REST API 的任何 GET/POST/PUT/PATCH/DELETE 请求的完整生命周期。
如果有人使用过 MongoDB Stich,请解释一下。