One of the Box API features SkySync uses to maximum advantage is the “on behalf of” API feature. This allows SkySync to be configured with one or more administrative connections, and then as required impersonate any user in the Box Enterprise. Beyond enabling accurate manipulation of owner information like last modified by and related properties, this impersonation gives SkySync the capability to migrate (or replicate) entire organizations into a Box enterprise effectively. The most exciting use of this capability in SkySync is User Drive Mapping to map user network share folders to individual Box accounts.
SkySync recently enabled a large organization sync/migrate 12,000 users from network shares to Box. The main use case was to translate a folder name for each user (ex. Jsmith) into a Box account (ex. [email protected]), then copy the data from the user folder into the users specific Box account. Further, part of the challenge was that users were also identified by ID in some instances. SkySync solved this challenge with LDAP mapping. the entire process was automated by configuring SkySync to query Active Directory, consume specific attribute data, while leveraging that data to map user-accounts and directories
Configuring a SkySync master job defines the rules for the mapping, filters, settings, and other information about how SkySync will process content. Once these rules are established, the master job will maintain a list of sub-jobs that implement the migration or synchronization for each individual user. This list automatically will grow and shrink as migrations (or Syncs) are completed, user accounts are provisioned/decommissioned, etc. This dramatically eases maintenance requirements as the master job keeps track of what work needs to be done without additional information as long as the rules do not change.
One consideration with using Box’s on behalf of feature is how rate limiting works with the platform. The rate limits are applied prior to the impersonation. Thus using just a single admin account to impersonate 10,000 users would have a high probability of encountering rate limiting (ex. 429) errors. To facilitate large migrations with maximum performance, SkySync also provides what we call “connection pooling”. Multiple, separate admin accounts can be utilized to multiple create connection streams to Box within SkySync. These connections are aggregated within a named pool, and this named pool is then used as the destination of the user mapping job. This allows SkySync to operate with a significantly higher API rate to Box if a customer requires it.
You can check out this short demo of how SkySync can automate mapping your entire organizations user folders to their new Box accounts at https://vimeo.com/140186675.