IDENTITY PROVIDERS
Identity Providers
Identity Providers allow users to sign in to your platform using external authentication services like Google, Microsoft, Auth0, Okta, PingOne, or any OpenID Connect (OIDC) compliant provider. This enables Single Sign-On (SSO) and simplifies user management by delegating authentication to trusted third-party services.
To manage identity providers, navigate to Identity Providers in the admin console.
Creating an Identity Provider
Click Add Identity Provider to configure a new provider. The configuration is organized into several sections:
Basic Information
Identifier: A unique lowercase identifier for this provider (e.g.,
google,azure-ad,okta-prod). This identifier is used internally and in URLs.Name: The display name shown to users on the login page (e.g., "Google", "Company SSO").
Description: Optional notes for administrators about this provider's purpose or configuration.
Type: The authentication protocol. Currently, only OIDC (OpenID Connect) is supported.
Enabled: Toggle to enable or disable the provider. Disabled providers won't appear on the login page.
OIDC Configuration
This section contains the core settings for connecting to your identity provider.
Domain
The domain of your identity provider. This is used to discover the OIDC endpoints automatically via the .well-known/openid-configuration endpoint.
Examples:
Google:
accounts.google.comMicrosoft/Azure AD:
login.microsoftonline.com/{tenant-id}/v2.0Auth0:
your-tenant.us.auth0.comOkta:
your-org.okta.comPingOne:
auth.pingone.com/{environment-id}/as
Use the Test Connection button to verify the domain is correct. A successful test displays:
Issuer URL
Authorization endpoint
Token endpoint
JWKS URI with key count
Supported signing algorithms
Client ID
The OAuth2 client identifier provided by your identity provider when you register your application.
Client Secret
The OAuth2 client secret provided by your identity provider. This value is stored securely and masked in the interface.
Authentication Method
How credentials are sent to the token endpoint:
client_secret_post (default): Client ID and secret sent in the request body
client_secret_basic: Client ID and secret sent via HTTP Basic Authentication header
none: No client authentication (for public clients using PKCE only)
Choose the method supported by your identity provider. Most providers support client_secret_post.
Scopes
The OAuth2 scopes to request during authentication. Enter scopes separated by commas or spaces.
Common scopes:
openid(required for OIDC)profile- User's name and profile informationemail- User's email addressgroups- Group memberships (if supported)offline_access- Request refresh tokens
Default recommendation: openid profile email
Callback URL
The OAuth2 redirect URI that must be configured in your identity provider. This field is read-only and automatically generated based on your platform URL:
Copy this URL and add it to the "Allowed Redirect URIs" (or similar) setting in your identity provider's application configuration.
User Provisioning
Controls how users are created and managed when they sign in through this provider.
Provisioning Mode
Auto Provision (default): Automatically create new user accounts when users sign in for the first time. User profile information is populated from the identity provider's claims.
Match Only: Only allow sign-in for users that already exist in the platform. New users will be rejected.
Allowed Domains
Restrict sign-in to users with email addresses from specific domains. Leave empty to allow all domains.
Examples:
company.com- Only allow users with @company.com emailscompany.com, subsidiary.com- Allow multiple domains
This is useful for enterprise deployments where you want to ensure only employees can access the platform.
Email Trust Mode
Determines how email verification is handled for users signing in through this provider:
Verify with Claim (default): Trust the email only if the identity provider sends an
email_verified: trueclaim. Otherwise, send a verification email.Trust IdP: Always trust emails from this provider without verification. Use this for enterprise providers where you control the user directory.
Always Verify: Always send a verification email, regardless of the provider's claims. Use this for maximum security.
Display Options
Customize how the provider appears on the login page.
Logo
Upload a logo image for the provider. This appears on the login button.
Recommended size: 64x64 pixels (for high-DPI displays)
Supported formats: PNG, JPG, SVG
Button Text
Custom text for the login button. If not specified, defaults to "Login with {Provider Name}".
Examples:
"Sign in with Google"
"Company SSO"
"Employee Login"
Attribute Mapping
Map claims from the identity provider's ID token to user profile fields. Most OIDC providers use standard claim names, but some may use custom attributes.
Username
preferred_username
User's unique identifier
email
User's email address
Name
name
User's full display name
Picture
picture
Profile photo URL
Website
website
User's website
Company
organization
Company or organization name
Location
locale
User's locale or location
Only modify these mappings if your identity provider uses non-standard claim names.
Provider-Specific Setup Guides
Google
Go to the Google Cloud Console
Create a new project or select an existing one
Navigate to APIs & Services → Credentials
Click Create Credentials → OAuth client ID
Select Web application
Add your callback URL to Authorized redirect URIs
Copy the Client ID and Client Secret
Configuration:
Domain:
accounts.google.comScopes:
openid profile email
Microsoft / Azure AD
Go to the Azure Portal
Navigate to Azure Active Directory → App registrations
Click New registration
Enter a name and select the appropriate account types
Add your callback URL as a Redirect URI (Web platform)
After creation, copy the Application (client) ID
Go to Certificates & secrets → New client secret
Copy the secret value
Configuration:
Domain:
login.microsoftonline.com/{tenant-id}/v2.0Use
commonfor multi-tenant appsUse your specific tenant ID for single-tenant apps
Scopes:
openid profile email
Auth0
Go to your Auth0 Dashboard
Navigate to Applications → Create Application
Select Regular Web Application
Go to the Settings tab
Add your callback URL to Allowed Callback URLs
Copy the Domain, Client ID, and Client Secret
Configuration:
Domain:
your-tenant.us.auth0.com(or your custom domain)Scopes:
openid profile email
Okta
Go to your Okta Admin Console
Navigate to Applications → Create App Integration
Select OIDC - OpenID Connect and Web Application
Add your callback URL to Sign-in redirect URIs
Copy the Client ID and Client Secret
Configuration:
Domain:
your-org.okta.comScopes:
openid profile email
PingOne
Go to your PingOne Admin Console
Navigate to Connections → Applications
Create a new OIDC Web App
Add your callback URL to the redirect URIs
Copy the Client ID and Client Secret
Note your Environment ID
Configuration:
Domain:
auth.pingone.com/{environment-id}/asScopes:
openid profile email
Custom OIDC Provider
Any OIDC-compliant identity provider can be configured:
Register an application/client in your provider
Configure the callback URL as an allowed redirect URI
Obtain the Client ID and Client Secret
Find the OIDC discovery URL (usually
https://provider/.well-known/openid-configuration)Extract the domain from the issuer URL
Use the Test Connection button to verify your configuration is correct before saving.
Enabling Federated Login
After configuring identity providers, you must enable federated login for users to see the providers on the login page.
Navigate to Settings → Accounts
In the Authentication section, enable Federated Login
Select which identity providers should be available
Save your settings
The login page will now display the configured providers in the "Or continue with" section.
Note: Federated login can also be enabled at the brand level, allowing different brands to have different identity provider configurations.
User Experience
Signing In
When federated login is enabled, users see additional sign-in options on the login page:
Click the provider button (e.g., "Sign in with Google")
Redirect to the identity provider's login page
Authenticate with the provider (may include the provider's own MFA)
Redirect back to the platform
User is signed in (or account is created if auto-provisioning is enabled)
Linking Accounts
Existing users can link their account to an identity provider:
Sign in with username/password
Go to Account → Security
In the Connected Accounts section, click to link a provider
Authenticate with the provider
The account is now linked
Managing Connected Accounts
Users can view and manage their connected accounts in the Security settings:
View all linked identity providers
See the email associated with each provider
See when each account was linked
Unlink providers (with restrictions - see below)
Unlinking Restrictions
To maintain account access, users cannot unlink an identity provider if:
It's their only authentication method, AND
They don't have a password set
Users must either set a password or link another provider before unlinking.
Troubleshooting
Connection Test Fails
Verify the domain is correct and accessible
Check that the OIDC discovery endpoint is publicly accessible
Ensure there are no firewall rules blocking the connection
Invalid Client Error
Verify the Client ID and Client Secret are correct
Check that the callback URL matches exactly what's configured in the provider
Ensure the application is not disabled in the provider's console
User Not Created
Check the provisioning mode - if set to "Match Only", users must exist beforehand
Verify allowed domains if domain restrictions are configured
Check the email trust mode settings
Claims Not Mapping
Use the provider's token debugger to inspect the actual claims
Update attribute mapping to match the provider's claim names
Ensure requested scopes include the claims you need
Redirect Loop
Verify the callback URL is correctly configured in both the platform and provider
Check for cookie/session issues in the browser
Ensure HTTPS is properly configured
Last updated