
A Safe Provisioning Flow
Date Posted:
11 Jul 2025
Category:
Security

A Safe Provisioning Flow
Date Posted:
11 Jul 2025
Category:
Security

A Safe Provisioning Flow
Date Posted:
11 Jul 2025
Category:
Security
Introduction Of Safe Provisioning Flow
A role with two Access Profiles needs to be provisioned from ISC. Of the two access profiles, one is for the Active Directory source, and the other is for the Entra ID source.
Problem Statement
Duplicate accounts are created in Entra ID when the CREATE operation is provisioned for two sources.
The reason for duplicate accounts is that since AD and Entra ID are in sync, when an account is created in AD, it also syncs to Entra ID and an account is created.
Consequently, duplicate accounts are generated anytime Entra ID provisioning via Sailpoint occurs; that is, two accounts are created in Entra ID, one from AD and the other from Sailpoint.
Findings
We must only let the creation of AD and not Entra ID.
Since AD and Entra ID are in sync, the account will be synchronized from AD to Entra ID.
Depending on traffic, the entire syncing procedure could take an hour or longer.
Aggregation from Entra ID to Sailpoint will require a few more minutes.
Therefore, the entire operation might take two hours.
Solution
1. Roles Need to be split
Present Situation: One role contains access profiles from two distinct sources.
To stop the provisioning process to Entra ID, we need to split those access profiles into two distinct roles.
The CREATE account operation to be executed only in AD and not in Entra ID.
Since the account has already been created via AD, we must initiate a MODIFY procedure provisioning to Entra ID after an hour in order to stop duplicate accounts from being created in AD.
Dimension:
We must first set up the role that has access to AD. Thus, an AD account will be created.
Second, the role that has the Entra ID needs to be configured. Entra Entitlement that is licensing need to be assigned.
Add the Entra ID entitlement in role:
Set the criteria as Entitlement – AD Source – Equals – Name of the entitlement
When we set like this Provisioning will be happened to Entra ID whenever the user is assigned to the specific entitlement.
Drawbacks:
Chance of Duplicate account creation in Entra ID.
Because SailPoint doesn’t know whether the account is there or not in Entra ID until the next aggregation.
2.Workflow creation for Entra Provisioning with time delay-For Entra tenants with only AD accounts synced.
Workflow is the second step.
For this we have to create the workflow using the following trigger and operations:
AD provisioning success- trigger
Get accounts
Wait operation for 1hr.
Aggregate the Entra source.
Check whether the user has account in Entra ID or not
If No account was there move to End Step.
Use another wait operation for One hour
Aggregate the Entra source.
If Account was thereà Manage Access – for Entra ID – Get Access (Modify)
End Step
3.Triggering Task Scheduler with script
We may automate and ensure that the AD-Entra ID sync happens immediately when an AD account is created. For this we use a task scheduler and a powershell script.
We may control the synchronization in Entra by running a powershell script upon a trigger of a new AD user created in the task scheduler
We start with the following scripts:
Launch -ADSyncSyncCycle - Initiate à Launch the sync immediately in accordance with the events.
By using this script, we are specifying that, rather than using scheduled triggering, the account will sync to Entra ID whenever it is created in AD.
Steps to Configure
Step 1: Open a task scheduler in the Active Directory Server, the Domain Controller

Step 2: Create Basic Task:
This opens a wizard that helps schedule tasks easily.

Step 3: On the trigger, create the new trigger and enter the event ID 4720 – new user created to run the specific task.

Step 4: Under Actions, choose the powershell script file that will automate the syncing process from AD to Entra ID.

Step 5: Powershell commands
Start -ADSyncSyncCycle – Initiate à Start the sync now based on the specific events.


Event Viewer for reference- This will display the name of the event and task category.

a. Event Viewer is a logging system where all synchronization processes are recorded.
b. It includes event IDs, the accounts that were synced, and detailed logs related to those events.

Entra ID Console
a. Here, you can see the duplicate accounts that were created from AD and other applications.
b. This is like how it works in SailPoint—one account gets created from AD due to the sync process.
c. The other account is created through the SailPoint provisioning process.

