Syncing Active Directory with Borrowers and GenieKey

by Jonathan Jacobsen Friday, August 28, 2009 11:36 AM

In a project we worked on over the summer, we needed a way to sync staff information in an Active Directory database with the Inmagic Genie borrower and user login records. Single sign on had been enabled so that staff can access their MyGenie interface to see an up to date list of their loans, orders and reserves without having to manually login. Since borrower and user information is stored in 2 separate textbases (Borrowers and GenieKey), we knew there would be several steps involved in moving and synchronizing this information. The organization has ~1,200 employees, who move departments, change names, and come and go, so it was clear that an automated sync process would save time and effort, compared to library staff manually updating Genie.

We concluded that the Inmagic PowerPack Importer was ideal for automatically importing data into the Borrowers and GenieKey textbases, but that an additional tool would need to be developed for automatically extracting data from Borrowers and Active Directory. The client developed the AD export, and from Andornot came... Extract-o-matic!

Extract-o-matic is a small, command-line application, written in C#, that uses an ODBC connection to a textbase and writes output to a text file. It accepts as input the textbase name and ODBC DSN connection, the names of fields to be extracted, a query string to select records, and information about the desired output format. Output is a single line per record extracted, so a comma-separated or tab-separated format works well (but XML could be generated as well).

The complete data migration process in this project is:

  • An Active Directory CSV export file is generated and placed in a folder watched by the Importer.
  • The AD data is imported into the Genie Borrowers textbase by the Importer, updating existing records and creating new ones.
  • A scheduled task runs a batch file to direct Extract-o-matic to select all Borrower records except those of library staff and system administrators and writes these records to a text file in a different folder also watched by the Importer.
  • The Borrower export is imported into the GenieKey textbase by the Importer to update all regular staff user records (library staff and admins with higher Genie privileges are not updated).
  • Exception logs are monitored and any issues handled.
  • A separate, manual process is followed to handle staff who leave the organization.

This automated synchronization of an Active Directory staff database to Genie Borrowers and users works well, freeing employees and library staff for other work. We expect to find other uses for Extract-o-matic in the future. Let us know if you think of any and we'll get you set up!

Please contact us for more information on this process or on the Inmagic Library Suite.

blog comments powered by Disqus

Month List