> For the complete documentation index, see [llms.txt](https://docs.rox.com/development/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rox.com/development/engineering/docs/rox-enterprise-integrations/enterprise-sso-via-auth0.md).

# Enterprise SSO via Auth0

Let your team sign in to Rox with your company's Identity provider

{% hint style="info" %}
Only Enterprise organizations can use this feature.
{% endhint %}

This guide walks customer IT admins through setting up SAML SSO for Rox through Auth0 and validating how end users log in.

Once connected, your organization's users get two ways to access Rox:

* **IdP-initiated login** - Users sign in directly from their Identity Provider (e.g. Okta) and click the Rox tile from their app dashboard to land straight in the app.
* **SP-initiated login** - Users go to [run.rox.com](https://run.rox.com), enter their work email, and are automatically redirected to your IdP to authenticate before being brought into Rox.

Both flows are enabled by the same setup. Completing the wizard once unlocks both entry points for all users you've assigned in your IdP.

### Admin setup

Setting up SSO in Rox is done through a self-serve wizard powered by Auth0. Before diving in, have your IdP admin console open in a separate tab.

#### Step 1 - Start SSO setup in Rox

Go to **Rox → Settings → Workspace** and click **Set up** under **Single sign-on**.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FTwZhDP9lDbEeWWtq0wTV%2FSSO-doc-update.png?alt=media&amp;token=639d7755-2d03-464b-a1fb-c9f7c70bbfc4" alt=""><figcaption></figcaption></figure>

#### Step 2 - Open the setup wizard

This opens the Auth0 setup wizard for SSO. Click **Get Started**.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2F8ZlnCmKjd9hfJhp6Vwyz%2Fimage.png?alt=media&amp;token=af653fa8-1531-4497-9ff3-5619ea1248e2" alt=""><figcaption></figcaption></figure>

#### Step 3 - Choose your IdP

Choose your Identity Provider and click **Next**.

> Note: If you are using Microsoft Entra ID as your IdP, please select '**Custom SAML**'

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FJ3dEoraK0mCmdvzwZsJq%2Fimage.png?alt=media&amp;token=64904af2-8cf2-466a-a5b7-11a181ee29d7" alt=""><figcaption></figcaption></figure>

#### Step 4 - Complete the IdP setup in the wizard

Follow the setup steps shown in the wizard. This wizard guides you through six sub-steps that move information back and forth between Rox and your IdP

{% tabs %}
{% tab title="Okta Workspace" %}
{% stepper %}
{% step %}
**Create the application**

Create Rox as a new application inside Okta.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FMrqPcRGchg1UkBQwnkTn%2F2026-06-26_18-38-32.png?alt=media&amp;token=5028903c-ebfe-4360-9693-aeca0a60bb13" alt=""><figcaption></figcaption></figure>

Use these values:

* **App name:** `Rox`
* **Logo:** Upload the Rox logo from [rox\_symbol.svg](https://run.rox.com/rox/new/rox_symbol.svg)
  {% endstep %}

{% step %}
**Paste the Single Sign-on URL and Audience URI**

Once the app is created, the wizard will show you two values, the **Single Sign-on URL** and the **Audience URI.** These tell your Okta where to send users after they authenticate, and how to identify Rox as the intended recipient.

Copy both values from the wizard and paste them into the matching fields in your IdP application.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2F6D2bJiAuUu1HQE7w3Hor%2FChatGPT%20Image%20Jun%2026%2C%202026%2C%2008_00_39%20PM.png?alt=media&amp;token=7cd3b03f-917e-461a-910f-22c1ecae108b" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Configure attribute mapping**

Attribute mapping tells your IdP which user fields to pass to Rox during login. Without this, Rox won't receive the user's email or name, and login will fail.

Map the attributes shown in the wizard in your IdP:

* **email** → primary email field in your IdP
* **name** → full name field in your IdP

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Ffs3XmvEbwrnDLnWGGfex%2FScreenshot%202026-06-26%20at%206.54.39%E2%80%AFPM.png?alt=media&amp;token=a5dae1cc-9e3e-4307-86ec-1728949fcec7" alt=""><figcaption></figcaption></figure>

> **Okta users:** Use these specific mappings:
>
> * `email` → `user.email`
> * `name` → `user.firstName + " " + user.lastName`
>   {% endstep %}

{% step %}
**Configure the connection**

Now that your IdP application is configured, you need to point the Auth0 wizard back to it. The Metadata URL is how the wizard discovers your IdP's settings automatically.

Copy the **Metadata URL** from your IdP application and paste it into the wizard under your provider configuration

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FuLcjwX3y3MV8wxuICkeC%2FScreenshot%202026-06-26%20at%207.03.22%E2%80%AFPM.png?alt=media&amp;token=e3f547ba-3344-4ac1-874f-751caf41bad3" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Assign access**

Before the connection can be tested, your IdP needs to know which users are allowed to use it. You can scope this broadly to a group or narrowly to specific users, either works.

Assign access in your IdP application based on the wizard instructions.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FTUSZVKzXM3sHZbuLHVNL%2FScreenshot%202026-06-26%20at%207.09.04%E2%80%AFPM.png?alt=media&amp;token=5fae0c96-0c97-48c4-9115-86e8cf69b938" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Test the connection and enable it**

With everything configured, the wizard will let you run a test to confirm that the connection is working end to end. Don't skip this step, it's the only way to catch misconfigured attributes or URL mismatches before your users hit them.

Run the test in the wizard. If it passes, enable the connection to turn on SSO for your organization.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Fh519QHXY5VARASLErvQf%2FChatGPT%20Image%20Jun%2026%2C%202026%2C%2007_36_50%20PM.png?alt=media&amp;token=82fadc02-4fc1-4db4-9185-355039eb83f6" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}
{% endtab %}

{% tab title="Microsoft Entra ID" %}
{% stepper %}
{% step %}
**Select Custom SAML**

For Microsoft Entra, you need to click on the **Custom SAML** option, and click '**Next**'.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FpfIn9H8lnXJYFkdjnOBw%2FScreenshot%202026-09-17%20at%204.27.07%E2%80%AFPM.png?alt=media&amp;token=2a4c8962-d9ea-49a4-933e-c1dc70260524" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Create the application**

Head over to Azure portal, and search for Enterprise applications

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FnUq7jg6oyZ7niJjajJ6x%2F2.png?alt=media&amp;token=22a16212-3284-40b6-b4cf-694554b65fd5" alt=""><figcaption></figcaption></figure>

Click on '**New Application**'

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Faicj9l98k2ZaG0MLzFlY%2F6.png?alt=media&amp;token=4f1a36e0-a4d7-4c4a-9ded-061efa4dc075" alt=""><figcaption></figcaption></figure>

Click on '**Create your own application**' and choose '**Integrate any other application**', enter '**Rox**' as name, and create.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FTvi9XHDFLU85xeRQXmIP%2F3.png?alt=media&amp;token=eabe6545-43d7-4b3b-9fea-08b4fccb65fb" alt=""><figcaption></figcaption></figure>

After creating your application, Under '**Manage**', click on '**Properties**' to upload the Rox logo from [rox\_symbol.svg](https://run.rox.com/rox/new/rox_symbol.svg) and ensure '**Visible to users?**' is selected as '**Yes**'

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FXQGn3No86du8uudvWaaa%2F5.png?alt=media&amp;token=bb3f46e8-45cd-4b2f-8962-d68fe65b1572" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Paste the Single Sign-on URL and Audience URI**

Go to '**Single-Sign on**' under the '**Manage**' category and select the '**SAML**' option

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FngdvHXwqZpPos4Qo6dd8%2FScreenshot%202026-09-17%20at%205.40.34%E2%80%AFPM.png?alt=media&amp;token=5f26db07-0faf-446c-b53c-ece2c9dbb4ed" alt=""><figcaption></figcaption></figure>

Click on '**Edit**' and then click on '**Add identifier**' and '**Add reply URL**' inorder to open the input boxes.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FHJbiF54p9xbDXkmWddzT%2F7.png?alt=media&amp;token=15df7c60-ec99-4293-97ca-0d175649476c" alt=""><figcaption></figcaption></figure>

Go back to the Rox Setup Wizard, and copy both the '**Single Sign-On URL**' and paste it in Azure portal's '**Reply URL**' field.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Ff5GdAkbHZ989wO0o7XYr%2Fimage.png?alt=media&amp;token=6319c254-947e-48f2-b787-e1fd7ff14243" alt=""><figcaption></figcaption></figure>

Similarly, go back to the Rox Setup Wizard, and copy both the '**Service Provider Entity ID**' and paste it in Azure portal's '**Identifier**' field.

After entering and validating both, Please click on '**Save**'

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Fyb4PiPxl4TRAT8Ni8I58%2F8.png?alt=media&amp;token=b5f58b76-9557-4cc2-9e10-d304c11d66c5" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Configure the connection**

Copy the '**App Federation Metadata Url**'

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FmuZhKG0OQUxJtT6BWctn%2Fimage.png?alt=media&amp;token=7d92cd4e-f9ca-4c47-9ae6-77460a9d23e7" alt=""><figcaption></figcaption></figure>

Go back to the Rox Setup Wizard, and click on '**Next**' to navigate to '**Configure Connection**' section. Ignore this if you are already there.

Paste the copied URL into the '**Metadata URL**' field and click '**Create connection**'

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FChBIjqNPc4JLtih3ksc3%2F9.png?alt=media&amp;token=7c65307b-a91c-4110-91f1-db40005b14a6" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Configure attribute mapping**

After creating Connection, you will be navigated to '**Attribute Mapping**' section

Then, copy the mapping of '**Required attributes**', and any other 'Optional attributes' required inorder to enhance the User profile.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FUqw4gZkbnDqU9foeFsxv%2F11.png?alt=media&amp;token=505020e4-8b00-471e-ad99-ebd4a669bd12" alt=""><figcaption></figcaption></figure>

Go back to the Azure enterprise app portal and click on '**Edit**' on the '**Attributes & Claims**' section.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Fvil14vv54EkfGLnGaWBG%2F10.png?alt=media&amp;token=3219d36f-053f-439c-b190-8319d38a7fa6" alt=""><figcaption></figcaption></figure>

Ensure the '**Claim** **name**'(s) is(are) present and equal to the mapping values you've copied. It dosen't matter which section are they present in the Azure portal.
{% endstep %}

{% step %}
**Assign access**

In your microsoft enterprise app, Under the '**Manage**' tab, Select the '**Users and groups**' tab and then click on '**Add** **user/group**'.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FNGXubR94ZFuh3SR8B1KN%2F12.png?alt=media&amp;token=fcc62a81-57c4-44ba-ac2d-9119d43e91dd" alt=""><figcaption></figcaption></figure>

Before the connection can be tested, your Entra ID needs to know which users are allowed to use it. You can scope this broadly to a group or narrowly to specific users, either works.
{% endstep %}

{% step %}
**Test the connection and enable it**

We can test from both the portals. First head over to your microsoft enterprise app, click on '**Test**' button on '**Test single sign-on with Rox**' section.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Fw50oufmn80DmGGnJdVBp%2F13.png?alt=media&amp;token=8b6dc76a-9590-46ef-81c2-17deb61fd418" alt=""><figcaption></figcaption></figure>

With everything configured, the wizard will let you run a test to confirm that the connection is working end to end. Don't skip this step, it's the only way to catch misconfigured attributes or URL mismatches before your users hit them.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2F1wCl9sChmujiTXRPci5e%2F14.png?alt=media&amp;token=d8555162-c349-46c2-964f-6c7c98356b86" alt=""><figcaption></figcaption></figure>

Run the test in the wizard. If it passes, enable the connection to turn on SSO for your organization.
{% endstep %}
{% endstepper %}
{% endtab %}
{% endtabs %}

#### Step 5 - Manage the SSO configuration later

Once the wizard completes, SSO is live for your organization. The **Setup** button in your organization settings will now show as **Reconfigure**, which you can use at any time if your IdP configuration changes or you need to update the connection.

### End-user login

Once the setup is complete, assigned users in the IdP can access Rox in two ways. Directly from their IdP, or by starting from the Rox login page. Both flows end up in the same place.

#### 1. IdP-initiated login

The user signs in to their Identity Provider and selects the **Rox** tile.

The user is then taken directly to the Rox app.

{% tabs %}
{% tab title="Example: Okta" %}
For Okta, see the example below of how the Rox tile appears on the user's Okta home page.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2FIfc4ophNwm5tr0ICYXEC%2FRox%20tile.png?alt=media&amp;token=03118c46-0024-40b1-8545-c6a9e391a1bd" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Example: Microsoft Entra ID" %}
If you are using Microsoft Entra ID as your IdP, see the example below of how the Rox tile appears on the user's Microsoft '**My Apps**' dashboard.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2F0e8cSpQHWJaGEGDgEFZ3%2F15.png?alt=media&amp;token=000ef337-4f17-4378-a156-5cee598c38b4" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

#### 2. SP-initiated login

The user goes to [run.rox.com](https://run.rox.com) and enters their email address.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2F1cgQYNKLwGyLvbzXfx47%2FChatGPT%20Image%20Jun%2026%2C%202026%2C%2007_50_29%20PM.png?alt=media&amp;token=1ffa70ef-128f-491e-bbd8-e9351d78b9db" alt=""><figcaption></figcaption></figure>

After clicking **Continue**, the user is redirected to their Identity Provider login page.

<figure><img src="https://2986926806-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUBzWA2LkfjbdaffIaGlN%2Fuploads%2Fe1MshT5qSBJCgrspMIvX%2FChatGPT%20Image%20Jun%2026%2C%202026%2C%2007_57_30%20PM.png?alt=media&amp;token=a2a7460f-735f-4d04-a61f-23a0816b35bb" alt=""><figcaption></figcaption></figure>

After signing in, the user is taken directly to the Rox app.
