AspNet.Security.OAuth.LinkedIn 10.0.0

dotnet add package AspNet.Security.OAuth.LinkedIn --version 10.0.0
                    
NuGet\Install-Package AspNet.Security.OAuth.LinkedIn -Version 10.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AspNet.Security.OAuth.LinkedIn" Version="10.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AspNet.Security.OAuth.LinkedIn" Version="10.0.0" />
                    
Directory.Packages.props
<PackageReference Include="AspNet.Security.OAuth.LinkedIn" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AspNet.Security.OAuth.LinkedIn --version 10.0.0
                    
#r "nuget: AspNet.Security.OAuth.LinkedIn, 10.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AspNet.Security.OAuth.LinkedIn@10.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AspNet.Security.OAuth.LinkedIn&version=10.0.0
                    
Install as a Cake Addin
#tool nuget:?package=AspNet.Security.OAuth.LinkedIn&version=10.0.0
                    
Install as a Cake Tool

AspNet.Security.OAuth.Providers

AspNet.Security.OAuth.Providers is a collection of security middleware that you can use in your ASP.NET Core application to support social authentication providers like GitHub, Twitter/X or Dropbox. It is directly inspired by Jerrie Pelser's initiative, Owin.Security.Providers.

The latest official release can be found on NuGet and the nightly builds on MyGet.

Build status

While the aspnet-contrib providers are still fully supported, developers are encouraged to use the OpenIddict client for new applications.

For information, see the Migrating to OpenIddict section.

Getting started

Adding social authentication to your application is a breeze and just requires a few lines in your Startup class:

public void ConfigureServices(IServiceCollection services)
{
    services.AddAuthentication(options => { /* Authentication options */ })
            .AddGitHub(options =>
            {
                options.ClientId = "49e302895d8b09ea5656";
                options.ClientSecret = "98f1bf028608901e9df91d64ee61536fe562064b";
            });
}

public void Configure(IApplicationBuilder app)
{
    app.UseAuthentication();
    app.UseAuthorization();
}

See the /samples directory for a complete sample using ASP.NET Core MVC and supporting multiple social providers.

Contributing

AspNet.Security.OAuth.Providers is actively maintained by:

We would love it if you could help contributing to this repository.

Special thanks to our contributors:

Security policy

Please see SECURITY.md for information about reporting security issues and bugs.

Support

Need help or wanna share your thoughts? Don't hesitate to join us on Gitter or ask your question on StackOverflow:

License

This project is licensed under the Apache License. This means that you can use, modify and distribute it freely. See https://www.apache.org/licenses/LICENSE-2.0.html for more details.

Migrating to OpenIddict

The OpenIddict client and its 100+ web providers have significant advantages over the simpler OAuth 2.0-only authentication handler that is used by the aspnet-contrib providers:

  • OpenIddict fully supports OpenID Connect, which allows enforcing additional security checks for providers that implement it.
  • The OpenIddict client is stateful and provides built-in countermeasures against nonce/token replay attacks.
  • While the aspnet-contrib providers only support the OAuth 2.0 code flow, the OpenIddict providers support additional flows, including the OpenID Connect hybrid flow, the OAuth 2.0 client credentials grant, the resource owner password credentials grant or the refresh token grant.
  • The OpenIddict client supports OAuth 2.0 token introspection and OAuth 2.0 token revocation.
  • OpenIddict uses OAuth 2.0 and OpenID Connect server configuration discovery to avoid hardcoding the endpoint URIs of a provider when possible, making the OpenIddict web providers more robust and more future-proof.
  • While the aspnet-contrib providers require targeting the latest ASP.NET Core version, the OpenIddict web providers can be used in any supported version. They can also be used in ASP.NET 4.6.1+ websites and Windows/Linux desktop applications.
  • OpenIddict uses Microsoft.Extensions.Http.Polly (or Microsoft.Extensions.Http.Resilience on .NET 8+) to make backchannel HTTP communications less prone to transient network errors.

For more information on how to get started with the OpenIddict web providers, you can read:

To contribute a new OpenIddict provider, visit Contributing a new Web provider.

Providers

Links to the latest stable and nightly NuGet packages for each provider, as well as a link to their integration documentation are listed in the table below.

Documentation for the providers' settings can be found here.

If a provider you're looking for does not exist, consider making a PR to add one.

Provider Stable Nightly Documentation
AdobeIO NuGet MyGet Documentation
Airtable NuGet MyGet Documentation
Alipay NuGet MyGet Documentation
Amazon NuGet MyGet Documentation
amoCRM NuGet MyGet Documentation
Apple NuGet MyGet Documentation
ArcGIS NuGet MyGet Documentation
Asana NuGet MyGet Documentation
Atlassian NuGet MyGet Documentation
Autodesk NuGet MyGet Documentation
Baidu NuGet MyGet Documentation
Basecamp NuGet MyGet Documentation
BattleNet NuGet MyGet Documentation
Bilibili NuGet MyGet Documentation
Bitbucket NuGet MyGet Documentation
Buffer NuGet MyGet Documentation
Calendly NuGet MyGet Documentation
CiscoSpark (Webex Teams) NuGet MyGet Documentation
Coinbase NuGet MyGet Documentation
Contentful