Skip to content

Lawrence2013/Thinktecture.IdentityServer.v3

 
 

Repository files navigation

Thinktecture IdentityServer v3

Current status: Beta 4

Build status ![Gitter](https://badges.gitter.im/Join Chat.svg)

Overview

IdentityServer is a framework and a hostable component that allows implementing single sign-on and access control for modern web applications and APIs using protocols like OpenID Connect and OAuth2. It supports a wide range of clients like mobile, web, SPAs and desktop applications and is extensible to allow integration in new and existing architectures.

OpenID Connect specification / OAuth2 specification

Also check out my Introduction to OpenID Connect, OAuth2 and IdentityServer talk from NDC Oslo 2014.

Getting started

We currently don't provide a setup tool or a UI, but IdentityServer is remarkably easy to setup. Start with downloading/cloning the repo. Open the solution in Visual Studio and start it. Use the various clients in the samples repository to exercise the various flows. Also check the wiki for more information.

IdSrv3 is designed as an OWIN/Katana component. The following configuration (in the host project) gives you a minimal implementation with in-memory repositories and user authentication.

public void Configuration(IAppBuilder appBuilder)
{
    var factory = InMemoryFactory.Create(
        users:   Users.Get(), 
        clients: Clients.Get(), 
        scopes:  Scopes.Get());

    var options = new IdentityServerOptions
    {
        IssuerUri = "https://idsrv3.com",
        SiteName = "Thinktecture IdentityServer v3"

        SigningCertificate = Certificate.Get(),
        Factory = factory,
    };

    appBuilder.UseIdentityServer(options);
}

You can find a test signing certificate and setup instructions in the certificates folder in the samples repository.

The host samples shows other configuration options, including

  • support for MembershipReboot and ASP.NET Identity based user stores
  • support for additional Katana authentication middleware (e.g. Google, Twitter, Facebook etc)
  • support for EntityFramework based persistence of configuration
  • support for WS-Federation

Related repositories

Credits

IdentityServer is built using the following great open source projects:

thanks to all contributors!

About

OpenID Connect and OAuth2 Security Token Service and Authorization Server

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 57.6%
  • JavaScript 35.1%
  • CSS 6.4%
  • HTML 0.6%
  • PowerShell 0.2%
  • Smalltalk 0.1%