Использование подписей AWS v4 для запросов RestSharp? - PullRequest
0 голосов
/ 05 июня 2019

Я использую RestSharp (через генератор openapi) для API, который находится на AWS API Gateway и использует аутентификацию AWS IAM. Это требует от меня создать подпись запроса и включить его в качестве заголовка. Входные данные для этой подписи определены как:

CanonicalRequest =
  HTTPRequestMethod + '\n' +
  CanonicalURI + '\n' +
  CanonicalQueryString + '\n' +
  CanonicalHeaders + '\n' +
  SignedHeaders + '\n' +
  HexEncode(Hash(RequestPayload))

Моя проблема в том, что интерфейс IAuthenticator, по-видимому, не предоставляет доступ к заголовкам, и я даже не уверен, что в процессе "достаточно поздно", чтобы дать желаемые результаты.

Процесс описан здесь:

https://docs.aws.amazon.com/general/latest/gr/sigv4_signing.html

Существует существующая библиотека (Aws4RequestSigner @ https://www.nuget.org/packages/Aws4RequestSigner/), которая делает это за вас, но основана на HttpRequestMessage.

Есть ли какие-либо предложения о том, как я могу реализовать запросы AWS с Signature v4 через RestSharp?

...