AzureAD / microsoft-authentication-library-for-go

The MSAL library for Go is part of the Microsoft identity platform for developers (formerly named Azure AD) v2.0. It enables you to acquire security tokens to call protected APIs. It uses industry standard OAuth2 and OpenID Connect.
MIT License
218 stars 87 forks source link

[Feature Request] Federated Identity Credential with Kubernetes on Azure Arc #477

Closed bgavrilMS closed 3 months ago

bgavrilMS commented 4 months ago

Context

There are 2 types of Federated Identity Credential (FIC) - with external provider or with internal provider (MSI). This is about external provider, where the provider is Kubernetes.

The FIC scenario is:

LEG1: app asks for a token from external identity provider LEG2: app uses client_credentials OAuth flow to get token from

All MSALs can perform LEG2.

Request

The request is for MSAL to help perform LEG1 in a very specific case - Azure Arc enabled K8. The K8 team will provision a local http service that acts like an OAuth compliant Identity Provider. MSAL can request tokens from this provider just like it would from eSTS, with some minor changes:

Protocol details

TBD

Open questions

Alternative

Have you thought about using the "AppTokenProvider" - an extensibility point which allows the app developer to hook to any tokebn provider and leverage MSAL's cache. It is used by Azure SKD today to place tokens in MSAL

bgavrilMS commented 3 months ago

Will not be evolving MSAL GO past MSAL.NET