Skip to content

Latest commit

 

History

History
70 lines (58 loc) · 4.57 KB

File metadata and controls

70 lines (58 loc) · 4.57 KB

OAuth Provider Documentation

This document contains some introductory information about how to integrate the OAuth providers in this repository into an ASP.NET Core application.

It assumes a general familiarity with ASP.NET Core and authorization, and is intended to demonstrate how to configure it for your application, not how it works internally. Further integration details for a given provider can be found in the services' own documentation, which are linked to in the main README.

Generic Documentation

Most of the OAuth providers in this repository can be configured by just specifying two settings: ClientId and ClientSecret.

Let's use the Slack provider as an example:

services.AddAuthentication(options => /* Auth configuration */)
        .AddSlack(options =>
        {
            options.ClientId = "my-client-id";
            options.ClientSecret = "my-client-secret";
        });

With just two settings, you can configure the Slack provider to authenticate users.

The providers all follow a convention, so you just need to add the appropriate NuGet package reference and replace the word Slack in the method name with the provider name you are integrating. So for Spotify, it would be AddSpotify().

Provider-Specific Documentation

Any providers listed here have additional configuration that is either required or optional beyond the standard built-in OAuth configuration settings.

The table below lists all of the providers that provide additional configuration and a link to a provider-specific document for that provider. If the provider you are using is not listed, it does not have any specific documentation and is covered by the section above.

Provider Required or Optional Settings Documentation Link
Amazon Optional Documentation
Apple Required Documentation
BattleNet Required Documentation
Bitbucket Optional Documentation
Discord Optional Documentation
EVEOnline Optional Documentation
Foursquare Optional Documentation
GitHub Optional Documentation
Gitee Optional Documentation
Instagram Optional Documentation
Kloudless Optional Documentation
Line Optional Documentation
LinkedIn Optional Documentation
Odnoklassniki Optional Documentation
Okta Required Documentation
Patreon Optional Documentation
QQ Optional Documentation
Reddit Optional Documentation
Salesforce Optional Documentation
StackExchange Optional Documentation
SuperOffice Required Documentation
Trakt Optional Documentation
Twitch Optional Documentation
Vkontakte Optional Documentation
Weibo Optional Documentation
WorkWeixin (WeCom) Optional Documentation