我正在尝试调用 api 请求(服务:execute-api(,需要签名 v4。我一直在浏览文档,我清楚地看到了这一点:
或者,您可以使用 AWS CLI 或其中一个 AWS 开发工具包来 为您处理请求签名。
我不拥有 API,最初只是认为我可以使用 CURL,但显然 IAM 已配置。我想知道签署此请求的最佳方式是什么?
注意:看起来有一个AWS4Signer类可能是我正在寻找的非手动生成签名的类
抱歉,但从您的问题来看,不清楚您只是在试验 API 还是想编写调用它的客户端(如在生产代码中(。
如果你只是在测试,你可以使用 Postman 来调用 API(它支持 SigV4(。详情请见此处。
如果您正在编写客户端,则要做的方法是从 API 网关生成 SDK,如注释中所述。如果无法做到这一点,下一个最佳选择是使用特定于语言的 SDK 签名器之一来生成 SigV4 签名。AWS4Signer,就像你说的,是要走的路。与它集成应该很简单,但如果您可以分享特定使用案例的更多详细信息(平台、语言、从哪里获得 AWS 凭证等(,人们可以为您提供更好的答案。
最后,如果您想自己生成签名,以下是规范生成的签名的工作原理。