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

# Microsoft Entra Directory Sync

> Provision and deprovision members from Microsoft Entra ID to StackOne with SCIM.

Provision your Microsoft Entra ID users into StackOne so member accounts are created and deactivated automatically as people join and leave. Microsoft Entra provisions against StackOne's SCIM 2.0 endpoint, a flow StackOne calls Directory Sync. Directory Sync attaches to an existing SSO connection, so [configure SSO](/identity/sso/overview) before you start.

## Prerequisites

* **Org Admin** role in your StackOne organization.
* An SSO connection for your organization with its email domain verified, for example `acme.com`. Directory Sync attaches to that connection, and StackOne links each provisioned user to your organization by the verified domain.
* Access to the **Microsoft Entra admin center** with permission to manage the enterprise application, such as the **Application Administrator** role.

<Note>
  The **Provisioning** tab and its **Directory Sync** card are enabled per organization. If you don't see them on your SSO connection, even as an Org Admin, contact StackOne support to turn on Directory Sync for your organization.
</Note>

## Link SCIM in StackOne

Directory Sync lives on your SSO connection. Open it to mint the credentials Microsoft Entra needs and to choose what provisioned members receive.

<Steps>
  <Step title="Open Directory Sync and click Link SCIM">
    In the StackOne dashboard, go to **Organization > Security > SSO** and open your SSO connection, for example **Acme Entra**. Select the **Provisioning** tab, find the **Directory Sync** card, and click **Link SCIM** to open the Directory Sync panel.
  </Step>

  <Step title="Copy the SCIM base URL and provisioning token">
    Under **SCIM Details**, StackOne shows the **SCIM base URL** and a **provisioning token**. Copy both now. The token is displayed once and cannot be retrieved later, so store it before you close the panel.

    <Frame>
      <img src="https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/link-scim.png?fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=52f3c8cab90333356e1416bd2717dd77" alt="The Directory Sync panel showing the SCIM base URL and the masked provisioning token with a Regenerate action." style={{ maxWidth: "360px" }} width="1010" height="678" data-path="images/identity/scim/link-scim.png" />
    </Frame>
  </Step>

  <Step title="Set the provisioned access">
    On the **Provisioned access** card, select **Manage access**. Choose the projects provisioned members join and a role for each one (**Viewer**, **Member**, or **Admin**), then click **Save changes**. StackOne applies these to every member Microsoft Entra provisions, so pick the least-privilege role that fits each project. This access is shared with [JIT provisioning](/identity/sso/jit-provisioning).
  </Step>
</Steps>

<Note>
  The **SCIM base URL** always ends in `/api/auth/scim/v2`, the SCIM 2.0 endpoint Microsoft Entra provisions against. If you regenerate the token in StackOne, the previous one stops working immediately, so update the **Secret Token** in Microsoft Entra to match or provisioning fails.
</Note>

## Configure provisioning in Microsoft Entra

Point the enterprise application at StackOne's SCIM endpoint. Use the same application you set up for SSO.

<Steps>
  <Step title="Open provisioning">
    In the **Microsoft Entra admin center**, go to **Enterprise applications** and open your application, for example **Acme Entra**. Select **Provisioning**, then **Connect your application** to set up automatic provisioning.
  </Step>

  <Step title="Enter the StackOne credentials">
    Set the authentication method to **Bearer authentication**, then under **Admin Credentials** fill in the two fields with the values from StackOne:

    | Microsoft Entra field | Value from StackOne |
    | --------------------- | ------------------- |
    | **Tenant URL**        | SCIM base URL       |
    | **Secret Token**      | Provisioning token  |

    <Frame>
      <img src="https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=f021ac0e24db7da453845782bd71c395" alt="Microsoft Entra, Provisioning > Admin Credentials, with Bearer authentication, the Tenant URL (SCIM base URL) and Secret Token (provisioning token) entered, ready to Test Connection." data-og-width="1462" width="1462" data-og-height="640" height="640" data-path="images/identity/scim/entra-provisioning.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?w=280&fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=a6095f59c53748aa2207569f843191cb 280w, https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?w=560&fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=9484301076f78c3ad1650eaccecf2e7f 560w, https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?w=840&fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=2131eb493a70efa8209a2477be8d57a7 840w, https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?w=1100&fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=b468b29a6afb4599e9fca70e78395bbc 1100w, https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?w=1650&fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=3dc9084ec5ca5fadc3ddef56117a6d7e 1650w, https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-provisioning.png?w=2500&fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=2d57c1ed7949b2857ed8db2cd0af580e 2500w" />
    </Frame>
  </Step>

  <Step title="Test the connection and save">
    Click **Test Connection**. Microsoft Entra calls StackOne with the credentials and confirms they work. When the test passes, select **Create** to save the configuration.
  </Step>

  <Step title="Start provisioning">
    Select **Start provisioning** to begin the first cycle. Microsoft Entra provisions your assigned users, then re-syncs roughly every 40 minutes.

    <Frame>
      <img src="https://mintcdn.com/stackone-60/UkwbfeWWnEleiUW3/images/identity/scim/entra-start-provisioning.png?fit=max&auto=format&n=UkwbfeWWnEleiUW3&q=85&s=6781ad832a43de4b36c734e0986247a0" alt="Microsoft Entra, the provisioning overview after connecting, with Start provisioning in the toolbar and the current cycle status." width="1567" height="641" data-path="images/identity/scim/entra-start-provisioning.png" />
    </Frame>
  </Step>
</Steps>

## Assign users and groups

Microsoft Entra provisions only the users you assign to the application. Assign the people who should have StackOne access.

<Steps>
  <Step title="Assign users and groups to the application">
    In the same enterprise application, open **Users and groups** and add the users or groups to sync, such as the **Finance** group. On its next cycle, Microsoft Entra creates a StackOne member for each assigned user, and StackOne applies the default role and projects you chose.
  </Step>
</Steps>

<Note>
  Directory Sync provisions **users only**, group sync is not available yet. Assigning a group in Microsoft Entra is a convenience on Entra's side: Entra expands the group and provisions each member as an individual StackOne user. The group and its membership are not synced into StackOne. To organize members into groups within StackOne, see [Groups](/identity/groups/overview).
</Note>

<Info>
  Unassign a user from the application, or disable their Microsoft Entra account, and the next cycle deactivates the matching StackOne member, removing their access automatically.
</Info>

## Next steps

<CardGroup cols={2}>
  <Card title="Directory Sync overview" icon="arrows-rotate" href="/identity/scim/overview">
    How SCIM provisioning works and how it attaches to your SSO connection.
  </Card>

  <Card title="Okta Directory Sync" icon="okta" href="/identity/scim/okta">
    Set up SCIM provisioning with Okta instead of Microsoft Entra.
  </Card>
</CardGroup>
