docs/documentation/platform/sso/okta-oidc.mdx

In the Create a New Application Integration dialog, select **OIDC - OpenID Connect** as the Sign-in method and **Web Application** as the Application type, then click **Next**.

On the New Web App Integration screen, configure the following settings:
- **App integration name**: Enter a name like `Infisical`
- **Grant type**: Ensure **Authorization Code** is checked
- **Sign-in redirect URIs**: Set to `https://app.infisical.com/api/v1/sso/oidc/callback`
- **Sign-out redirect URIs**: (Optional) Set to `https://app.infisical.com`
- **Controlled access**: Select the appropriate access level for your organization

<Note>
If you're self-hosting Infisical, replace `https://app.infisical.com` with your own domain in the redirect URIs.
</Note>
Click **Save** to create the application.
After saving, scroll down to the **General Settings** section and click **Edit**. Ensure the **Proof of possession** setting labeled "Require Demonstrating Proof of Possession (DPoP) header in token requests" is **unchecked**.

<Warning>
Infisical does not currently support DPoP for OIDC authentication.
</Warning>

Next, you need to obtain the Discovery Document URL (also known as the OpenID Configuration URL). This URL follows the format: `https://<your-okta-domain>/.well-known/openid-configuration`.
To find your Okta domain, look at the URL in your browser's address bar while in the Okta Admin Portal. It typically looks like `https://your-company.okta.com` or `https://your-company.oktapreview.com`.

Your Discovery Document URL will be: `https://<your-okta-domain>/.well-known/openid-configuration`
For example: `https://your-company.okta.com/.well-known/openid-configuration`
Fill in the following fields:
Fill in the following fields:
- **Discovery Document URL**: Enter the OpenID Configuration URL from step 2 (e.g., `https://your-company.okta.com/.well-known/openid-configuration`)
- **Client ID**: Enter the Client ID from step 2
- **Client Secret**: Enter the Client Secret from step 2
- **JWT Signature Algorithm**: Select **RS256** (this is the default algorithm used by Okta)

<Info>
Currently, the following JWT signature algorithms are supported: RS256, RS512, HS256, and EdDSA. Okta typically uses RS256.
</Info>
Optionally, you can define a whitelist of allowed email domains to restrict which users can authenticate. Wildcard patterns such as `*.example.com` are supported to allow entire subdomain trees (e.g. `team.example.com`, `eng.example.com`).
Once you've filled in all the required fields, click **Update** to save the configuration.

At this point, you have configured everything you need within the context of the Okta Admin Portal.

To enforce OIDC SSO, you're required to test out the OpenID connection by successfully authenticating at least one Okta user with Infisical.
Once you've completed this requirement, you can toggle the **Enforce OIDC SSO** button to enforce OIDC SSO.
<Warning>
We recommend ensuring that your account is provisioned using the application in Okta
prior to enforcing OIDC SSO to prevent any unintended issues.
</Warning>
<Info>
In case of a lockout, an organization admin can use the [Admin Login Portal](https://infisical.com/docs/documentation/platform/sso/overview#admin-login-portal) in the `/login/admin` path e.g. https://app.infisical.com/login/admin.
</Info>