SSOGEN / Multiple Identity Providers on One Application

SSOGEN

Multiple Identity Providers on One Application

Local accounts, a directory, SAML and OpenID Connect providers sit behind one SSOGEN sign-in page, and a policy decides which ones each application accepts.

Multiple identity providers on one application: Entra ID, Okta, Keycloak and Google Workspace behind one SSOGEN sign-in
Local accounts, directories and outside providers meet at one sign-in page.

Supporting multiple identity providers on one application is a common requirement. Take acme.example and one application, Acme Expenses, used by four groups:

  • Employees, with accounts in Microsoft Entra ID.
  • A partner, partner.example, that signs in with its own Okta.
  • A handful of contractors with no company account at all.
  • The finance team, still held in a legacy LDAP directory.

With SSOGEN you do not build four logins. You add the four sources as identity providers and allow the ones you want in the application’s policy.

The sign-in page sends each person to the right place, and the application gets one identity from SSOGEN, whichever source the person used.

This page covers the four kinds of source, how the sign-in page decides what a person sees, where each setting lives, and how to test the result before anyone signs in.

For the concepts, read what an identity provider is and how an identity broker works.

One identity provider in front of every sign-in sourcePeople can sign in through Microsoft Entra ID, Okta, a directory or local accounts. SSOGEN registers once with each application and policy decides which sources an application allows. Entra ID Microsoft Okta cloud identity Active Directory or LDAP Local accounts in SSOGEN SSOGEN one identity provider for every app SAML app trusts SSOGEN OIDC app trusts SSOGEN Web Agent app no code change policy picks the sources each app allows
One identity provider in front of every sign-in source

How it fits together

Sign-in sources on the left, SSOGEN in the middle, applications on the rightFive sign-in sources feed SSOGEN: the local database, an LDAP directory, two SAML identity providers and an OpenID Connect provider. SSOGEN passes the identity to SAML, OpenID Connect, Web Agent and Gateway applications. Each application’s authentication policy decides which sources are allowed.Local databaseLDAP or Active DirectorySAML IdP 1SAML IdP 2OpenID Connect IdP 3SAMLOpenID ConnectWeb AgentGatewaySSOGENsign-in pageauthentication policyone identity outSign-in sourcesApplication connections
Several sources in, one identity out. Which sources an application accepts is set by its policy.

The four kinds of sign-in source

SSOGEN accepts four kinds, listed in the identity provider guide. Use as many at once as you need.

Kind What the person does Who holds the password Typical use
Username and password (local accounts) Types a username and password on the SSOGEN sign-in page SSOGEN First administrator, small teams, contractors, test accounts, a way back in if another provider is down
Directory (LDAP) Types the username and password they already use at work on the SSOGEN sign-in page Your directory (Active Directory, OpenLDAP and similar) A company that keeps people in Active Directory
SAML Is sent to the other system’s own sign-in page The other system Entra ID, Keycloak, Okta, AD FS, Shibboleth, a partner’s provider
OpenID Connect Is sent to the other system, using a newer protocol The other system Entra ID, Keycloak, Google Workspace, Okta and other modern providers

In the acme.example scenario, the sources map as follows:

  • Entra ID tenant and partner’s Okta. Two SAML providers (IdP 1 and IdP 2) or an OpenID Connect provider (IdP 3), depending on what each supports.
  • Contractors. Local accounts.
  • Legacy directory. LDAP.

For protocol background, see SAML vs OpenID Connect. For the SSOGEN side of each, see SAML IdP and OpenID Connect provider.

What the sign-in page does with them

The server picks the layout once, from two facts: which providers are offered for this sign-in, and whether any of them claims an email domain.

A provider is offered only if it is active and the application’s authentication policy allows it. Providers appear in sign-in order, lowest number first.

What is offered What the person sees
Nothing “No sign-in methods are available here. Contact your administrator.”
One password provider (local or LDAP) A single form with username, password and Sign in
One SAML or OpenID Connect provider The browser goes straight to that provider, with no form
Several providers, none with sign-in domains One form with a Sign in with drop-down
Several providers, at least one with sign-in domains A Who is signing in screen with an Email or username field and Next (identifier-first)

With identifier-first sign-in, Maria types maria.lopez@acme.example. SSOGEN reads only the part after the @. It does not look the account up, so the answer is the same whether or not the account exists.

  • Password provider. If the domain belongs to one, she sees the password field.
  • SAML or OpenID Connect provider. If the domain belongs to one, her browser goes there.
  • No provider claims the domain. She gets the drop-down with every offered provider.

Other products call this home realm discovery. SSOGEN covers it in the sign-in page.

When the drop-down shows, Username and password is preselected if it is offered. Otherwise the first provider in sign-in order is. A policy option, Always make the person choose a provider, starts the drop-down empty.

What is configured where

Setting Where What it controls
The provider itself SSO Policies > Identity Providers (a directory under Identity > Directories) Connection details; a new SAML or OpenID Connect provider is a draft until validated, tested and activated
Sign-in order Provider, Configuration > Sign-in page A whole number from 0 to 10,000; lower comes first; default 100
Sign-in domains Provider, Configuration > Sign-in page Email domains routed to this provider
Sign-in restriction OpenID Connect or SAML provider, Configuration Who may sign in through the provider, by required claims
Allowed providers Authentication policy, Providers step Which providers an application accepts; at least one is needed
Second factor Authentication policy Required strength and who asks for the second step
The application Application, Authentication tab Which policy it uses

