Skip to content

ssojet/Umbraco-SSOJet-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 umbraco-openidconnect@mailinator.com
Password AKXT9fJGqBvKCVK5TqNZ

External member credentials:

Username openidconnect-example@mailinator.com
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

SSOJet Integration

This project demonstrates integration with SSOJet, a modern OpenID Connect (OIDC) authentication provider that simplifies user authentication and single sign-on for your applications.

What is SSOJet?

SSOJet is a comprehensive authentication platform that provides:

  • OpenID Connect (OIDC) Support - Industry-standard authentication protocol
  • Easy Integration - Quick setup with any OIDC-compatible application
  • Secure Authentication - Enterprise-grade security for your users
  • User Management - Built-in user management and profile handling
  • Customizable Login Experience - Branded login pages and flows

Configuration

The Client ID and Client Secret are already configured in this example project. Normally the Client Secret should not be in Github, but these settings are only used in this demo so it's ok they are public.

Useful Resources

Getting Your Own SSOJet Account

To use SSOJet with your own Umbraco application:

  1. Sign up for a free account at https://ssojet.com
  2. Create a new application in the SSOJet dashboard
  3. Configure your redirect URIs (e.g., https://yourdomain.com/umbraco-signin-oidc)
  4. Copy your Client ID and Client Secret
  5. Update the appsettings.json file with your credentials

About

An example to show how Umbraco and SSOJet OpenIdConnect work together

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published