AWS V4签名.NET HttpClient

Nic*_*gié 11 .net c# authentication amazon-web-services

我需要调用使用AWS_IAM保护的AWS Gateway API服务.

我想使用,HttpClient因为这是微软的推荐方式.

我用其他方法找到了一些示例代码.我还发现了使用其内部IRequest的官方AWS SDK.我正在编写IRequest的实现,所以我可以使用Amazon.Runtime.Internal.Auth.AWS4Signer.SignRequest.但这似乎令人难以置信的hacky!

我真正想要的是需要我的东西HttpClient,然后注入Host,X-Amz-Content-SHA256,X-Amz-Date和Authorization标头.

我发现很难相信现在还没有现成的库.

请注意,这与此问题类似,但它有点旧,我希望现在有一个更简单的方法.是否有可以使用AWS V4签名签署请求的.NET库?


更新2018-03-21 - 现在有一个NuGet包https://www.nuget.org/packages/Aws4RequestSigner/

我的同事用过这个并报告它运作良好!我希望这对任何到达这个问题的人都有帮助.