Skip to content

Setting Up SCIM Provisioning

Phaset supports SCIM 2.0 (System for Cross-domain Identity Management) for automated user provisioning and deprovisioning from your identity provider. This eliminates manual user management and ensures users are automatically created, updated, and removed as changes occur in your identity provider.

SCIM automates user lifecycle management:

  • New user assigned → Automatically created in Phaset
  • User details updated → Changes sync to Phaset
  • User disabled or unassigned → User deactivated in Phaset
  • User deleted → User removed from Phaset

This ensures your Phaset user directory stays in sync with your identity provider without manual intervention.

Phaset’s SCIM implementation follows the SCIM 2.0 specification and should work with any compliant provider. However, it’s been primarily validated with:

  • Microsoft Azure Entra ID (formerly Azure Active Directory)

Other SCIM 2.0 providers should work but haven’t been officially validated. If you encounter issues with your provider, please contact support.

Before setting up SCIM, ensure you have:

  • Admin access to your identity provider
  • A Phaset organization ID (visible in the Phaset UI)
  • HTTPS enabled on your Phaset domain (required for secure token transmission)

SCIM tokens authenticate your identity provider when syncing users to Phaset. You manage these tokens in the Phaset application UI.

  1. Log in to Phaset as an administrator

  2. Navigate to Organization SettingsSCIM Tokens

  3. Click “Create New Token”

    Configure:

    • Description: Azure AD SCIM or similar identifier
    • Expiration: Choose a validity period (recommended: 365 days)
  4. Copy the token immediately

    The token format is: SCIM#{organizationId}#{token}

You can manage tokens in Organization SettingsSCIM Tokens:

  • Create tokens - Create a new token and update your identity provider before revoking the old one
  • View active tokens - See all tokens with their descriptions and expiration dates
  • Revoke tokens - Immediately invalidate a token (stops provisioning)
  1. Follow the SCIM Token Management section above to create a token. Keep it ready for step 4.

  2. Go to the Azure Portal.

    Navigate to Azure Active DirectoryEnterprise Applications.

    Find and select your Phaset application (the one you created for SSO).

  3. In your Phaset application, go to Provisioning in the left sidebar.

    Click Get started.

  4. Set Provisioning Mode to Automatic.

    Under Admin Credentials, enter:

    • Tenant URL: https://your-phaset-domain.com/scim/v2
    • Secret Token: Your SCIM token from step 1

    Click Test Connection.

    Click Save.

  5. Go to MappingsProvision Azure Active Directory Users.

    Verify these mappings exist (they should be present by default):

    Azure AD AttributePhaset SCIM AttributeRequired
    userPrincipalNameuserNameYes
    mailemails[type eq "work"].valueYes
    Switch([IsSoftDeleted], , "False", "True", "True", "False")activeYes
    displayNamedisplayNameNo
    givenNamename.givenNameNo
    surnamename.familyNameNo

    Click Save.

  6. Go back to your Phaset application overview.

    Click Users and groups in the left sidebar.

    Click Add user/group and select users or groups to provision to Phaset.

    Click Assign.

  7. Return to Provisioning settings.

    Change Provisioning Status to On.

    Click Save.

    Initial sync starts automatically and typically completes within 20-40 minutes.

You can monitor SCIM provisioning in Azure:

View Provisioning Status:

  • Go to ProvisioningView provisioning logs
  • See users being created, updated, or deactivated in real-time

Trigger Manual Sync:

  • Go to Provisioning → Click Start provisioning (if stopped)
  • Or click Restart provisioning to force an immediate sync

Provisioning Cycle:

  • Azure syncs automatically every 40 minutes
  • Initial sync processes all assigned users
  • Incremental syncs only process changes

SCIM and SSO work best together but can be used independently:

Benefits:

  • Fully automated user management
  • Streamlined login experience
  • Users automatically provisioned before first login

Setup order:

  1. Configure SSO first
  2. Set up SCIM provisioning
  3. Assign users in identity provider
  4. Users can immediately sign in via SSO

”401 Unauthorized” When Testing Connection

Section titled “”401 Unauthorized” When Testing Connection”

Cause: Invalid SCIM token or incorrect format.

Solution:

  • Verify token format: SCIM#{orgId}#{token}
  • Ensure no extra spaces or line breaks in token
  • Check token hasn’t expired
  • Verify organization ID is correct
  • Try creating a new token

Cause: Phaset server not reachable from identity provider.

Solution:

  • Verify Phaset is running and accessible
  • Check firewall rules allow inbound HTTPS traffic
  • Confirm SCIM URL is correct: https://your-domain.com/scim/v2
  • Test URL accessibility from external network

Cause: Provisioning not enabled or users not assigned.

Solution:

  • Verify Provisioning Status is On in Azure
  • Check users are assigned to Phaset application
  • Review provisioning logs for errors
  • Trigger manual sync: Restart provisioning
  • Wait for initial sync cycle to complete (20-40 minutes)

Cause: User exists but SSO isn’t configured, or email mismatch.

Solution:

  • If using SSO: Verify SSO is set up
  • Check email address matches between identity provider and Phaset
  • Verify user status is ACTIVE (not INACTIVE)
  • Review Phaset authentication logs

Changes Not Syncing After Initial Provisioning

Section titled “Changes Not Syncing After Initial Provisioning”

Cause: Azure provisioning cycle hasn’t run yet.

Solution:

  • Wait for next automatic sync cycle (~40 minutes)
  • Or trigger manual sync in Azure: Restart provisioning
  • Check provisioning logs for sync errors

Cause: SCIM token exceeded its validity period.

Solution:

  • Create a new token in Phaset
  • Update token in identity provider
  • Test connection
  • Delete old token from Phaset