Introduction
Okta supports both OpenID Connect (OIDC) and SAML 2.0.- For most new deployments, OIDC is recommended as it is simpler to configure.
- Use SAML if your organization requires it for policy or compatibility reasons.
ActionType, ReturnURL, and IdentityHandlerConfig fields required for your use case.
This page covers the Okta-specific configuration only.
SSO with OpenID Connect
Configure Okta
- Log in to your Okta Admin Console and navigate to Applications > Applications.
- Click Create App Integration, select OIDC - OpenID Connect as the sign-in method and Web Application as the application type, then click Next.
- Give the application a name.
- Under Sign-in redirect URIs, add the TIB callback URL:
Replace
{tib-host}with the hostname of your TIB instance and{profile-id}with the ID you will assign to the TIB profile. - Under Assignments, configure which users or groups can access the application.
- Click Save.
- From the application’s General tab, note the Client ID and Client Secret.
{okta-domain} is your Okta org domain (for example, your-org.okta.com). If you are using a custom Authorization Server, the discovery URL is:
TIB Profile
The Okta-specific configuration goes in theProviderConfig block of the TIB profile. Set ProviderName to SocialProvider and Type to redirect.
ProviderConfig fields are:
| Field | Description |
|---|---|
CallbackBaseURL | The base URL of your TIB instance. TIB appends the callback path automatically. |
FailureRedirect | URL to redirect the user to on authentication failure. |
UseProviders.Name | Must be openid-connect. This value routes TIB to the OpenID Connect provider implementation. |
UseProviders.Key | The Okta Client ID. |
UseProviders.Secret | The Okta Client Secret. |
UseProviders.Scopes | OAuth scopes to request. openid and email are required. |
DiscoverURL | The Okta OIDC discovery URL for your org or Authorization Server. |
JSON Web Encryption (JWE)
If Okta is configured to encrypt ID tokens, TIB can decrypt them using JWE. Add aJWE block to ProviderConfig to enable this:
PrivateKeyLocation to the certificate ID from the Tyk Dashboard certificate manager. For standalone TIB, set it to the file path of a PEM file containing the private key. The key must correspond to the public key registered with Okta for token encryption.
Requires Tyk Identity Broker v1.6.1+ and Tyk Dashboard v5.7.0+.
Worked Examples (OIDC)
These examples use embedded TIB, so theCallbackBaseURL is the same as the Dashboard or Portal respectively; TIB handles requests on the same host and port.
- Dashboard SSO
- Portal SSO
In this example, Tyk Dashboard is running at With this configuration, registered users (with a Tyk Dashboard user account) get their own permissions; unregistered users fall back to the group specified in Login URLThis URL initiates the SSO login flow:In production, present this as a “Log in with Okta” button or link on a custom login page, rather than expecting users to navigate to it directly.See Dashboard SSO for details on session behavior, permissions, and user group mapping.
http://dashboard.example.com on port 3000; replace the example values with your own.Tyk Dashboard configurationsso_default_group_id. See Dashboard SSO for full details.TIB profileThe TIB profile is created via the Tyk Identity Broker API or the Tyk Dashboard UI.- set
Keyto the Okta Client ID - set
Secretto the Okta Client Secret - set
DashboardCredentialto the TIB service account’s Dashboard credentials
ID in the registered URL must exactly match the ID in your TIB profile; a mismatch will result in a 400 Bad Request error:SSO with SAML
Configure Okta
- In the Okta Admin Console, navigate to Applications > Applications and click Create App Integration.
- Select SAML 2.0 as the sign-in method and click Next.
- Give the application a name and click Next.
- In the SAML Settings section, set the following. For embedded TIB, the values are based on your Dashboard or Portal host:
- Single sign-on URL (ACS URL):
http://{tib-host}/auth/{profile-id}/saml/callback - Audience URI (SP Entity ID):
http://{tib-host}/auth/{profile-id}/saml/metadata
- Single sign-on URL (ACS URL):
- Under Attribute Statements, map the email attribute. Add a statement with name
emailand valueuser.email. - Click Next, complete the feedback form, and click Finish.
- From the application’s Sign On tab, copy the Metadata URL. You will need this for
IDPMetadataURLin the TIB profile.
TIB Profile
The Okta-specific configuration goes in theProviderConfig block of the TIB profile. Set ProviderName to SAMLProvider and Type to redirect.
| Field | Description |
|---|---|
SAMLBaseURL | The base URL of your TIB instance. Used to construct the SP metadata and ACS URLs. |
IDPMetadataURL | The Okta application SAML metadata URL from step 7. |
CertLocation | Path to a PEM file containing the SP certificate and private key concatenated. When using Tyk Dashboard with embedded TIB, this can be a certificate ID from the Tyk Certificate Store. |
SAMLEmailClaim | The SAML attribute name for the user’s email address, as configured in Okta’s Attribute Statements. |
SAMLForenameClaim | The SAML attribute name for the user’s first name. |
SAMLSurnameClaim | The SAML attribute name for the user’s last name. |
ForceAuthentication | Set to true to force Okta to re-authenticate the user on every request. |
Worked Examples (SAML)
These examples use embedded TIB, soSAMLBaseURL is the same as the Dashboard or Portal respectively; TIB handles requests on the same host and port.
- Dashboard SSO
- Portal SSO
In this example, Tyk Dashboard is running at With this configuration, registered users (with a Tyk Dashboard user account) get their own permissions; unregistered users fall back to the group specified in In production, present this as a “Log in with Okta” button or link on a custom login page, rather than expecting users to navigate to it directly.See Dashboard SSO for details on session behavior, permissions, and user group mapping.
http://dashboard.example.com on port 3000; replace the example values with your own.Tyk Dashboard configurationsso_default_group_id. See Dashboard SSO for full details.CertificateUpload the Service Provider certificate pair to the Tyk Certificate Store (API Security > TLS/SSL Certificates), noting the assigned certificate ID to be used in the TIB profile.TIB profileThe TIB profile is created via the Tyk Identity Broker API or the Tyk Dashboard UI.- set
DashboardCredentialto the TIB service account’s Dashboard credentials - set
CertLocationto the certificate ID from the Tyk Certificate Store