|
| 1 | +--- |
| 2 | +id: okta |
| 3 | +title: (Beta) User Provisioning (SCIM) with Okta |
| 4 | +description: This is a step-by-step guide on how to set up and configure Okta as a User provisioning (SCIM) provider for your organization. |
| 5 | +--- |
| 6 | + |
| 7 | +import Tabs from '@theme/Tabs'; |
| 8 | +import TabItem from '@theme/TabItem'; |
| 9 | + |
| 10 | +:::info |
| 11 | +**Beta Feature**: SCIM provisioning is in public beta. It has been thoroughly tested with various Identity Providers. |
| 12 | +We're now collecting feedback from real-world usage to fine-tune the experience. Share your feedback [here](https://configcat.com/support). |
| 13 | +::: |
| 14 | + |
| 15 | +## Introduction |
| 16 | + |
| 17 | +Each Identity Provider requires specific information to configure a SCIM integration. The following guide will walk you through how you can connect ConfigCat with Okta via SCIM. |
| 18 | + |
| 19 | +## 1. Create an Application in Okta |
| 20 | + |
| 21 | +- Log in to <a href="https://login.okta.com/" target="_blank">Okta</a>, go to the admin Dashboard, select `Applications`, and click on `Create App Integration`. |
| 22 | + |
| 23 | + <img className="bordered-img" src="/docs/assets/scim/okta/create_app.png" alt="Okta applications" decoding="async" loading="lazy" /> |
| 24 | + |
| 25 | +- Select `SAML 2.0` as the Sign-in method. |
| 26 | + |
| 27 | + <img className="bordered-img" src="/docs/assets/scim/okta/app_type.png" alt="Okta select SAML" decoding="async" loading="lazy"/> |
| 28 | + |
| 29 | +- Enter a descriptive `App name`, then click `Next`. |
| 30 | + |
| 31 | + <img className="bordered-img" src="/docs/assets/scim/okta/app_name.png" alt="Okta app name" decoding="async" loading="lazy"/> |
| 32 | + |
| 33 | +The next step will guide you on how to collect the information required for the appearing `Configure SAML` section. |
| 34 | + |
| 35 | +## 2. Configure SAML authentication for the Okta Application |
| 36 | + |
| 37 | +- Follow our [SAML configuration guide for Okta](../../../saml/identity-providers/okta/#2-configure-saml-for-the-okta-application). |
| 38 | + |
| 39 | +## 3. Configure Provisioning (SCIM) for the Okta Application |
| 40 | + |
| 41 | +- Click on `Edit` at the `App Settings`. |
| 42 | + |
| 43 | + <img className="bordered-img" src="/docs/assets/scim/okta/edit_settings.png" alt="Okta edit app settings" decoding="async" loading="lazy"/> |
| 44 | + |
| 45 | +- Check the `Enable SCIM provisioning` checkbox, and hit `Save`. |
| 46 | + |
| 47 | + <img className="bordered-img" src="/docs/assets/scim/okta/enable_provisioning.png" alt="Okta enable provisioning" decoding="async" loading="lazy"/> |
| 48 | + |
| 49 | +- Gather the `SCIM URL` and the `Token` from the <a href="https://app.configcat.com/organization/authentication/" target="_blank" rel="noopener noreferrer">Authentication & Provisioning</a> page in ConfigCat. |
| 50 | + |
| 51 | + <img className="bordered-img" src="/docs/assets/scim/dashboard/token_generate_url.png" alt="SCIM URL and token" decoding="async" loading="lazy"/> |
| 52 | + |
| 53 | + <img className="bordered-img" src="/docs/assets/scim/dashboard/token.png" alt="SCIM token" decoding="async" loading="lazy"/> |
| 54 | + |
| 55 | +- Select the `Provisioning` tab and click on the `Edit` button. |
| 56 | + |
| 57 | + <img className="bordered-img" src="/docs/assets/scim/okta/edit_provisioning.png" alt="Okta edit provisioning" decoding="async" loading="lazy"/> |
| 58 | + |
| 59 | +- On the `SCIM Connection` section configure the following: |
| 60 | + - Add the `SCIM URL` from the ConfigCat Dashboard as the `SCIM connector base URL`. |
| 61 | + - Set the `Unique identifier field for users` field to `email`. |
| 62 | + - Check the following `Supported provisioning actions`: |
| 63 | + - `Push New Users` |
| 64 | + - `Push Profile Updates` |
| 65 | + - `Push Groups` |
| 66 | + - Select the `HTTP Header` as the `Authentication Mode`. |
| 67 | + - Set the `Token` from the ConfigCat Dashboard as the `HTTP Header Authorization`. |
| 68 | + - Click on `Save`.<br/><br/> |
| 69 | + |
| 70 | + <img className="bordered-img" src="/docs/assets/scim/okta/scim_connection.png" alt="Okta SCIM connection" decoding="async" loading="lazy"/> |
| 71 | + |
| 72 | +- Select the `To App` menu item and click on `Edit`. |
| 73 | + |
| 74 | + <img className="bordered-img" src="/docs/assets/scim/okta/to_app_edit.png" alt="Okta To App edit" decoding="async" loading="lazy"/> |
| 75 | + |
| 76 | +- Check the `Create Users`, `Update User Attributes`, and `Deactivate Users` checkboxes, and hit `Save`. |
| 77 | + |
| 78 | + <img className="bordered-img" src="/docs/assets/scim/okta/to_app_save.png" alt="Okta To App save" decoding="async" loading="lazy"/> |
| 79 | + |
| 80 | +## 4. Assign Users/Groups to Okta Application |
| 81 | + |
| 82 | +To select users for synchronization into ConfigCat, you have to assign their Okta group to the Application. |
| 83 | + |
| 84 | +- Select the `Assignments` tab, click on the `Assign` dropdown, and select `Assign to Groups`. |
| 85 | + |
| 86 | + <img className="bordered-img" src="/docs/assets/scim/okta/assign_groups.png" alt="Okta assign groups" decoding="async" loading="lazy"/> |
| 87 | + |
| 88 | +- Click the `Assign` button on those groups whose members you want to sync to ConfigCat. |
| 89 | + |
| 90 | + <img className="bordered-img" src="/docs/assets/scim/okta/assign_group.png" alt="Okta assign group" decoding="async" loading="lazy"/> |
| 91 | + |
| 92 | +The above action starts the synchronization of the selected users but not their groups. |
| 93 | + |
| 94 | +:::caution |
| 95 | +Okta does not support using the same Okta group for assignments and for syncing group-member relations. |
| 96 | +You need to create a separate group that is used exclusively for syncing group-member relations. |
| 97 | +These groups are called `Push Groups` in Okta. |
| 98 | + |
| 99 | +To learn more, see <a href="https://help.okta.com/en-us/content/topics/users-groups-profiles/usgp-about-group-push.htm" target="_blank" rel="noopener noreferrer">Okta's documentation about Push Groups</a>. |
| 100 | +::: |
| 101 | + |
| 102 | +To enable group syncing, create separate groups for the users that you want to sync and add these new groups to the application as `Push Groups`. |
| 103 | + |
| 104 | +- Go to the `Push Groups` tab, click on the `Push Groups` dropdown, and select `Find groups by name`. |
| 105 | + |
| 106 | + <img className="bordered-img" src="/docs/assets/scim/okta/push_groups.png" alt="Okta push groups" decoding="async" loading="lazy"/> |
| 107 | + |
| 108 | +- Select the group that you want to push, and click on the `Save` button. |
| 109 | + |
| 110 | + <img className="bordered-img" src="/docs/assets/scim/okta/add_push_group.png" alt="Okta add push group" decoding="async" loading="lazy"/> |
| 111 | + |
| 112 | +- Make sure that the created push group's status is active. |
| 113 | + |
| 114 | + <img className="bordered-img" src="/docs/assets/scim/okta/push_group_active.png" alt="Okta push group active" decoding="async" loading="lazy"/> |
| 115 | + |
| 116 | +- You should see each synced group and user on ConfigCat's <a href="https://app.configcat.com/organization/authentication/" target="_blank" rel="noopener noreferrer">Authentication & Provisioning</a> page. |
| 117 | + |
| 118 | +## 5. Next Steps |
| 119 | + |
| 120 | +- Continue with [assigning ConfigCat permissions to the synced groups](../overview.mdx#groups). |
0 commit comments