> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coderabbit.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Okta SAML SSO setup

> Configure SAML-based single sign-on between Okta Workforce and CodeRabbit from your organization's account management page.

export const EnterprisePlanBadge = ({tip = "This feature is available exclusively as part of the Enterprise plan. Please refer to our pricing page for more information about our plans and features.", title = "Enterprise Plan", cta = "Read more", href = "https://coderabbit.ai/pricing", disabled = false}) => {
  return <Tooltip tip={tip} cta={cta} href={href}>
        <Badge icon="building-2" disabled={disabled || undefined}>
            {title}
        </Badge>
    </Tooltip>;
};

export const AdminRoleBadge = ({tip = "This feature requires an organization owner, an admin role or the corresponding permission. Regular Members do not have access.", title = "Admin Only", cta = "View roles", href = "/management/roles", disabled = false}) => {
  return <Tooltip tip={tip} cta={cta} href={href}>
        <Badge icon="lock" color="orange" disabled={disabled || undefined}>
            {title}
        </Badge>
    </Tooltip>;
};

<EnterprisePlanBadge />

<AdminRoleBadge tip="This page requires organization admin access. Members do not have access to Enterprise SSO settings." />

Use this guide to configure Okta Workforce as the identity provider for your CodeRabbit Enterprise organization. The account management SSO wizard guides you through domain verification, SAML app setup, testing, and activation.

After SSO is activated, users with a verified email domain must sign in to CodeRabbit through Okta.

## Before you start

Make sure you have:

* **Critical: You must have an invitation to your CodeRabbit organization from your CodeRabbit account team before starting this setup.**
* Organization admin access in the CodeRabbit account management page
* Access to the **Okta Admin Console**
* Permission to create and configure SAML applications in Okta
* Access to your DNS provider so you can add a `TXT` record for domain verification
* The users or groups that should be allowed to sign in through Okta

<Info>
  If you do not see the **Security** section or the **Start configuration** button in your organization profile, contact your CodeRabbit account team. Your organization must be prepared for self-serve SSO before the account management SSO wizard appears.
</Info>

## Set up Okta self-serve SSO

