Skip to content

A lightweight, low-opinion, mini-library for social and third-party logins in ASP.NET Core.

License

Notifications You must be signed in to change notification settings

pdekkers/POPIdentity

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 

Repository files navigation

POP Identity

POP Identity is a lightweight, low-opinion, mini-library for social and third-party logins in ASP.NET Core.

Project status

v2 has shipped and is available via Nuget. Running against netstandard2.1, it has support for round-tripping to Google, Facebook, Microsoft and any generic OAuth2 service that returns a JWT.

Who is this for?

This is for people who think that the existing ASP.NET Core external login system is too much magic, or too tightly coupled to Identity and/or EntityFramework. It didn't evolve much from the old OWIN days. It has the following goals:

  • Be super light-weight, handing off just enough mundane detail to the library.
  • Allow code to change client ID's, secrets and other parameters at request time, as opposed to the built-in framework that sets this all at startup. This makes it appropriate for multi-tenant situations.
  • Allow the developer to persist the resulting data (external ID's, name, email, etc.) in whatever manner makes sense. This library has no persistence.
  • Defer authorization logic to the developer. It doesn't setup any claims identity... that's up to you.

Getting started

The sample web app in the source is the easiest way to see how this works. The HomeController has enough comments to see how best to use the framework. The goal is to be able to craft a login experience from scratch at request time, or leverage the configuration values.

POP Forums uses this library today. To learn more about that implementation, go here: https://github.com/POPWorldMedia/POPForums/wiki/External-login-configuration

Getting the bits

POP Identity is available as a Nuget package:

https://www.nuget.org/packages/PopIdentity/

CI build

https://www.myget.org/F/popidentity/api/v3/index.json

Build status

About

A lightweight, low-opinion, mini-library for social and third-party logins in ASP.NET Core.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 85.5%
  • HTML 11.4%
  • CSS 3.1%