-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Provide support for using Azure AD service principal authentication with client secret/certificate #3933
Comments
I'd be happy to contribute this feature to the project. |
Hi @Aashish93-stack |
@JorTurFer unfortunately, there are some use cases where we don't have access to the service principal to configure federation and other cases where users don't won't to onboard the workload-identity, so we are hoping to add a certificate based authentication to cover all our bases |
Yes, this is another way of authenticating. I think service principal support makes sense but I'd suggest to post a configuration proposal here first to make sure we are all aligned first. Is that OK for you @Aashish93-stack? |
Agreed with @tomkerkhove BTW, There is also the option of using User Managed Identities if you need them as WI already supports them |
BUt then you still need Workload Identity :) In some scenarios you just want to use a SP. |
@tomkerkhove sure that works for me. Under the triggerAunthentication I was thinking of adding a provider azure-service-principal and it would have the following structure
I was thinking that the certificate can imported from a Kubernetes secret or Azure Key Vault, so when specifying the provider as azureServicePrincipal we would also need either the secretTargetRef or azureKeyVault. Then in the
and update the AuthPodIdentity struct with new optional fields
Also, we need to create a new class (could be name azure_aad_service_principal.go) which would be responsible to for decoding the certificate and getting the servicePrincipalToken, this would be called from the individual scalers. In case of EventHubScaler, after getting the servicePrincipalToken, a new JWTProvider needs to be configured and passed in the while creating a new eventhub client |
I wouldn't add this as a new pod identity because it isn't. Maybe we could add another section like |
Yes, that makes sense, updating trigger auth structure to this ->
and will add a new struct in the
Since it's no longer part of the |
WDYT @v-shenoy ? |
Yeah, sounds good. |
I guess that this is interesting for all azure scalers, isn't? |
It is. I asked because the issue is titled for Event Hub. |
@Aashish93-stack , are you willing to contribute with other scalers too? |
We should do it, I don't think this is even a question :) However, we can do it in phases if @Aashish93-stack does not have the bandwidth to update all of them. My feedback:
|
@tomkerkhove cool, the suggestions look good to me, will update it to @JorTurFer Unfortunately, don't have much bandwidth, will try to get as many scalers I can or can do it in phases |
If you are willing to contribute, obviously is dependent on your availability, doing it in phases is awesome. Also, you are not forced to do in on every scaler, other contributors can take them (as you prefer 😄 ) |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
Sorry been busy with other commitments, will contribute this feature in March. |
No worries! |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
@Aashish93-stack are you still interested? I would possibly try to implement |
Proposal
Proposing the following updates:
Use-Case
We have a use case where we need to support System Assigned Identity for accessing eventhub and since PodIdentity and Workload Identities don't support System-Assigned Identity out of box, we are looking into service-principal based authentication using certificates
Anything else?
No response
The text was updated successfully, but these errors were encountered: