User portal SSO

LicenseSpring supports two main end-user authentication scenarios:

  • User Portal SSO

    The User Portal is a hosted interface provided by LicenseSpring where end users can:

    • View and manage their licenses

    • Access self-service tools (e.g., license transfers, device resets)

    With SSO enabled, users can sign in to this portal using their organization’s identity provider, without needing separate LicenseSpring credentials.

  • License Activation via SSO

    When SSO is enabled for license activation, end users authenticate with your IdP before activating a license. This ensures licenses are securely tied to verified user identities, and that only authorized users can activate or use your software.

    This method is supported via the LicenseSpring SDKs and API, and is particularly useful for:

    • Subscription-based licensing models

    • User based licensing

    • Restricting license access to organizational members

The next section explains how to access and configure SSO settings for these scenarios within the LicenseSpring Vendor Platform.

circle-info

Please note that license users SSO (Single Sign On) is only available on Enterprise plan. It allows using Single Sign On method for license activation.

Setup Single Sign On

LicenseSpring supports end-user Single Sign-On (SSO) through Customer Accounts, allowing software vendors to authenticate users within the context of a specific customer organization.

Each Customer Account can be linked to its own identity provider (IdP), enabling tailored SSO configurations for different enterprise clients. By associating SSO with Customer Accounts, LicenseSpring ensures that license access and portal authentication are securely scoped to the correct organization.

Follow the steps below to access the SSO configuration view:

1

Access the Vendor Platform and Customer Accounts

  • Log in to the Vendor Platform: Go to https://saas.licensespring.com and sign in with your admin credentials.

  • Navigate to Customer Accounts on the sidebar.

  • Select an existing customer account or create a new one using the "Add new account" button.

2

Open Single Sign On Tab

  • Select the customer account you want to configure.

  • Click the "Single Sign On" tab for that customer account.

Single Sign On Tab
3

Add a Provider

  • Click "Add Provider".

  • You will be prompted to enter details based on your IdP’s protocol (SAML or OIDC).

Add Provider Button

Depending on your selected Identity Provider, you will need to submit the appropriate information:

  • SAML: Name and .xml provider metadata file

  • Google: Name, Client ID, Client Secret

  • Apple: Service ID, Key ID, Team ID and .p8 key file

Add SSO Provider form
circle-info

You can use only one provider at time; if you wish to switch to another, first delete the old one then follow the setup guide to add the new provider.

4

Activate and Collect Setup Data

  • In the Single Sign On tab you can activate SSO and gather any necessary data to ensure its seamless setup and operation.

Account Linking and Verification

Account Linking

LicenseSpring automatically links accounts if the email in our system matches the email from the IdP. If no match is found, the user is presented with a login prompt to link their existing LicenseSpring account.

The settings toggle Require email verification on first SSO login can be enabled to require email verification before linking an account.

  • If the toggle is ON, then when you create a user they must verify their email before they can log in.

  • If the toggle is OFF, email verification is not required for the user to log in.

  • For platform users, email verification is always required due to account sensitivity.

Instructions on how to register your application to acquire required information are described below.

Redirect URI

When configuring SSO for license activation, the redirect_uri should be a local endpoint within your application that is capable of receiving and processing the authentication response from your identity provider. This URI must be registered with the IdP and securely handle the token or authorization code required to complete the sign-in and license activation flow.

With the latest SDK versions, you can configure multiple redirect URIs per application, allowing you to handle different environments while using the same SSO integration.

redirect_uri is only relevant for applications that use the SDK and allow licensed users to use SSO instead of email/password for authentication. Otherwise, everything else redirects back to the user portal.

Extracting the Company Code

You will need the Company code to successfully register your application in your identity provider dashboard. To find your company code:

  • In the LicenseSpring vendor platform navigate to Settings → Preferences

  • Check the Company code field (example: DSE2)

Company code

Extracting the Customer Account Code

You will also need the Customer account code to register your application in your identity provider dashboard. To find the customer account code:

  • In the LicenseSpring vendor platform navigate to the Customer Account page for which you want to setup SSO

  • Check the code field (example: test678)

Customer Account page

Integrating Social Identity Providers

Before setting up a social IdP, register your application with the respective IdP to acquire a client ID and client secret.

Google (OAuth / OIDC)

1
  1. Create a developer account at https://developers.google.com/identity if you haven't already.

  2. Access the OAuth consent screen: https://console.cloud.google.com/apis/credentials/consent

  3. Create a New Project (project dropdown → New Project). Name it and click Create.

  4. Set Up OAuth Consent Screen:

    • Choose "External" and click Create.

    • Fill required fields like Application name and User support email.

    • Configure scopes (e.g., .../auth/userinfo.email, .../auth/userinfo.profile, openid).

    • Add test users and save.

2

Create OAuth 2.0 Credentials

  • Go to the Credentials tab, click Create Credentials → OAuth 2.0 Client ID.

  • Select "Web application".

  • Name the OAuth client (e.g., MyClient).

  • Add Authorized JavaScript origins: https://auth.licensespring.com (optionally users.licensespring.com).

  • Add Authorized redirect URI: https://auth.licensespring.com/realms/user-portal/broker/{COMPANY_CODE}-{CUSTOMER_ACCOUNT_CODE}/endpoint (example: https://auth.licensespring.com/realms/user-portal/broker/tbc-ssoacc/endpoint)

  • Click Create and copy Client ID and Client Secret.

Return to the Add SSO Provider form in the LicenseSpring vendor platform and complete the setup.

Apple (Sign in with Apple)

1

Register in Apple Developer Console

  • Go to Apple Developer Console: https://developer.apple.com/account

  • Create or enroll an Apple Developer account if needed.

2

Create App ID and Enable Sign in with Apple

  • Navigate to Certificates, Identifiers & Profiles → Identifiers → + to create a new App ID.

  • Choose "App IDs", enter a description and bundle ID (e.g., keycloak).

  • Under Capabilities enable "Sign in with Apple".

  • Register and enable Sign in with Apple as needed.

Apple App ID
3

Create a Service ID

  • Under Identifiers → + create a new Service ID (e.g., keycloak-service).

  • Edit the Service ID, enable "Sign in with Apple", and configure Return URLs: https://auth.licensespring.com/realms/user-portal/broker/{COMPANY_CODE}-{CUSTOMER_ACCOUNT_CODE}/endpoint e.g. https://auth.licensespring.com/realms/user-portal/broker/tbc-tas/endpoint

  • Add Domains and Subdomains (without http/https): auth.licensespring.com

Apple Service ID
  • Add the primary App ID as the Primary App ID and click Save.

4

Create a Key for Apple Sign-In

  • Navigate to Keys → + to create a new key.

  • Enable "Sign in with Apple", Configure, select Primary App ID and Register.

  • Download the .p8 key file (you cannot download it again).

  • Note down your Team ID and Key ID from the developer account.

  • Keep the Service ID (e.g., keycloak-service) and key file ready.

Return to the Add SSO Provider form in the LicenseSpring vendor platform and finish the setup.

circle-exclamation

Incorporating SAML Identity Providers

Azure Active Directory (SAML)

1

Create Enterprise Application in Azure

  1. Access Azure Portal: https://portal.azure.com/

  2. Choose Enterprise Applications → Add an enterprise application.

  3. Create your own application, provide a name, and select the non-gallery option.

  4. Select Single sign-on → SAML.

2

Configure Basic SAML Settings

  • Edit Basic SAML Configuration:

    • Identifier (Entity ID): https://auth.licensespring.com/realms/user-portal

    • Reply URL (Assertion Consumer Service URL): https://auth.licensespring.com/realms/user-portal/broker/{COMPANY_CODE}-{CUSTOMER_ACCOUNT_CODE}/endpoint e.g. https://auth.licensespring.com/realms/user-portal/broker/tbc-tas/endpoint

  • Save and close.

3

Set Attributes & Claims

  • Ensure Unique User Identifier (Name ID) is set to user.mail.

  • We use email as the NameID. If UserPrincipalName (UPN) is not the user’s primary email in the platform, update it accordingly (important when users have multiple aliases).

  • Download Federation Metadata XML and provide the provider name and the downloaded metadata (.xml) in the Add SSO Provider form.

triangle-exclamation

To resolve the common Azure SSO error:

1
  1. In the Azure Active Directory Admin Center, select your app, then choose the application to which you want to assign the user account.