Conclusion
Understanding the synchronization link between Active Directory (AD) and Entra ID is crucial to avoiding the creation of duplicate accounts in Entra ID when provisioning using SailPoint ISC.
Allowing SailPoint to provision directly to Entra ID also results in redundant accounts because Entra ID already receives user objects from AD.
Using a conditional provisioning approach and dividing responsibilities allows us to:
Make sure that only AD performs the CREATE operation.
To create the user in Entra ID, rely on the native AD → Entra ID sync.
Only when the AD-to-Entra sync is finished may access entitlements be provisioned in Entra ID using a delayed MODIFY operation or workflow logic.
This method guarantees.
Entra ID has no duplicate accounts.
More streamlined and consistent provisioning processes.
Improved governance alignment and quicker troubleshooting.
Stay tuned to our blog to see more posts about
Sailpoint products implementation and its related updates.
Stay tuned to our blog to see more posts about
Sailpoint products implementation and its related updates.
Category:
Security
Stay tuned to our blog to see more posts about
Sailpoint products implementation and its related updates.
Stay tuned to our blog to see more posts about
Sailpoint products implementation and its related updates.
Category:
Category:
Security
Security
Get your
Tailored Quote for your
Organisation
Get your
Tailored Quote for your
Organisation
Introduction Of Safe Provisioning Flow
A role with two Access Profiles needs to be provisioned from ISC. Of the two access profiles, one is for the Active Directory source, and the other is for the Entra ID source.
Problem Statement
Duplicate accounts are created in Entra ID when the CREATE operation is provisioned for two sources.
The reason for duplicate accounts is that since AD and Entra ID are in sync, when an account is created in AD, it also syncs to Entra ID and an account is created.
Consequently, duplicate accounts are generated anytime Entra ID provisioning via Sailpoint occurs; that is, two accounts are created in Entra ID, one from AD and the other from Sailpoint.
Findings
We must only let the creation of AD and not Entra ID.
Since AD and Entra ID are in sync, the account will be synchronized from AD to Entra ID.
Depending on traffic, the entire syncing procedure could take an hour or longer.
Aggregation from Entra ID to Sailpoint will require a few more minutes.
Therefore, the entire operation might take two hours.
Solution
1. Roles Need to be split
Present Situation: One role contains access profiles from two distinct sources.
To stop the provisioning process to Entra ID, we need to split those access profiles into two distinct roles.
The CREATE account operation to be executed only in AD and not in Entra ID.
Since the account has already been created via AD, we must initiate a MODIFY procedure provisioning to Entra ID after an hour in order to stop duplicate accounts from being created in AD.
Dimension:
We must first set up the role that has access to AD. Thus, an AD account will be created.
Second, the role that has the Entra ID needs to be configured. Entra Entitlement that is licensing need to be assigned.
Add the Entra ID entitlement in role:
Set the criteria as Entitlement – AD Source – Equals – Name of the entitlement
When we set like this Provisioning will be happened to Entra ID whenever the user is assigned to the specific entitlement.
Drawbacks:
Chance of Duplicate account creation in Entra ID.
Because SailPoint doesn’t know whether the account is there or not in Entra ID until the next aggregation.
2.Workflow creation for Entra Provisioning with time delay-For Entra tenants with only AD accounts synced.
Workflow is the second step.
For this we have to create the workflow using the following trigger and operations:
AD provisioning success- trigger
Get accounts
Wait operation for 1hr.
Aggregate the Entra source.
Check whether the user has account in Entra ID or not
If No account was there move to End Step.
Use another wait operation for One hour
Aggregate the Entra source.
If Account was thereà Manage Access – for Entra ID – Get Access (Modify)
End Step
3.Triggering Task Scheduler with script
We may automate and ensure that the AD-Entra ID sync happens immediately when an AD account is created. For this we use a task scheduler and a powershell script.
We may control the synchronization in Entra by running a powershell script upon a trigger of a new AD user created in the task scheduler
We start with the following scripts:
Launch -ADSyncSyncCycle - Initiate à Launch the sync immediately in accordance with the events.
By using this script, we are specifying that, rather than using scheduled triggering, the account will sync to Entra ID whenever it is created in AD.
Steps to Configure
Step 1: Open a task scheduler in the Active Directory Server, the Domain Controller

Step 2: Create Basic Task:
This opens a wizard that helps schedule tasks easily.

Step 3: On the trigger, create the new trigger and enter the event ID 4720 – new user created to run the specific task.

Step 4: Under Actions, choose the powershell script file that will automate the syncing process from AD to Entra ID.

Step 5: Powershell commands
Start -ADSyncSyncCycle – Initiate à Start the sync now based on the specific events.


Event Viewer for reference- This will display the name of the event and task category.

a. Event Viewer is a logging system where all synchronization processes are recorded.
b. It includes event IDs, the accounts that were synced, and detailed logs related to those events.

Entra ID Console
a. Here, you can see the duplicate accounts that were created from AD and other applications.
b. This is like how it works in SailPoint—one account gets created from AD due to the sync process.
c. The other account is created through the SailPoint provisioning process.

Conclusion
Understanding the synchronization link between Active Directory (AD) and Entra ID is crucial to avoiding the creation of duplicate accounts in Entra ID when provisioning using SailPoint ISC.
Allowing SailPoint to provision directly to Entra ID also results in redundant accounts because Entra ID already receives user objects from AD.
Using a conditional provisioning approach and dividing responsibilities allows us to:
Make sure that only AD performs the CREATE operation.
To create the user in Entra ID, rely on the native AD → Entra ID sync.
Only when the AD-to-Entra sync is finished may access entitlements be provisioned in Entra ID using a delayed MODIFY operation or workflow logic.
This method guarantees.
Entra ID has no duplicate accounts.
More streamlined and consistent provisioning processes.
Improved governance alignment and quicker troubleshooting.