jillesvangurp / kt-search

Multi platform kotlin client for Elasticsearch & Opensearch with easily extendable Kotlin DSLs for queries, mappings, bulk, and more.
MIT License
107 stars 22 forks source link

[FEAT]: AWS SigV4 support with the client #110

Open karthikchejerla opened 8 months ago

karthikchejerla commented 8 months ago

Describe the enhancement

Ability to sign requests using AWS Signature V4

Why is this needed?

Signing requests using native clients has been an essential requirement for accessing the Amazon OpenSearch Service on AWS using fine grained access controls. Having native SigV4 support in clients avoids the need to use cURL requests and other workarounds.

How do you think it should be done?

Reference: https://opensearch.org/blog/aws-sigv4-support-for-clients/

Some ideas to get started

jillesvangurp commented 8 months ago

would you be able to help with this? I lack access to an aws opensearch cluster to test this. I'd prefer a solution that works on all platforms.

jillesvangurp commented 8 months ago

https://github.com/KotlinCrypto this library looks good as a multiplatform implementation for sha256.

If somebody wants to have a go at this, the rest client is pretty easy to extend.