Search code examples
c#asp.netasp.net-core-identitymicrosoft-identity-platform

What's the difference between the Microsoft identity platform and ASP.NET Core Identity?


What's the difference between the Microsoft identity platform and ASP.NET Core Identity?

The former is mentioned in the latter's documentation, but it's not clear to me the difference between the two.


Solution

  • ASP.NET Core Identity is a traditional individual authentication platform. You create and manage users, and allow those users to authenticate, specific to one app.

    Microsoft Identity Platform is a centralized authentication and authorization platform, independent of any one particular application. The closest comparison is actually Identity Server, and it functions in much the same way as Identity Server, just much more expansively.

    In truth, there's all kinds of cross-over here, though. ASP.NET Core Identity, for example, also enables third-party/external authentication, such as Google, Facebook, etc., including Microsoft accounts. So, you can actually integrate Microsoft Identity Platform via ASP.NET Core Identity.

    Additionally, Identity Server can use ASP.NET Core Identity for user management, allowing the same OAuth/OpenID Connect functionality Microsoft Identity Platform provides, backed by ASP.NET Core Identity.

    Long and short, they serve different purposes, even though there's a fair bit of cross-over as well. It all just depends on your application's needs as well as things like budget.