Setting up PowerShell AD Connector for SyncPortal

Active Directory (AD) is an employee directory service implemented by Microsoft for Windows domain networks. It is included in most Windows Server operating systems. This script is intended to query on-premises Active Directory, see here for AzureAD/Office365 export.

Your unique script will import selected users from your AD to your WhosOnLocation account, using the PowerShell Get-ADUser cmdlet, via secure upload to our server. The script is written in the PowerShell language, is fully auditable by the customer, and will work seamlessly with a web proxy if you use one.

You can download your unique script from your Sync Profile. This script will import data to the Sync Profile to be managed and monitored through your rules and logs.

2018-01-24_12-33-25.png

The Way It Works

  1. The script is run periodically from one of your computers under an account which can query the directory. Your system administrator will set this up (see http://support.microsoft.com/kb/324283).
  2. The script runs Get-ADUser and converts to CSV format.
  3. An encrypted HTTPS connection is made to our systems.
  4. The data is sent and merged with our database, new users are added, modified users are updated, and removed users are set to disabled.

Requirements

  • Windows PowerShell 4.0 or greater.
  • LDAP SearchBase, specifies the Active Directory path to export users from (example: "CN=Users,DC=example,DC=com").

Determining your search base

The search base is the location within Active Directory where the user export begins, all matching user objects under this location will be exported. The path is in LDAP Distinguished Name syntax.

If you do not know your user OU then a LDAP browser such as http://www.ldapadmin.org/ can be invaluable. You can also run a query from any member server on your Windows domain using the dsquery tool.

To find the User Base DN:

  • Open a Windows command prompt.
  • Type the command: dsquery user -name <known account name>
    (Example: If I were searching for all users named John, I could enter the username as John* to get a list of all users who's name is John)
  • The result will look like: "CN=John Smith,CN=Users,DC=Example,DC=com"
  • For your $searchbase variable in the script you would enter: CN=Users,DC=Example,DC=com

Scheduling

Once the sync is working it would typically be set to run on a regular schedule. To set up your scheduling, follow the below steps:

1. Open Task Scheduler

Open Task Scheduler and Create a new task. Name it and set the user account to one that is able to query Active Directory to extract the staff list. Enable the 'Run whether user is logged on or not' radio button.

sptask2.png 

2. Set Triggers

Click on the Triggers tab and set your schedule or event that will trigger the running of your PowerShell script. This is typically run once per day but can be any schedule.

sptrigger.png

3. Create your Action

Click on the Actions tab and click on New.

Action: Start a program

Program/script: Powershell.exe

Argument: This is the path to your PowerShell script, ie c:\temp\wol2-adsync.ps1

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request