Subscription Required: This feature is available on select subscription plans only. Contact our Customer Success Team to learn more, or reach out to our Support Team with any questions.
What is User Provisioning with SCIM?
SCIM is an open standard that automates user management from an IDP and a SaaS service provider, in this case, Loopio. With our SCIM implementation, you are able to automatically provision (create a Loopio user directly within the IDP.
Prerequisites
- You currently use MS Entra for your user management needs
- You have SAML SSO enabled with Loopio. If you are already using SSO, steps 1-3 below may already be completed
Step 1: Access the Microsoft Entra Portal
- Navigate to the Microsoft Entra portal
- Sign in with your administrator credentials
Step 2: Register a New Application in MS Entra
- In the left-hand menu, select Application > Enterprise applications
- Click + New Application
- Click + Create your own application
-
Fill in the application details:
- What's the name of your app?: Enter a name for your app
- What are you looking to do with your application?: Choose the “Integrate any other application you don’t find in the gallery (Non-gallery)”
- Click Create
- After registration, you’ll be taken to the app overview page
Step 3: Configure Single Sign-On Settings
- In the left-hand menu, select Application > Enterprise applications
- Select your application
- Select Single sign-on from the application left-hand menu
- Select SAML
- Configure the “Basic SAML Configuration” as per below screenshot
- Identifier (Entity ID): loopio-sp
-
Reply URL (Assertion Consumer Service URL): https://LOOPIOURL/sso_saml/module.php/saml/sp/saml2-acs.php/loopio-sp
Learn more: What is my Company's Loopio URL?
- Download the SSO settings XML file from the “Federation Metadata XML” section. We will use this XML file to configure the “SAML SSO settings” in Loopio.
Step 4: Generate the token for SCIM from the Loopio Dashboard
Note: Before proceeding with SCIM setup, SAML SSO must be the only login method, and our Support Team must enable SCIM for your account. If you don't see the SCIM panel on your Admin screen, please reach out to our Support Team.
- In Loopio, access the Admin page
- Select the Integrations tab
- In the User Management section, on the SCIM tile, click Generate Token
- Copy this token to configure the provisioning in Entra
Step 5: Configuring the SCIM Provisioning in Entra
- In Entra, in the left-hand menu, select Application -> Enterprise applications.
- Select your application created in step 2 above
- Select Provisioning from the left menu
- Again, click on Provisioning from the left menu
- Under Provisioning Mode, select Automatic
-
Enter the SCIM API endpoint and authentication credentials provided by the target application
- Tenant URL: https://api.loopio.com/scim/entra (You need to add the tenant URL according to your Loopio environment)
- Secret Token: Paste the token that was generated in the previous step
- Click Test Connection to verify connectivity
- Save the configuration
- Refresh the page
Step 6: Set the Attribute Mapping for Provisioning
- Click Provisioning in the left menu of the application
- Click Attribute Mapping (Preview) (Note: If the 'Attribute Mapping' menu isn’t enabled, please refresh the page manually.
- Select Provision Microsoft Entra ID Users
-
Add/update the below attributes
- Save those changes
Attributes
Target attribute | Source attribute /Expression | Mapping type | Attribute Operation |
---|---|---|---|
active | Switch([IsSoftDeleted], , "False", "1", "True", "0") | Expression | Update |
emails[type eq "work"].value | userPrincipalName | Direct | Update |
roles[primary eq "True"].value | SingleAppRoleAssignment([appRoleAssignments]) | Expression | New |
Step 7: Create the Role for your Application
Create a new user role for your Entra application. These roles should match Loopio’s user roles.
- In the left-hand menu, select Application > App registrations
- Select your application from all app lists
- Select the App roles from the left menu
- Click Create app role
-
Follow the steps as per below screenshot and select Allowed member types as “Users/Groups” while creating the role
- Display name: Should match a Role name in your Loopio account (eg Library User)
- Allowed member types: Users/Groups
- Value: Replace the spaces in the Loopio Role name with underscores (eg Library_User)
- Description: The role description is for internal reference only and is not displayed to users
- Once you’ve created all the roles, refresh the page
Step 8: Assign users to the application
- In the left-hand menu, select Application > Enterprise applications
- Select your application
- Go to the Users and groups menu
- Click + Add user/group
- Select the Users
- Select a Role for those Users. If the 'Select a Role' option isn’t enabled, please refresh the page manually
- Click Assign
Step 9: Start the Provisioning
- In the left-hand menu, select Application > Enterprise applications
- Select your application
- Select Provisioning from the left menu
- Click Overview (Preview)
- Click Start provisioning
Note: With automatic user provisioning, Microsoft Entra ID syncs user accounts based on assignments every 40 minutes (More Info).
Step 10: Monitoring Provisioning Log
- Navigate to the Provisioning Logs section to monitor provisioning activities
- Use the Audit Logs in Entra ID for troubleshooting
Step 11: Troubleshooting Common Issues
- Failed Connections: Verify the SCIM endpoint and authentication details
- Sync Errors: Check logs for detailed error messages and adjust attribute mappings
- User Not Provisioned: Ensure the user is assigned to the application
Migration
- If you have a user in Loopio, you should also have the same user in Entra
- If the user does not exist in Entra, please create the user in Entra. You can follow the steps in the link below to create a user in Entra: https://learn.microsoft.com/en-us/entra/fundamentals/how-to-create-delete-users
- If the user exists in Entra, assign them to the Loopio app as explained in Step 8
Note
- Users should have below valid details:
- First name (Required)
- Last name (Required)
- User Role (Must have a valid role)