2
  1. In the left pane select Users and Groups and then select Add User/Group.

3
  1. On the Add Assignment pane, click None Selected under Users and Groups, search for and select the user to assign, then click Select.

4
  1. On the Add Assignment pane, select Assign at the bottom.

5
  1. After completing these steps the user should be able to sign in using SSO.

circle-exclamation

Upload the downloaded .xml file by choosing SAML for AuthO and confirm to add it. Return to Add SSO Provider in the LicenseSpring platform and finish the setup.

Auth0 (SAML)

1

Create an Auth0 Application

  • Log in to https://manage.auth0.com/dashboard/

  • Applications → Create Application → provide a name (e.g., My App)

  • Choose Single Page Web Applications as the type and Create.

2

Create a Test User

  • User Management → Users → + Create User (input email and password) → Save.

3

Configure SAML Addon

  1. Applications → select your app → Addons tab → activate SAML2 Web App.

  2. In Addon Settings:

    • Application Callback URL: https://auth.licensespring.com/realms/user-portal/broker/{COMPANY_CODE}-{CUSTOMER_ACCOUNT_CODE}/endpoint

    • For minimal settings configure email as the NameID with the following (example) JSON:

  1. Optionally Debug by logging in as the test user.

  2. Enable and Save the addon.

  3. On the Usage tab download the Identity Provider Metadata (.xml).

  4. Return to Add SSO Provider in the LicenseSpring platform and finish the setup.

Okta (SAML)

1

Create SAML Integration in Okta

  • Log in to Okta Developer Console: https://developer.okta.com/login/

  • Applications → Create App Integration → Choose SAML 2.0 → Next

  • Enter app name → Next

2

Configure SAML Settings

  • Single sign on URL: https://auth.licensespring.com/realms/user-portal/broker/{COMPANY_CODE}-{CUSTOMER_ACCOUNT_CODE}/endpoint e.g. https://auth.licensespring.com/realms/user-portal/broker/tbc-tas/endpoint

  • Audience URI (SP Entity ID): https://auth.licensespring.com/realms/user-portal/broker/{COMPANY_CODE}-{CUSTOMER_ACCOUNT_CODE}/endpoint

  • Ensure NameID Format is EmailAddress (General tab).

  • Leave other defaults or adjust as needed → Next → Finish.

3

Assign Users and Get IdP Metadata

  • Assign users under the Assignments tab → Assign to People → select user → Save.

  • On the Sign On tab find Identity Provider metadata. Right-click and copy the URL or use "View SAML setup instructions" to save the IDP metadata into an .xml file.

  • Upload the .xml file in the Add SSO Provider form and complete the setup.

circle-exclamation

OpenID Connect (OIDC) Integration

LicenseSpring supports SSO via OpenID Connect (OIDC). Customers may integrate any IdP that supports the Authorization Code Flow, including:

  • Azure Active Directory (Entra ID)

  • Okta

  • Auth0

  • Google Identity

This allows organizations to authenticate users with their own identity system while LicenseSpring handles user provisioning and access control.

OIDC Redirect URI

Every OIDC provider must be configured to redirect authentication responses to the following URL:

https://auth.licensespring.com/realms/user-portal/broker/{company_code}-{customer_account_code}/endpoint

Replace {company_code} with the company code assigned to your organization in LicenseSpring. This redirect URI must match exactly in your identity provider configuration.

Google Identity (OIDC)

Steps summary:

  • Go to https://console.cloud.google.com

  • APIs & Services → Credentials → Create Credentials → OAuth client ID

  • Application type: Web Application

  • Authorized JavaScript origins: https://auth.licensespring.com

  • Authorized redirect URI: https://auth.licensespring.com/realms/user-portal/broker/{company_code}-{customer_account_code}/endpoint

  • Create and copy Client ID and Client Secret

  • Ensure OAuth Consent Screen is configured and published

Metadata URL: https://accounts.google.com/.well-known/openid-configuration

Google Metadata

Microsoft Azure AD (Entra ID) — OIDC

