Looking for SAML for Single Sign-On with Microsoft Entra? Click here
This guide provides step-by-step instructions to set up System for Cross-domain Identity Management (SCIM) provisioning between Microsoft Entra ID (formerly Azure Active Directory) and AskNicely. SCIM allows for automatic user provisioning and de-provisioning, streamlining your user management process.
You can choose between two provisioning options:
- Users provisioned automatically, but roles set manually within AskNicely
- Users provisioned automatically, including location-based data access
Additionally, we'll explain how to configure SCIM alongside SAML SSO, ensuring that SAML does not overwrite configurations set by SCIM.
Prerequisites
- AskNicely Administrator Account: Ensure you have admin access to your AskNicely account.
- Microsoft Entra ID Administrator Account: You need permissions to configure enterprise applications.
- Active SAML SSO Configuration: SCIM provisioning requires SAML SSO to be set up between Microsoft Entra ID and AskNicely. If you haven't configured SAML SSO yet, please refer to our SAML SSO Setup Guide before proceeding.
Section 1: Configure SCIM Provisioning
The initial steps for setting up SCIM provisioning are common to both user provisioning options.
Step 1: Add AskNicely Application in Microsoft Entra ID
- Sign in to the Microsoft Entra admin center with your admin credentials.
- Navigate to Azure Active Directory > Enterprise applications.
- Click on New application.
- Search for AskNicely in the gallery. If it's not available:
- Select Create your own application.
- Enter the name AskNicely.
- Choose Integrate any other application you don't find in the gallery (Non-gallery).
- Click Create.
Step 2: Configure Provisioning in Microsoft Entra ID
- In the AskNicely application overview, select Provisioning from the left menu.
- Click on Get Started if prompted.
Step 3: Set Provisioning Mode to Automatic
- In the Provisioning Mode dropdown, select Automatic.
Step 4: Obtain SCIM Endpoint and Secret Token from AskNicely
- Log in to your AskNicely admin account.
- Navigate to Settings > Users > SCIM.
- Copy the Base URL and API Token. You'll need these for Microsoft Entra ID.
Step 5: Enter SCIM Connection Details in Microsoft Entra ID
- In Microsoft Entra ID, under Admin Credentials:
- Tenant URL: Paste the SCIM Base URL from AskNicely.
- Secret Token: Paste the Secret Token from AskNicely.
- Click Test Connection to verify the credentials.
- If the test is successful, click Save.
Step 6: Configure Mappings (Optional)
By default, Microsoft Entra ID maps standard attributes. If you need to map additional attributes (e.g., for location-based access), you'll configure them in the next sections.
Section 2: Option 1 - Users Provisioned Automatically, Roles Set Manually
In this setup, users are automatically created and deactivated in AskNicely based on their status in Microsoft Entra ID. However, roles and permissions are managed manually within AskNicely.
Step 1: Start Provisioning
- In Microsoft Entra ID, under the Provisioning tab, set Provisioning Status to On.
- Click Save. Provisioning will start syncing users.
Step 2: Assign Users to the AskNicely Application
- Navigate to Enterprise applications > AskNicely > Users and groups.
- Click Add user/group.
- Select the users or groups you want to provision to AskNicely.
- Click Assign.
Step 3: Monitor Provisioning Status
- Under the Provisioning tab, click on Provisioning Logs to monitor the status.
- Ensure users are being provisioned successfully.
Step 4: Set Roles Manually in AskNicely
- In AskNicely, go to Settings > Users.
- Find the newly provisioned users.
- Assign the appropriate roles to each user.
- Click on the user’s name.
- Set their role (e.g., Admin, Manager, User).
- Save the changes.
Section 3: Option 2 - Users Provisioned Automatically with Roles and Location-Based Access
This option allows automatic provisioning of users along with their roles and location-based data access, based on attributes defined in Microsoft Entra ID.
Step 1: Extend the Schema for Custom Attributes
- Go to Azure Active Directory > Enterprise applications > AskNicely > Provisioning > Mappings.
- Click on Provision Azure Active Directory Users.
Step 2: Add Attribute Mappings
- Under Attribute Mappings, click on Show advanced options.
- Click Edit attribute list for customappsso.
- Add new attributes:
-
Name:
role
- Type: String
- Multi-valued: No
- Referenced Object Type: None
- Attribute Required: No
- Add Attribute.
- Repeat for location or any other custom attribute.
-
Name:
- Click Save.
Step 4: Map Azure AD Attributes to AskNicely Attributes
- Back in Attribute Mappings, click Add New Mapping.
- Configure the mapping for Role:
- Mapping Type: Direct
-
Source attribute: Select the Azure AD attribute (e.g.,
jobTitle
,extensionAttribute1
) -
Target attribute:
role
- Match objects using this attribute: Unchecked
- Apply this mapping: Always
- Repeat for Location attribute:
- Source attribute: Select the appropriate Azure AD attribute.
-
Target attribute:
location
- Click Save.
Step 5: Start Provisioning
- In the Provisioning tab, ensure Provisioning Status is set to On.
- Click Save.
Step 6: Assign Users and Define Attribute Values
- Go to Users and groups in the AskNicely application.
- Assign users or groups as before.
- For each user, ensure that the Azure AD attributes for Role and Location are populated:
- Go to Azure Active Directory > Users > Select a user.
- Edit their profile to set the Job Title or Custom Attribute used for mapping.
Step 7: Monitor Provisioning and Verify in AskNicely
- Check the Provisioning Logs to ensure users are provisioned without errors.
- In AskNicely, navigate to Settings > Users.
- Verify that users have the correct roles and location-based access as per the attributes.
Section 4: Configure SCIM and SAML Together
When using SCIM and SAML simultaneously, it's essential to prevent SAML from overwriting user attributes managed by SCIM.
Understanding the Interaction
- SAML SSO: Primarily handles authentication. It can pass user attributes during login.
- SCIM Provisioning: Manages user creation, updates, and de-provisioning, along with user attributes.
Potential Conflict
- If both SAML and SCIM are configured to manage user attributes, SAML assertions during login can overwrite attributes set by SCIM.
Preventing Attribute Overwrite
Prioritize SCIM over SAML for Attribute Management
- Ensure that attribute mappings in SAML are either disabled or set to not overwrite existing attributes.
- Rely on SCIM for managing user attributes and roles.
Verifying the Configuration
- After making changes, perform a test login via SAML SSO with a user.
- Ensure that the user's role and location in AskNicely remain as set by SCIM and are not overwritten.
- Check the user's attributes in AskNicely to confirm they match the SCIM provisioning data.
Additional Tips
- Consistent Attribute Usage: Ensure that the same attributes are not being managed by both SAML and SCIM unless explicitly intended.
- Attribute Mapping Clarity: Clearly document which system (SAML or SCIM) is responsible for each user attribute.
- Regular Monitoring: Periodically review provisioning logs and user attributes to catch any discrepancies early.
- User De-Provisioning: SCIM will automatically deactivate users in AskNicely when they are removed or disabled in Microsoft Entra ID.
Need Assistance?
If you have any questions or require further assistance with configuring SCIM provisioning, please contact our support team at support@asknicely.com. We're here to help!