Skip to content

Provision with SCIM

Last reviewed: 11 months ago

By connecting a System for Cross-domain Identity Management (SCIM) provider, you can provision access to the Cloudflare dashboard on a per-user basis, through your identity provider (IdP)

Currently, we only provide SCIM support for Enterprise customers, and for Microsoft Entra and Okta. If you are interested in setting up SCIM support, contact your account team and ask for dashboard SCIM.

Limitations

  • If a user is the only Super Administrator on an Enterprise account, they will not be deprovisioned.
  • Cloudflare currently only supports Account-scoped Roles and does not support Domain-scoped Roles provisioning via SCIM. We are working on this limitation.
  • Cloudflare does not currently allow custom group names to leave space for future development.

Prerequisites

  • Cloudflare provisioning with SCIM is only available to Enterprise customers and requires a Cloudflare-specific feature flag. Contact your account team for more information.
  • In Cloudflare, Super Administrator access on the account.
  • In your identity provider, the ability to create applications and groups.

Create an API token

  1. Create an API token with the following permissions:

    TypeItemPermission
    AccountAccount SettingsRead
    AccountAccount SettingsEdit
    UserMembershipsRead
    UserMembershipsEdit
  2. Under Account Resources, select the specific account to include or exclude from the dropdown menu.

  3. Select Continue to summary.

  4. Validate the permissions and select Create Token.

  5. Copy the token value.


Provision with Okta

Set up your Okta SCIM application.

  1. In the Okta dashboard, go to Applications > Applications.

  2. Select Browse App Catalog.

  3. Locate and select SCIM 2.0 Test App (OAuth Bearer Token).

  4. Select Add Integration and name your integration.

  5. Enable the following options:

    • Do not display application icon to users
    • Do not display application icon in the Okta Mobile App
  6. Disable Automatically log in when user lands on login page.

  7. Select Next, then select Done.

Integrate the Cloudflare API.

  1. In your integration page, go to Provisioning > Configure API Integration.
  2. Enable Enable API Integration.
  3. In SCIM 2.0 Base URL, enter: https://api.cloudflare.com/client/v4/accounts/<your_account_ID>/scim/v2.
  4. In OAuth Bearer Token, enter your API token value.
  5. Disable Import Groups.
  6. Select Save.

Set up your SCIM users.

  1. In Provisioning to App, select Edit.
  2. Enable Create Users and Deactivate Users. Select Save.
  3. In the integration page, go to Assignments > Assign > Assign to Groups.
  4. Assign users to your Cloudflare SCIM group.
  5. Select Done.

This will provision all of the users affected to your Cloudflare account with “minimal account access.”

Configure user permissions on Okta

  1. Go to Directory > Groups > Add group and add groups with the following names: CF-<your_account_ID> - <Role_Name>

  2. Go to your SCIM application in the App Integration Catalog, then select Provisioning.

  3. Select Edit.

  4. Enable Create Users and Deactivate Users. Select Save.

  5. Go to Push Groups and make sure the appropriate group matches the existing group of the same name on Cloudflare.

  6. Disable Rename groups. Select Save.

  7. Within the Push Groups tab, select Push Groups.

  8. Add the groups you created.

  9. Select Save.

Adding any users to these groups will grant them the role. Removing the users from the identity provider will remove them from the associated role.


Provision with Microsoft Entra ID

Set up the Microsoft Entra ID Enterprise application.

  1. Go to your Microsoft Entra ID instance and select Enterprise Applications.
  2. Select Create your own application and name your application.
  3. Select Integrate any other application you don’t find in the gallery (Non-gallery).
  4. Select Create.

Provision the Microsoft Entra ID Enterprise application.

  1. Under Manage on the sidebar menu, select Provisioning.
  2. Select Automatic on the dropdown menu for the Provisioning Mode.
  3. Enter your API token value and the tenant URL: https://api.cloudflare.com/client/v4/accounts/<your_account_ID>/scim/v2.
  4. Select Test Connection, then select Save.

Configure user permissions in Microsoft Entra ID

Currently, groups need to match a specific format to provision specific Cloudflare account-level roles. Cloudflare is in the process of adding Cloudflare Groups, which can take in freeform group names in the future.

These permissions work on an exact string match with the form CF-<your_account_ID> - <Role_Name>

Refer to the list of Roles for more details.

  1. To ensure that only required groups are provisioned, go to your Microsoft Entra ID instance.
  2. Under Manage on the sidebar menu, select Provisioning.
  3. Select Provision Entra Groups in Mappings.
  4. Select All records under Source Object Scope.
  5. Select Add scoping filter and create the appropriate filtering criteria to capture only the necessary groups.
  6. Save the Attribute Mapping by selecting OK and return to the Enterprise Application Provisioning overview page.
  7. Select Start provisioning to view the new users and groups populated on the Cloudflare dashboard.