Generic OIDC Setup
Configure single sign-on with any OpenID Connect provider
Generic OIDC Setup
This guide covers configuring SSO with any OpenID Connect (OIDC) compatible identity provider. Use this for Okta, Auth0, Google Workspace, Ping Identity, or any other OIDC provider.
For Microsoft Entra ID specifically, use our dedicated Entra ID guide for step-by-step Azure Portal instructions.
Prerequisites
Before you begin, ensure you have:
- Admin access to your identity provider
- Organization owner or admin role in Securtea
- Your organization's email domain (e.g.,
yourcompany.com)
Step 1: Create Application in Your IdP
In your identity provider's admin console, create a new application:
Application Settings
| Setting | Value |
|---|---|
| Application type | Web Application |
| Name | Securtea (or your preferred name) |
| Sign-in method | OpenID Connect |
Redirect URI
Add the following redirect URI to your application:
https://app.securtea.io/api/auth/sso/callback/oidc-{your-org-slug}
Replace {your-org-slug} with your Securtea organization's slug.
Example: If your org slug is acme-corp:
https://app.securtea.io/api/auth/sso/callback/oidc-acme-corp
You can find the exact callback URL in Securtea's SSO configuration page.
Grant Types
Enable the following OAuth grant types:
- Authorization Code - Required
- Refresh Token - Optional but recommended
Scopes
Request the following OIDC scopes:
openid- Required for OIDCemail- Required for user identificationprofile- Required for user name/attributes
Step 2: Gather IdP Configuration
After creating the application, collect these values from your IdP:
| Value | Where to Find | Example |
|---|---|---|
| Issuer URL | Provider settings or well-known endpoint | https://your-domain.okta.com |
| Client ID | Application settings | 0oa1bcde2fghi3jkl4m5 |
| Client Secret | Application credentials | AbCdEf123456... |
Finding the Issuer URL
The issuer URL is your IdP's base URL for OIDC. Common formats:
| Provider | Issuer URL Format |
|---|---|
| Okta | https://your-domain.okta.com |
| Auth0 | https://your-tenant.auth0.com/ |
https://accounts.google.com | |
| Ping Identity | https://auth.pingone.com/{environmentId}/as |
| Keycloak | https://your-server/realms/{realm} |
You can verify by checking the discovery endpoint:
{issuer}/.well-known/openid-configuration
Step 3: Configure SSO in Securtea
Navigate to SSO Settings
- Sign in to your Securtea dashboard
- Go to Settings > Organization > SSO Authentication
- Select the OIDC tab
Enter Configuration
Complete the form with the values from Step 2:
Email Domain
Enter your organization's email domain (e.g., yourcompany.com).
Users with this email domain will be redirected to your IdP for authentication.
Issuer URL
Enter the issuer URL from your identity provider.
Examples:
- Okta:
https://acme-corp.okta.com - Auth0:
https://acme-corp.auth0.com/
Client ID
Paste the client ID from your IdP application settings.
Client Secret
Paste the client secret from your IdP application credentials.
The client secret is stored securely and never displayed after saving.
Save Configuration
Click Configure OIDC to save your settings.
Step 4: Test the Connection
After saving:
- Locate the Test Connection section
- Click Test
- Securtea will verify:
- The issuer URL is reachable
- OIDC discovery succeeds
- Credentials are valid
Review the results:
- Success - Your configuration is working
- Failed - Check the error message and review your settings
Provider-Specific Notes
Okta
Application Type: Select "Web Application" when creating the app.
Issuer URL: Use your Okta domain without any path:
https://your-domain.okta.com
Scopes: Okta includes standard OIDC scopes by default.
Auth0
Application Type: Select "Regular Web Application".
Issuer URL: Include the trailing slash:
https://your-tenant.auth0.com/
Connections: Ensure your Auth0 application is connected to your user directory.
Google Workspace
Project Setup: Create a project in Google Cloud Console.
OAuth Consent Screen: Configure the consent screen before creating credentials.
Issuer URL: Always use:
https://accounts.google.com
Scopes: Add openid, email, and profile to your OAuth consent screen.
Ping Identity / PingOne
Application Type: OIDC Web App
Issuer URL: Format includes environment ID:
https://auth.pingone.com/{environmentId}/as
Keycloak
Client Type: OpenID Connect
Issuer URL: Includes realm:
https://your-keycloak-server/realms/{realm-name}
Attribute Mapping
OIDC providers send user attributes in the ID token. Securtea uses these standard claims:
| Claim | Purpose | Required |
|---|---|---|
sub | Unique user identifier | Yes |
email | User's email address | Yes |
email_verified | Whether email is verified | Recommended |
name | User's full name | Optional |
given_name | First name | Optional |
family_name | Last name | Optional |
Most providers include these claims by default. If not, configure your IdP to include them.
User Experience
First-Time SSO Login
- User enters their email on Securtea login
- Securtea detects the domain matches SSO configuration
- User is redirected to your IdP
- User authenticates with corporate credentials
- IdP redirects back to Securtea with tokens
- Securtea creates the user account (if new)
- User is signed in and sees the dashboard
Returning Users
- Automatic redirect to IdP on email entry
- If IdP session exists, instant sign-in
- No password entry in Securtea
Troubleshooting
"Invalid Client" Error
Cause: Client ID or secret is wrong.
Fix:
- Verify client ID in IdP matches Securtea
- Generate a new client secret
- Check for extra whitespace when copying
"Redirect URI Mismatch"
Cause: Callback URL doesn't match IdP configuration.
Fix:
- Copy exact callback URL from Securtea
- Update the redirect URI in your IdP
- Include the full URL with protocol (https)
"Discovery Failed"
Cause: Issuer URL is incorrect or unreachable.
Fix:
- Verify the issuer URL format for your provider
- Test the discovery endpoint manually:
curl {issuer}/.well-known/openid-configuration - Check for firewall blocks or network issues
"Invalid Token"
Cause: Token validation failed.
Fix:
- Ensure clock sync between your IdP and systems
- Check that token signing algorithms are supported
- Verify the correct scopes are configured
Users Can't Sign In
Cause: Domain mismatch or user not in IdP.
Fix:
- Verify email domain matches SSO configuration exactly
- Ensure user exists in your identity provider
- Check IdP application user assignments
Removing OIDC Configuration
To remove SSO and revert to standard authentication:
- Go to Settings > Organization > SSO Authentication
- Click Remove Configuration
- Confirm the removal
SSO-only users will need to reset their password to access their accounts.