<Steps>
  <Step title="Open the account management SSO wizard">
    Accept your CodeRabbit organization invitation and sign in to the account management page. Open the organization switcher, find the invited organization, and click **Manage**.

    <Frame caption="Click Manage for the invited organization">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-invitation-manage.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=86bc405d6435ca7787525153bdae1790" alt="Organization switcher showing the Manage button for the invited organization highlighted" width="1120" height="548" data-path="assets/images/okta-self-serve-invitation-manage.png" />
    </Frame>

    In the organization profile, select **Security**, and click **Start configuration**.

    <Frame caption="Start SSO configuration from the Security section">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-security-start.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=6a6067057ff121304e89e46ef53c0255" alt="Organization profile Security section with the Start configuration button highlighted" width="1785" height="800" data-path="assets/images/okta-self-serve-security-start.png" />
    </Frame>
  </Step>

  <Step title="Add and verify your email domain">
    In **Domains**, enter the email domain that should use Okta for CodeRabbit sign-in, then click **Add**.

    Copy the generated `TXT` record details into your DNS provider:

    | DNS field    | What to enter                                                                  |
    | ------------ | ------------------------------------------------------------------------------ |
    | Type         | `TXT`                                                                          |
    | Host or name | The generated host value from the account management SSO wizard                |
    | Value        | The generated `domain-verify=...` value from the account management SSO wizard |

    The account management SSO wizard checks DNS automatically. Continue only after the domain shows **Verified**.

    <Frame caption="Copy the generated DNS TXT record into your DNS provider">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-domain-dns.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=796973e49908cfa3889ee3a19edd11c3" alt="Domain verification step showing generated TXT record host and value fields highlighted" width="1785" height="930" data-path="assets/images/okta-self-serve-domain-dns.png" />
    </Frame>
  </Step>

  <Step title="Select Okta Workforce">
    In **Connection**, select **Okta Workforce** as the SAML identity provider.

    <Frame caption="Select Okta Workforce as the identity provider">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-select-provider.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=fd65c65f984b6f4c33af85fe736c2c78" alt="Identity provider selection screen with the Okta Workforce tile highlighted" width="1785" height="980" data-path="assets/images/okta-self-serve-select-provider.png" />
    </Frame>
  </Step>

  <Step title="Create the Okta SAML app">
    In the Okta Admin Console, go to **Applications** -> **Applications**, click **Create App Integration**, select **SAML 2.0**, and click **Next**.

    On **General Settings**, enter a clear app name such as `CodeRabbit`, then continue to the SAML configuration screen.

    In **Configure SAML**, use the values shown in the account management SSO wizard:

    | Okta field                  | Value                                       |
    | --------------------------- | ------------------------------------------- |
    | Single sign-on URL          | Copy from the account management SSO wizard |
    | Audience URI (SP Entity ID) | Copy from the account management SSO wizard |
    | Default RelayState          | Leave blank                                 |
    | Name ID format              | `EmailAddress`                              |
    | Application username        | `Email`                                     |

    <Frame caption="Copy the service provider values from the account management SSO wizard into Okta">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-sp-values.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=3e302b601be726a37538816971cfd6a3" alt="Account management SSO wizard showing the Single sign-on URL and Audience URI fields highlighted" width="1785" height="1200" data-path="assets/images/okta-self-serve-sp-values.png" />
    </Frame>

    On the Okta feedback screen, select **This is an internal app that we have created**, then click **Finish**.
  </Step>

  <Step title="Add attribute statements">
    In the Okta app's **Attribute Statements** section, add the attributes shown in the account management SSO wizard.

    | Attribute name | Expression               |
    | -------------- | ------------------------ |
    | `mail`         | `user.profile.email`     |
    | `firstName`    | `user.profile.firstName` |
    | `lastName`     | `user.profile.lastName`  |

    The `mail` attribute is required. `firstName` and `lastName` are optional in the account management SSO wizard, but adding them helps CodeRabbit populate user profile details correctly.

    <Frame caption="Add the SAML attribute statements required by CodeRabbit">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-attribute-statements.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=dc0e1bdc2a02b1a8fd7eb0e4aa602890" alt="Account management SSO wizard showing the mail, firstName, and lastName attribute statements highlighted" width="1785" height="940" data-path="assets/images/okta-self-serve-attribute-statements.png" />
    </Frame>
  </Step>

  <Step title="Assign users or groups in Okta">
    Open the Okta app's **Assignments** tab and assign the users or groups that should be allowed to sign in to CodeRabbit through Okta.

    Users cannot complete SSO sign-in until they are assigned to the Okta application.
  </Step>

  <Step title="Paste the Okta metadata URL">
    In the Okta app, open the **Sign On** tab. Under **Settings** -> **SAML 2.0** -> **Metadata details**, copy the **Metadata URL**.

    <Frame caption="Copy the Metadata URL from the Okta app Sign On tab">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-okta-metadata-url.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=2f481998bbec1212795975a94ea1090b" alt="Okta Sign On tab with the SAML Metadata URL highlighted" width="1420" height="1490" data-path="assets/images/okta-self-serve-okta-metadata-url.png" />
    </Frame>

    Return to the account management SSO wizard. In **Configure Okta Workforce**, keep **Add via metadata** selected, paste the metadata URL, and continue.

    <Frame caption="Paste the Okta Metadata URL into the account management SSO wizard">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-add-metadata.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=51aa03b40685291ced5e8ceb6232dc7f" alt="Account management SSO wizard with the Metadata URL input highlighted" width="1785" height="900" data-path="assets/images/okta-self-serve-add-metadata.png" />
    </Frame>
  </Step>

  <Step title="Test the SSO connection">
    In **Test**, click **Open test URL** and complete the Okta sign-in flow with an assigned user whose email matches your verified domain.

    Return to the account management SSO wizard and click **Refresh logs** until the latest test result shows **Success**. Do not activate SSO while the latest result is **Pending** or failed.

    <Frame caption="Confirm the SSO test result succeeds before activation">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-test-success.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=777ebc66b676e0e10c8137caeced2379" alt="Account management SSO wizard showing the Open test URL button and a successful test result highlighted" width="1785" height="930" data-path="assets/images/okta-self-serve-test-success.png" />
    </Frame>
  </Step>

  <Step title="Activate SSO">
    In **Activate**, review the activation message and click **Activate SSO**.

    <Warning>
      Activation changes sign-in behavior for the verified domain. After activation, users with that email domain must sign in to CodeRabbit through Okta.
    </Warning>

    <Frame caption="Activate SSO after the connection test succeeds">
      <img src="https://mintcdn.com/coderabbit/GloY4hCsgvrKMG0G/assets/images/okta-self-serve-activate.png?fit=max&auto=format&n=GloY4hCsgvrKMG0G&q=85&s=ea927e9a9fc01b7d1abde399352e542a" alt="Account management SSO wizard with the Activate SSO button highlighted" width="1785" height="1110" data-path="assets/images/okta-self-serve-activate.png" />
    </Frame>
  </Step>
</Steps>

## What's next

<CardGroup cols={1}>
  <Card title="Enterprise SSO overview" href="/management/sso" icon="key" horizontal>
    Return to the SSO overview to understand how Enterprise SSO fits into your CodeRabbit rollout.
  </Card>

  <Card title="Roles and permissions" href="/management/roles" icon="shield-check" horizontal>
    Pair SSO with the right access controls by reviewing how roles work in your CodeRabbit organization.
  </Card>

  <Card title="Support" href="/support" icon="message-circle" horizontal>
    Contact CodeRabbit if the Security section is missing or the SSO test does not succeed.
  </Card>
</CardGroup>