Steps summary:

  • Azure Portal: https://portal.azure.com

  • Microsoft Entra ID → App registrations → New registration

    • Important: create App registrations (not Enterprise Application)

  • Enter a name (e.g., LicenseSpring OIDC)

  • Supported account types: Accounts in this organizational directory only

  • Add Redirect URI (Web): https://auth.licensespring.com/realms/user-portal/broker/{company_code}-{customer_account_code}/endpoint

  • Register and copy Application (client) ID and Directory (tenant) ID

  • Certificates & secrets → New client secret → copy the Client Secret Value

  • Confirm redirect URI under Authentication

  • (Optional) Assign users/groups to the application

Metadata URL: https://login.microsoftonline.com/{tenant_id}/v2.0/.well-known/openid-configuration

Azure will autofill Authorization URL, Token URL, JWKS, Issuer.

Okta (OIDC)

Steps summary:

  • Log in to Okta Admin

  • Applications → Create App Integration

  • Sign-in method: OIDC, Application type: Web Application

  • Add Sign-in redirect URI: https://auth.licensespring.com/realms/user-portal/broker/{company_code}-{customer_account_code}/endpoint

  • (Optional) Sign-out redirect URI

  • Assign application to users/groups

  • Copy Okta domain, Client ID, Client Secret

Metadata URL: https://{okta_domain}/oauth2/default/.well-known/openid-configuration

Example domain: https://dev-12345678.okta.com

Auth0 (OIDC)

Steps summary:

  • Log in: https://manage.auth0.com

  • Applications → Create Application → Regular Web Application

  • Settings → Allowed Callback URLs: https://auth.licensespring.com/realms/user-portal/broker/{company_code}-{customer_account_code}/endpoint

  • (Optional) Add Allowed Logout URLs

  • Copy Domain, Client ID, Client Secret

  • Save changes

Metadata URL: https://{tenant}.auth0.com/.well-known/openid-configuration Example tenant: https://dev-123abc45.auth0.com

Required OIDC Information

All required metadata is available in the well-known OpenID configuration (/.well-known/openid-configuration) which you can import, or you can fill manually if needed.

Configuration Steps on Platform

Navigate to Platform → Settings → Customer Accounts → Single Sign-On and then:

1
  • Click Add SSO Provider

  • Select OpenID Connect (OIDC)

2
  • Enter required fields (Client ID, Client Secret, import well-known configuration or enter manually)

  • Enable (recommended): ✓ Create new platform user if it does not exist

  • Save the configuration

  • Use the SSO login on your next sign-in

OIDC Setup

Login to the User Portal using SSO

Once you have added your identity provider to the customer account SSO settings, every license user and license manager assigned to this customer account can log in to the user portal.

User portal URL: https://users.licensespring.com

The SSO login process is the same as for the vendor platform SSO. On the login screen click the Change Login Method button and select Single Sign-on (SSO). A prompt will ask for the customer account code and company code — enter the codes you extracted in previous steps.

SSO Login Without Subdomain

User portal subdomains for Enterprise accounts

For Enterprise accounts, we host the user portal on a company-code subdomain. This removes the requirement for users to input their company code during login.

Access via: https://{company_code}.users.licensespring.com

By navigating to the custom subdomain (e.g., https://company_code.users.licensespring.com), users are automatically linked to their respective customer accounts and do not need to input customer code.

User portal subdomain

License API Authentication

If you plan to use the License API directly to authenticate users using Single Sign-on instead of username/password, follow these steps.

Get Single Sign On Hosted UI URL

The /api/v4/sso_url endpoint returns the URL where the hosted login UI is served. To create the correct URL you need to use:

  • customer_account_code of the customer account for which the user pool and providers have been created

  • product_short_code of the product defined in LicenseSpring

Details for this endpoint are written in the Single Sign-On URL page. Use the URL from the response to open the hosted UI through which your users can login. Details for this endpoint are written in Single Sign On URL. Use the URL from the response to open the hosted UI through which your users can log in.

Extract the id_token or code from the redirect_url and Activate the License

After successful login on the hosted UI, users will be redirected to the URL from redirect_uri. The response will include query parameters such as id_token or code (if using Authorization Code Grant).

Along with the customer_account_code, send this value to the Activate License (Online Method) endpoint. The license user needs to be assigned to the license being activated.

circle-info

Our SDKs support SSO license activation natively. See Single Sign Onarrow-up-right.

If you require assistance or have custom SSO requirements, please contact LicenseSpring Supportarrow-up-right.

Last updated

Was this helpful?