Current status: Beta 1
IdentityServer v3 is a .NET-based open source implementation of an OpenID Connect and OAuth2 security token service.
OpenID Connect specification / OAuth2 specification
Also check out my Introduction to OpenID Connect, OAuth2 and IdentityServer talk from NDC Oslo.
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 - preview 1 (SelfHost)"
SigningCertificate = Certificate.Get(),
Factory = factory,
};
appBuilder.UseIdentityServer(options);
}
You can find the CN=idsrv3test certificate and setup instructions in the certificates folder in the samples repository.
The host samples shows other configuration options
- 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
- Samples
- MembershipReboot support
- ASP.Net Identity support
- EntityFramework support
- WS-Federation plugin
IdentityServer is built using the following great open source projects:
- ASP.NET Web API
- Autofac
- Json.Net
- Thinktecture IdentityModel
- ILMerge
- DH.Logging
- Katana
thanks to all contributors!