The policy decides who sees what, so one provider can appear on one application and not on another. My Apps and My Account use the Default policy. The Admin Console has its own setting.

What each provider setting controls

  • A sign-in domain belongs to one provider. Saving one already in use says “Another provider already uses domain.”
  • A provider can have up to 20 sign-in domains.
  • A domain claimed by a provider that this sign-in does not offer routes nowhere. The person gets the drop-down instead.
  • A policy with no providers refuses everybody. The application shows as Incomplete.
  • A provider in Draft, Validated, Tested, Disabled or Archived state is never offered.
  • A directory and the built-in Username and password provider have no sign-in restriction.

By default, a person who signs in through a provider for the first time gets a new SSOGEN account. A person who signs in through three providers has three accounts.

Each provider has an Account matching setting that joins a sign-in to an existing account with the same verified email address:

  • The provider needs a sign-in restriction first.
  • Only a super administrator can turn it on.
  • It never joins an administrator’s account.

Leave it off unless you trust the provider.

After sign-in

  • Provider and strength are separate. The provider someone used and how strongly they proved who they are are separate questions. The policy sets a required strength: Password or single sign-on, Plus a second factor, or Passkey or security key.
  • A weaker sign-in steps up. If a person signed in more weakly than the policy requires, SSOGEN asks for the second factor first, then continues.
  • Provider MFA can count. A provider that does multi-factor authentication itself, and says so, can meet Plus a second factor without a second prompt.
  • The policy decides who asks. The policy’s When more is needed setting decides who asks: SSOGEN, the provider again, or either. See adaptive authentication and multi-factor authentication software.
  • One connection. You connect the application to SSOGEN once, over SAML, OpenID Connect, the Web Agent or the Gateway. It gets the identity SSOGEN passes on, whichever source signed the person in.
  • Check the attributes. Attributes that depend on the provider show in the Test tab as “Supplied at sign-in by provider if asserted”. Check that each source supplies what the application needs. The authentication hub lists the rest of the sign-in features.

Test it before anyone signs in

  1. Activate each provider: Validate, Test, Activate.
  2. Open the application, then its Authentication tab, and choose the policy. The summary shows the allowed Providers.
  3. Open the application’s Test tab. Choose a person such as Maria Lopez and, under Signs in through, a provider. Select Run test.
  4. Read the checklist. Providers allowed tells you whether the policy admits at least one provider. Provider admitted tells you whether Maria’s provider is one of them, or names the provider she would have to use instead.
  5. Use What if to try other providers and strengths without signing in. Nothing is stored or sent to the application.
  6. In a private browser window, open the application and type an address in each claimed domain. Check that you land at the right provider.

If a form appears where you expected the Who is signing in screen, that application offers only one provider, or none of the offered providers has a sign-in domain.

How other products describe the same capability

Product What it does Source
Keycloak Identity brokering delegates authentication to one or more identity providers. An application can hint at a provider with the kc_idp_hint parameter; if the alias does not exist, the login form is shown. Keycloak Server Administration Guide
Microsoft Entra ID Home realm discovery uses the user principal name to find the sign-in location. Domain hints (domain_hint, whr) accelerate to a federated provider only if the tenant is federated with that domain. Only one HRD policy can be active on a service principal. Microsoft Learn
Okta Identity provider routing rules direct people by location, device, email domain, attributes or application. Active rules are evaluated and the first match applies. Routing improves sign-in but is not a security control. Okta Help Center
Auth0 Identifier-first authentication with home realm discovery sends known domains to the right enterprise login. Database connections lack it, so one custom database connection per organization is advised. Auth0 docs
SSOGEN Local, LDAP, SAML and OpenID Connect at once; domains route by the part after the @; one domain, one provider; the policy decides which are allowed per application. SSOGEN

Keycloak, Microsoft, Entra, Okta and Auth0 are trademarks of their owners. The comparison reflects each vendor’s public documentation on the dates below and is not an endorsement or a claim about product quality. Check the current pages before you decide.

Questions people ask

Who are the top SSO providers?
Microsoft Entra ID, Okta, Ping Identity, Google Workspace, OneLogin and Keycloak are widely used. SSOGEN is an SSO provider too. It can sit in front of several of these so an application trusts one party. The right pick depends on where your accounts live and which applications you protect.
What are some examples of identity providers?
Microsoft Entra ID, Okta, Keycloak, Active Directory Federation Services and Google Workspace are common examples. So is a partner company’s own sign-in system. Any system that authenticates people and tells other systems who they are is an identity provider. That includes SSOGEN with its own accounts or an LDAP directory.
What's the difference between SAML and SSO?
SSO is the goal: sign in once, reach several applications. SAML is one standard way to get there: an XML-based protocol where an identity provider sends a signed assertion to a service provider. OpenID Connect is another. Either protocol can do SSO. See SAML vs OpenID Connect.
What are the top identity providers?
Entra ID, Okta, Google Workspace, Ping Identity and Keycloak are among the most deployed. Ranking depends on whether you want a cloud service, software you run yourself, or a directory you already own. With several in play, the real question is how applications trust them together, which is what this page covers.