-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Google: Add functionality to impersonate GSuite Admin identity without JSON #2122
base: master
Are you sure you want to change the base?
Google: Add functionality to impersonate GSuite Admin identity without JSON #2122
Conversation
Signed-off-by: Nauris <[email protected]>
ea8ac5e
to
349fbfd
Compare
// Required if ServiceAccountFilePath | ||
// Recommended when running inside Google Cloud Platform | ||
// Use this instead of ServiceAccountFilePath to use default credentials | ||
UseGoogleDefaultCredentials bool `json:"useGoogleDefaultCredentials"` |
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.
I wonder if impersonation should be the default instead when service account file is not provided.
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.
cc @JoelSpeed
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.
If I understand your comment correctly, we cannot directly interact with GSuite Admin API with service accounts without a GSuite account impersonation. So regardless of the authentication method (key or no key), we will require to go through impersonation step.
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.
@NaurisSadovskis - did you test this out? We are looking to use workload-identity instead of long-lived keys. when can we expect this to rollout?
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.
I wonder if impersonation should be the default instead when service account file is not provided.
This makes sense, I guess in that case we don't need an explicit option for it?
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.
hey folks, apologies for not responding earlier. I'll try to test it in the coming weeks.
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.
@NaurisSadovskis - any progress on this?
Anything pending to get this moving forward? happy to contribute |
I would be happy to test this. @sagikazarmark is it simply Maybe it would be good to share gcloud commands required to setup the service account with impersonation permissions? 😅 |
Got to
Not sure how I can validate that the service account is working. Any hints @NaurisSadovskis |
What is latest status, we need this feature too, we hosting argocd in GKE, there is a service account in work nodes, do not want to paste a service acccount key, because our service account key needs to be rotated. |
Is this possible now? To impersonate GSuite Admin using workload identity? |
I am looking for something similar for Vault and I found this: hashicorp/vault#23983 (comment) I have yet to try on Dex / Argo CD, but it looks promising! |
Overview
Hi folks, adding an option to impersonate GSuite Admin identity without service account key JSON. This functionality has been recently added as part of google-api-go-client v0.46.0
What this PR does / why we need it
This feature is primarily aimed at folks running within Google Cloud Platform (GCE/GKE):
Addresses: #1756
Special notes for your reviewer
I have not tested this with an actual GSuite tenant, as I don't have one, but can test it sometime next week.
Does this PR introduce a user-facing change?