We are developing an API that uses various methods for users to register viz. Facebook, Twitter, Google and also our own Membership system (built using ASP.NET Identity).
We have many large customers that intend to use our platform and have been requesting us to allow us to integrate with them as an OAuth Provider. That will allow their users to get authenticated against their system and then be linked into our system as External accounts. Almost making them another "Facebook" stype provider within our system.
If this was just a single customer, we could simply use OpenIdConnect and set them up in our system. They would provide us with a client_id and a Metadata URL to use and we'd be able to link these users back into our system.
My question is - How would we do this for multiple such customers with each having their own OpenIdConnect client_id and Metadata? Could I use multiple instances of app.UseOpenIdConnectAuthentication settings in my Web API?
I have seen some samples of MultiTenant Windows Azure AD where they obtain the tenant_id from the claims and integrate, but in this case, we can't really use Windows Azure AD.
Could someone help me understand my strategy for implementation?
Any help would be very much appreciated.
Anup