Creating an AD Connector to Update AD when the Service Manager CMDB is Updated Using PowerShell and Workflow

Someone on one of our internal discussion groups this morning asked how they could update AD when a User object is updated in the Service Manager CMDB.  The scenario was that the customer knew the data in AD for people’s phone numbers was out of date.  So – they wanted to use the service desk staff to get it up to date.  Each time a user called in for service they will ask the user to verify their phone number or provide a new one.  In this case they were planning to manually run a SQL query in the CMDB to get all the new phone numbers once per day and then update them in AD (again, I presume manually).

There are two problems with this approach:

  • Why do this manually when it can be easily automated and done in real time using a tiny bit of PowerShell in a workflow in SCSM that is triggered as soon as the property value changes?
  • The AD connector runs 1x/hour.  If you enter the new phone number in the Service Manager CMDB, within the hour it will be overwritten by the old number from AD the next time the AD connector runs.  You need to correct it in the source ASAP.

So – here’s a quick video on how to set something like this up.  This is really just a small example of what you could do with AD or any other PowerShell accessible system like Exchange, Windows Server, VMM, SCOM, SCSM, VMWare, DPM, IIS, SQL, Hyper-V, ….

Try running this full screen in HD for full effect!