AzureAD/microsoft-authentication-library-for-go

[Question] Difference between this project and azure-sdk-for-go (using its azidentity)

TheCreatorAMA opened this issue · 4 comments

I was looking at go packages to handle EntraID Auth and was wondering the difference between this project and a project that the microsoft docs pointed out here? If anyone could provide some explanation that would be appreciated.

azidentity is the authentication library for the Azure SDK. It's useable in other contexts but it exists to support Azure SDK clients as used by developers who aren't Microsoft employees. MSAL (this project) is lower-level and more general purpose in that it isn't designed to integrate with any particular service client and is in principle open to supporting a broader range of scenarios. I believe the most significant feature difference today is that only azidentity supports managed identity authentication.

Is there one that would make sense to implement an OBO flow?

Both support the OBO flow, actually with the same implementation: azidentity's OnBehalfOfCredential wraps MSAL's confidential Client.

Alright thanks for explaining! I appreciate the answers.