Most of the important OAuth2 providers have been re-implemented without the DotNetOpenAuth dependency and are available for .NET Core in the ServiceStack/Auth folder. The recent additions include:
- GoogleAuthProvider.cs
- MicrosoftGraphAuthProvider.cs - MS’s new Auth provider that they recommend using
- LinkedInAuthProvider.cs
The primary missing one is Instagram due to Facebook locking access down and requiring manual approval of which I have a request pending to create a new account that I can use test against.
Adding a new OAuth provider generally involves creating a new App in their dev portal, finding all the URLs for their OAuth endpoints, testing it to find out what data they return and map it to an Authenticated UserSession. So they’re straight forward to create when needed.
Another solution would be to use the new NetCoreIdentityAuthProvider which provides a bi-directional mapping that maps an Authenticated .NET Core User to an Authenticated UserSession and vice-versa.