-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Support federated credentials in on-behalf-of flow #28726
Comments
/cc @scottaddie |
Hi! Chiming in here to voice some 1P customer desire for this to be completed. We run nodejs tests in our Azure pipelines, and these tests make API calls to Azure. Right now these API calls are authenticated using service principal secrets. As part of a compliance effrot, we need to move away from using service principal secrets, and what seems to be the best way forward is federated credentials. We can connect service principals to our Azure pipelines using federated credential service connections, however, the To be totally clear, we're looking for something that can provide an implementation of this OAuth flow:
I believe this is something Additional information on our speceific scenario:
|
I'm new to this space but aren't these different asks / scenarios? The first is support for federated credentials on-behalf-of a user, the second seems more related to #27093 - just to make sure we have things tracked in the right place and partners can be informed of timelines |
@maorleger I'm also new to the space of "federated credentials" so apologies if I stumbled upon the wrong issue. I agree that issue #27093 probably sounds like more of the right thing. |
@chlowell @KarishmaGhiya - FIC is supported by 3p. There are 2 types of FIC:
From MSAL perspective this is very simple - all MSALs allow for specifying a client assertion. Just note that most samples (including https://github.com/Azure/azure-workload-identity/tree/main/examples) are wrong, because you have to ensure the token from leg1 is valid when you pass it to leg2. So you need to cache tokens from leg1 and from leg2. @Robbie-Microsoft will be looking into the sample https://github.com/Azure/azure-workload-identity/tree/main/examples to fix it. Hope this helps. |
Chatted with @bgavrilMS
|
Related MSAL feature issue for requesting Client Assertion callback input instead of a string - AzureAD/microsoft-authentication-library-for-js#7013 |
1P documentation shows how to authenticate the service principal in the OBO flow with a federated credential instead of a secret or certificate. The request is essentially the same as for a certificate, however its assertion is the federated credential instead of a JWT signed by the app. Note that the 3P documentation doesn't mention federated credentials, so this may be a 1P-only feature.
First thoughts on implementation:
The text was updated successfully, but these errors were encountered: