Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ability to sign requests for all AWS services #380

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

transacid
Copy link

This add the ability to utilize sigv4 signing for all AWS services not
just "aps". When the newly introduced property "service" is not set in
config it will default to "aps".

I found it hard to think of a way to test this. When you have ideas, please let me know.

@roidelapluie
Copy link
Member

roidelapluie commented May 17, 2022 via email

@transacid
Copy link
Author

transacid commented May 17, 2022

yes it is. I'd also had to change the documentation.
Some words about the reasoning behind this PR:
We are running our TSDB in an EKS cluster in AWS and would like to use API gateway for authentication. To sign requests for the API gateway the "service" needs to be "execute-api". However prometheus hard codes it to be "aps".

@transacid
Copy link
Author

hey, is there anything I can do? something that is missing?

@krmnn
Copy link

krmnn commented Jul 13, 2022

This patch enables users of your client library who operate Prometheus (or compatible services) on their own in AWS and want to protect the exposed endpoints with the help of AWS IAM instead of static http basic_auth credentials.

We want to use AWS APIGateway for that, so the requests must be signed for the service 'execute-api' to be valid. But also other frontends (e.g. load balancers) are thinkable.

Currently the signing process is tied to only support AWS Managed Service for Prometheus. This PR increases the flexibility of your users.

This add the ability to utilize sigv4 signing for all AWS services not
just "aps". When the newly introduced property "service" is not set in
config it will default to "aps".

Signed-off-by: Boris Petersen <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants