Search code examples
asp.net-coreowinidentityserver4

How to interface with non-standard User store in IdentityServer4?


I want to use IdentityServer4 to implement OIDC authentication for future development. We have an existing homegrown membership schema that was implemented before Asp.Net membership or Aspnet Identity. We have legacy applications using the existing membership schema to authenticate and authorize users.

How can I implement an adapter that points to the legacy schema, (assume a Users table with username & password columns), for the user store? The only examples I've seen are InMemory users and AspnetIdentity.


Solution

  • To integrate with your own user store you need to create an implementation of IProfileService (and optionally IResourceOwnerPasswordValidator if you need to use the resource owner grant type), and then register it in IServiceCollection.

    e.g: services.AddTransient<IProfileService, GabeFcCustomProfileService>();