Configuration and Setup
  • 01 May 2024
  • 2 Minutes to read

Configuration and Setup


Article summary

Introduction

This guide provides a step-by-step process for configuring and setting up the Abblix OpenID Connect (OIDC) Server in your .NET project. Specifically designed for customers with a commercial license, this guide aims to streamline the installation and licensing steps to ensure a seamless integration. Regardless of exactly how you choose to embed your license, this guide will walk you through it, ensuring your project is up and running with Abblix OIDC Server quickly and safely.

Install Abblix NuGet Package

Abblix delivers its OIDC Server as a set of NuGet packages available on nuget.org. This method ensures easy integration and management, allowing you to quickly include the server components in your .NET project.

  • Open a terminal or command prompt in the root directory of your solution.
  • Run the following command to install the package:
dotnet add package Abblix.OIDC.Server.Mvc

or for a specific version:

dotnet add package Abblix.OIDC.Server.Mvc --version <version_number>
  • This will add the package reference directly to your project file.

Apply the License

There are several different options to apply your Abblix OIDC Server license. You can choose the most convenient:

Use Inline License Configuration

This method involves setting the license key directly in your application's startup configuration. You can obtain the license key from any source (i.e., configuration file or other sources) and set it as shown below:

  • In your application's startup configuration (e.g., Program.cs or equivalent), add the following code:
    builder.Services.AddOidcServices(options =>
    {
        options.LicenseJwt = "<your_license_key_here>";
    });
    

The advantage of this approach is its simplicity, making it suitable for quick integration.

Implement ILicenseJwtProvider

This method provides more flexibility by allowing you to implement the ILicenseJwtProvider interface to dynamically obtain the license.
The custom implementation of ILicenseJwtProvider can rely on services configured during startup to obtain the license.
Additionally, it supports loading multiple licenses simultaneously, enabling seamless migration from an old license to a new one if both are loaded.

  • Create a new class that implements the ILicenseJwtProvider interface:

    using System.Collections.Generic;
    using Abblix.Oidc.Server;
    using Abblix.Oidc.Server.Features.Licensing;
       
    public class CustomLicenseJwtProvider : ILicenseJwtProvider
    {
        public async IAsyncEnumerable<string>? GetLicenseJwtAsync()
        {
            // Retrieve the license JWT(s), for example, from environment variables or configuration
            var licenseJwt = Environment.GetEnvironmentVariable("ABBLIX_OIDC_LICENSE_KEY");
            yield return licenseJwt;
        }
    }
    
  • In your application's startup configuration, add the following code to register the custom provider in Dependency Injection:

    builder.Services.AddSingleton<ILicenseJwtProvider, CustomLicenseJwtProvider>();
    builder.Services.AddOidcServices();
    

Finalizing the Setup

Verify Setup:

  • Ensure the application runs without any licensing errors.
  • Check if the server features and functionalities specific to the commercial license are accessible.

Your sentence is mostly clear, but here's a slightly refined version for better flow and clarity:

For advanced configurations, please refer to our support team for technical assistance.