Skip to content

jbreuer/Umbraco-OpenIdConnect-Example

Repository files navigation

Umbraco OpenID Connect example package

This example shows how OpenID Connect can be used for members in Umbraco. It's a complete Umbraco solution with a SQLite database. Everything is already configured correct so you can just download the project and run it.

It's based on the external login providers documentation:
https://docs.umbraco.com/umbraco-cms/reference/security/external-login-providers

There are two versions of this example. The v13 version can be found in Umbraco-OpenIdConnect-Example.Web, which references Umbraco-OpenIdConnect-Example.Core. The v14+ version has been completely rebuilt and can be found in Umbraco-OpenIdConnect-Example-v14+, offering full compatibility with Umbraco v14 and above.

Backoffice credentials:

Username [email protected]
Password AKXT9fJGqBvKCVK5TqNZ

External member credentials:

Username [email protected]
Password juSp#&uf4a+omLkigIto

Tip

I also created a fork of the Umbraco Delivery API - member auth demo. It adds support for external login providers. See this pull request for all the changes. You can also find more info in this blog.

Getting started

You can watch a getting started video here: https://youtu.be/cklH7DtRDIQ

Online presentation

You can watch my online presentation here: https://youtu.be/I4ysh-czrYk

Important files

All important files that are used for this setup are in the Umbraco-OpenIdConnect-Example.Core project.

  1. OpenIdConnectMemberExternalLoginProviderOptions.cs
    This file is used to setup the auto link options.
  2. UmbracoBuilderExtensions.cs
    Extensions used to setup OpenID Connect and the related events.
  3. ExternalLogoutController.cs
    A new controller used for logout on the external login provider.

Short demo

Umbraco OpenID Connect demo

Auth0

There is a free Auth0 account that this project connects with. The Client ID and Client Secret are already configured for that. Normally the Client Secret should not be in Github, but these settings are only used in this example so it's ok they are public. This is the project:

About

An example to show how Umbraco and OpenIdConnect work together

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published