-
Notifications
You must be signed in to change notification settings - Fork 37
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
feat: support for dynamically fetching credentials from external command #149
feat: support for dynamically fetching credentials from external command #149
Conversation
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
17a03b0
to
92e5467
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #149 +/- ##
==========================================
+ Coverage 38.43% 43.05% +4.61%
==========================================
Files 15 16 +1
Lines 1522 1663 +141
==========================================
+ Hits 585 716 +131
- Misses 887 896 +9
- Partials 50 51 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Signed-off-by: Claudio Netto <[email protected]>
Could someone re-trigger the CI pipelines? It seems they went in a transient error. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good job
This PR adds a new credential type: Dynamic. With it, we can issue the ClusterGateway's auth credential from an external command call - similar to what Kubectl does nowadays. If the returned credential is eligible for cache, we add it to it and use it until its expiration.
To use it, the admin should set ClusterGateway's credential type to Dynamic. Also, they must set the "exec" property in the Secret's data with the exec config to generate the credential from the command line - remember that the exec config is in JSON format. The external command must print to stdout the generated exec credential in JSON format as well.
Here's an example of how to generate credentials on EKS (relying on
aws-image-authenticator
to produce the credential from AWS linked role - IRSA):Related links:
Fixes #148