我有一个API网关,在其中将身份验证设置为使用AWS_IAM。这要求我使用AWS V4签名对每个请求进行签名,并将HMAC附加到 header 中。我发现库可以在nodejs中使用V4签名对请求进行签名。但是我找不到图书馆为我签名。甚至.NET的aws-sdk都针对他们自己的特定用例进行了抽象。是否有图书馆(我在Google上进行了快速搜索但未找到结果)?还是我需要自己写出hmac?
最佳答案
您可以阅读签名的完成方式,也可以(如果需要)。
我建议引入适用于.NET的AWS开发工具包,并使用SDK中的功能实际执行签名。
这是SDK的签名者:
https://github.com/aws/aws-sdk-net/blob/6c3be79bdafd5bfff1ab0bf5fec17abc66c7b516/sdk/src/Core/Amazon.Runtime/Internal/Auth/AWS4Signer.cs
您可能需要对其进行调整(即默认情况下它了解AWS服务和终端节点)