Thanks to visit codestin.com
Credit goes to modal.com


SCIM Integration

SCIM (System for Cross-domain Identity Management) is a protocol that Identity Providers (IdPs) can use to automate user management in connected apps.

Modal supports SCIM for automatic provisioning and deprovisioning of users.

Connecting an IdP 

Step 1: Generate a SCIM token 

  1. Sign in to https://modal.com and visit your Workspace Management page’s “Identity and Provisioning” tab. If SCIM is enabled for your Workspace, there will be a “SCIM Tokens” section on the page below the SSO configuration settings. If you do not see a section for SCIM tokens, contact Modal support about enabling SCIM support for your Workspace.
  2. Click on “New SCIM Token” then “Create Token”.
  3. A new token will be generated and displayed to you. Copy the value from the “Token Secret” box and store it somewhere secure. You can also copy the exact url that the IdP will require to integrate with your Modal Workspace. Once you click “Done”, you will not be able to view the token secret again and will have to generate a new one if you can’t otherwise access it.

Step 2: IdP Configuration 

  1. Create a private SCIM integration.

    The SCIM integration must be separate from the Modal catalog app used for SAML SSO. Your existing Modal app can continue to handle SSO; do not add SSO to the SCIM integration.

    In the Okta Admin Console:

    1. Go to “Applications > Applications”.
    2. Click “Create a new app integration”.
    3. Select “Okta Integration Wizard”.
    4. Choose “Provisioning” as the capability.
    5. Choose “SCIM 2.0” as the provisioning method.
  2. Configure the integration with your Modal SCIM credentials.

    In the wizard’s provisioning settings, enter:

    Okta settingModal value
    SCIM connector base URLhttps://modal.com/api/<your-workspace>/scim/v2
    Unique identifier field for usersuserName
    Authentication modeHTTP Header
    AuthorizationThe full SCIM token generated in step 1
    Supported provisioning actionsPush New Users, Push Profile Updates, and Push Groups

    Test the API credentials, then review and deploy the integration. When prompted, add an app instance from your organization’s “Private apps” catalog.

    In the app instance’s “Provisioning > To App” settings, enable “Create Users”, “Update User Attributes”, and “Deactivate Users”. Assign the people and groups that Okta should provision to Modal.

    For more information, see Okta’s Okta Integration Wizard documentation.

Modal supports the following SCIM capabilities:

CapabilitySupportedNotes
SCIM 2.0Yes
PaginationYes
Create, update, and remove usersYes
Create, update, and delete groupsYes
Update group membership with PATCHYes
Generate temporary passwordsNoModal authentication uses SSO

The IdP may also ask you to specify which user attributes are supported.

SCIM user attributeModal supportNotes
externalIdYes
userNameYesRequired; must contain the user’s email address
displayNameYes
name.familyNameYes
name.givenNameYes
emailsRead onlyThe primary email is derived from userName
activeYes
addressesNo
profileUrlNo

Managing Tokens 

Token management is restricted to only workspace owners and managers.

Up to two SCIM tokens may be active at any time. It may be useful to generate a second token to facilitate seamless token rotation - a workspace admin can generate a new token, use it to replace the old one in the connected IdP, and finally revoke the old token to ensure that no updates are dropped during the rotation process. Except during the process of rotation we recommend having only one SCIM token active at a time as a security best practice.

Troubleshooting 

If your IdP indicates that it is unable to authenticate with Modal, first double check that the token was copied correctly - the full token will have the form si-XXXXXXXXXXXXXXXXXXXXXX:ss-XXXXXXXXXXXXXXXXXXXXXX.

If you experience any issues with or have any questions about SCIM integration, please reach out via Slack or email us at [email protected].