One of the steps every organization takes when adopting Google Apps is user provisioning. Quite simply, before users can log in, they need an account to log in to!

There are a number of methods a Google Apps administrator can use to add users, including one at a time and CSV file upload via the control panel, programmatically using the Google Apps Provisioning API, or via commercial identity management products like Sxip Access or PingFederate.

I'm pleased to share another option: the Apache 2.0 licensed Open Source Google Apps Provisioning Toolkit, created in collaboration with Google Enterprise Professional partner SADA Systems.

The Provisioning Toolkit was created for domains with many hundreds or thousands of users with requirements that fall in to one of two scenarios:
  1. bulk provisioning from user information stored in an existing LDAP, SQL database, or CSV file
  2. self-registration, where users input their own info and provision their own account using a web form
The Toolkit should run on any system that supports Apache, PHP, and Python, or any system that supports the VMware Player -- download here.

Once downloaded and configured via a preferences file, the Toolkit presents either 1) a web page that makes it easy for an admin to provision, update, and delete large numbers user accounts very efficiently, or 2) an authenticated web page allowing users to self-register. Note that while it can be used to create, update, and delete accounts, it's not designed for unattended sync of user information.

Here's a quick overview:

It's also worth mentioning the Toolkit joins a few other open source projects that work with Google Apps, including the Google Email Uploader for migrating Outlook mail to a Google Apps mailbox and the Google Apps LDAP Sync project.