Configure Data Uploader

Configure Data Uploader

Overview

The following section guides you on how to configure and use Data Uploader (DU) efficiently to get optimum performance.

For additional help, see the Data Uploader FAQ page.

Installation Requirements

Important: Currently, CAM supports and uses TLS 1.2 by default, but allows TLS 1.0/1.1 if the Data Uploader is run on a Windows 2012 Server.

On June 28, 2023, AWS is dropping all support for TLS 1.0/1.1 and this could affect users using Windows Server 2012 or older with the use of Data Uploader.

Windows Server 2016 and above are the natively supported versions with 1.2.

Hardware Requirements

  • A Windows PC or Server

    • Windows Server 2016+ is recommended for the note below.

Currently, CAM supports and uses TLS 1.2 by default, but allows TLS 1.0/1.1 if the Data Uploader is run on a Windows 2012 Server.

As of June 28, 2023, AWS dropped all support for TLS 1.0/1.1 and this could affect users using Windows Server 2012 or older with the use of Data Uploader.

Windows Server 2016 and above are the natively supported versions with 1.2.

  • At least 1GB of free space for program installation and execution

  • Internet access to upload the CSV to CAM; 50mbps or higher upload speed is recommended

Software Requirements

  • .NET Framework 4.8 or higher*

*= 4.8 is required for the new version of Data Uploader since Sprint 23.

Date Format

  • Format all date values as 

yyyy-MM-dd HH:mm:ss

To format the dates, go to Administration-> Settings->General tab-> Default Data Format.

 

image-20240528-140832.png

 

SQL Requirements

Firms are strongly recommended to use an on-premises SQL database (instead of SQLLite) when the firm is a medium to large-sized company or it has more than 5,000 active matters. This allows Delta syncs to perform more efficiently as only necessary workspaces and metadata will be updated.

If the firm is using an on-premises SQL database, these are the requirements:

  • SQL Server 2012 Standard Edition or above.

  • Windows Server 2016+ is recommended for the note below.

CAM Data Uploader does support SQL 2019 and 2022.

Important Note for Windows Server 2012

Currently, CAM supports and uses TLS 1.2 by default, but allows TLS 1.0/1.1 if the Data Uploader is run on a Windows 2012 Server.

As of June 28, 2023, AWS dropped all support for TLS 1.0/1.1 and this could affect users using Windows Server 2012 or older with the use of Data Uploader.

Windows Server 2016 and above are the natively supported versions with 1.2.

  • A dedicated or Shared SQL server

  • 8+GB of free RAM

  • 4+CPU (cores/threads)

  • 10+GB free hard disk space*

  • SQL Maintenance plans setup as typically configured.

  • *Solid state drive(s) are preferred for the SQL file storage

  • Collation is recommended to be SQL_Latin1_General_CP1_CI_AS for the US. If you get a collation error when running SQL scripts. add a collation conversion in the script.

  • A full recovery database option is recommended for production level environments, for the database restoration and login aspects. A dev or test or staging environment might be able to have a simple recovery set, but it is the firm’s decision!

Firewall and Port Requirements

Whitelist the following ports.

  • Port 443 should be open. CAM and Data Uploader utilize the HTTPS ports for requests. The API manages the requests, and no data is locally accessed or stored. If you’ve changed the default port for HTTPS, use the changed port. Check with your IT team if your firm has changed the port, and if so they need to open that default port on the corresponding HTTPS.

  • Port 1433 should be open for SQL communication between the on-premises SQL and the API. Check with your IT team if your firm has changed the port, and if so they need to open that default port on the corresponding SQL server.

 

User Account Requirements

Litera recommends a service account be used to run Data Uploader. For more details on setting up a user account, see https://pdocs.atlassian.net/wiki/spaces/CCAM/pages/26411024

This service account should have:

  • Permission to download, install, and run the Data Uploader on the Desktop or server.

  • Read/Write access to the designated Data Uploader application directory.

  • Read access to the source database on the SQL server (to query the database and upload to CAM)

  • Permission to the local system to edit/enable the Windows Task Scheduler.

  • Read access to Active Directory.

  • Must be a system admin

    • If connecting to iManage, make sure this user no matter what role, is added as an NRTAdmin, otherwise 520 errors may occur when syncing or working with link workspaces.

  • If the user is using the CheckOut feature, the user will need at a minimum read/write access to the check-out path. If it is a path on the local PC, then that local PC will also need to be on the network.

Handling Bulk Jobs and Load Balancing within Data Uploader

Important: Currently, the daily Throttle limit is set to a maximum of 50,000 jobs daily for optimum and error-free performance. The Data Uploader (DU) can hold bulk jobs in the queue for up to 7 days from the job creation date. After 7 days, if they are not processed, the jobs are removed automatically from the queue.

Please Consider: If you have a large number of jobs that you need to run, you could start all jobs at the same time and let the Data uploader work through the backlog. However, this results in poor performance and even failure if the number of jobs is too high. The first few jobs are put into the Running state and the remaining jobs are put into the Queued state. This could make a lot of jobs fail even when they aren’t running and that can negatively impact the other jobs that are running. Please work with your partner or professional services consultant to discuss best practices of managing and queueing jobs.

Important: Currently, CAM supports and uses TLS 1.2 by default, but allows TLS 1.0/1.1 if the Data Uploader is run on a Windows 2012 Server.

As of June 28, 2023, AWS dropped all support for TLS 1.0/1.1 and this could affect users using Windows Server 2012 or older with the use of Data Uploader.

Windows Server 2016 and above are the natively supported versions with TLS 1.2. CAM supports these versions.

Best Practices

  • Set the number of jobs under the 50k limit for better performance, to ensure the jobs run. E.g. if undeclaring more than 50k records, batch into 40k amounts per day.

  • Use Data Uploader if the bulk actions from Service Desk or Analytics can’t handle the number of records that need to be modified.

Data Uploader Limits

Important: Currently, you can set the daily Throttle limit to a maximum of 50,000 jobs for optimum and error-free performance. Daily, you can upload the maximum jobs that are permitted as per the Throttle limit. After the daily limit is reached, you can find the Throttle limit warning message in the log.

For all limits or limitations of Data Uploader, please read this section:

https://pdocs.atlassian.net/wiki/spaces/CCAM/pages/1021673497/CAM+Limitations#Data-Uploader

 

To Download Data Uploader

  1. Navigate to Administration.

  2. Click on Downloads.

  3. Download the Data Uploader EXE installer.

  4. Navigate to the download location and double-click the program to start the installer.

Important: An admin user should run DU for the first time. Subsequent runs can be done with the logged-in user account.

Installing Data Uploader

  1. Ensure the requirements are met. The requirements can be found here.

  2. In the Welcome to Data Uploader Setup Wizard dialog, click Next.

  3. If you would like to install the Data Uploader somewhere other than the default location displayed in the installer, click Browse and navigate to your desired installation folder; otherwise, leave the path unchanged.

  4. To install it for your access only, click Just me or select Everyone to allow access to anyone using your system.

  5. Click Next to continue.

Tip: It is recommended to install the Data Uploader on the SQL server where the firm Time & Billing system/NBI application is being run.

  1. Click Close on the Installation Complete pop-up box once it notes DataUploader has been successfully installed.

  2. The Cloud Data Uploader is installed as a shortcut on your desktop. Double-click it to launch the application.

Note: The Cloud Data Uploader application must be run as Administrator to ensure optimal performance. Cntrl+Shift and right click to run as administrator.

Tip: CAM Data Uploader will warn the users if they have an outdated version of Data Uploader, and prompt a download link for the latest version. For subsequent upgrades, the Data Installer must be uninstalled and installed again.

Warning: You have to complete the External System Configuration set-up to use the Cloud Data Uploader.

 

Upgrading Data Uploader

Important: Please review all of these steps in detail before updating Data Uploader.

Installation

  1. Review the Hardware and Software Requirements for Data Uploader.

  2. You must create a backup of the existing DU database before the upgrade. If you are not utilizing a dedicated SQL database for DU, then skip this step.

  3. Make a backup copy of the current Data Uploader installation directory:

    • Prosperoware Data Uploader folder found at: C:\Program Files (x86)\Prosperoware\Prosperoware Data Uploader.

Information: The installation path is selected programmatically while installing the Data Uploader.

Note: 

  1. Verify the logs so that no DU upload jobs are running. If there are jobs running, wait until they are done processing. This is a required step, which may result in data loss if jobs are running during the upgrade.

  2. End and disable DU Windows scheduled tasks (if applicable) to prevent them from running while the upgrade is happening.

  1. Log into your CAM website.

  • If you are already logged in, sign out and sign in back in to ensure the latest update is available.

  1. Navigate to Administration

  2. Click on Downloads and download the latest version of Data Uploader onto the server where DU is installed.

Note: Browsers typically block MSI and exe installers downloaded from the internet, which may interfere with the version upgrade. Unblock the DU msi installer by Right-click on the file properties.

  1. Run the installation wizard.

  2. Click Next. Keep the install folder path the same.

  3. Click Next.

Note: The installation directory has changed slightly to “C:\Program Files (x86)\Prosperoware\CAM\Data Uploader\”

  1. This version of the Data Uploader now requires that you enter a Windows Services domain, username, and password of the service account.

  2. Click Install to begin the installation.

  3. Once the installation is complete, click Close to close the wizard. Continue with Updating the Configurations section below.

Updating the Configurations

The new Data Uploader application has replaced many of the previous configuration files with new config files after an upgrade happens. Since the following instructions for copying old configurations to the new files reference line numbers, we recommend using a program like Notepad++ or other tools that have line numbering available.

All configuration files are now in a directory under the install path called config located here:

C:\Program Files (x86)\Prosperoware\CAM\Data Uploader\service\config

If you have made any configuration changes to the following files, please follow the instructions below to copy your configurations to the new files. If you have not modified any of these files, you can skip this section

  1. Data.config

  2. UserPropertiesMapping.config

  3. SourceFilesConfig

  4. ADMapping File

  5. AppSetting.config

  6. CheckoutPathMap.config

 

Note that legal hold and retention controls are entered manually and are not supported to be entered via Data Uploader currently (2025).

Source Files Config

Source files set where the source files for Data Uploader and any mappings exist. The out-of-the-box configurations set uniqueids which are important unique identifiers in CAM and other systems used. This is a new configuration file that allows you to set a separate unique identifier for each of your provisioning scripts. Some content systems might support a matter index ID for a unique identifier, while others might only be able to support client and matter ID. This file configures the unique ID per script.

  1. Update the uniqueid line to the columns and source that makes a user unique to the firm. Most commonly it is the type of user, the userid, and the database of the source.

For example, uniqueid client id, matterid is pulled from CreateorUpdateWorkspace.sql

You need to have at least one set of unique fields for DataUploader to import data into CAM, this allows a ImportReference to be put together so the system knows what changed, especially when dealing with AD users and groups, as AD doesn’t track those changes easily.

 

Last Modified Date in the Config

If the last modified date is in the config, then the last modified date is used to check the data brought in. However, the Job Delta ensures the records from the sync before remain in the Staging tables. Only any new, or changed records get imported from there into CAM. Similarly, the SQL files tab will use the last modified date in those SQL files.

Modifying Application Settings

The application configuration can be further edited from the AppSettings.config file in the Data Uploader directory.

To restore a prior configuration:

  1. First, backup the appsettings.config.

  2. Then, upgrade Data Uploader as you normally would.

  3. Finally, restore the config, or copy the configuration to another system.

CheckOutPathMap.Config

Configure this script to scan for remote check-in files from Data Uploader.

The script looks like this. Use the attributes description to understand variables.

Ensure the service account has full access to the checked-out directory

### checkoutPathMap.config Overview The `checkoutPathMap.config` file is utilized by CAM to determine document checkout locations during remote check-ins. By default, this configuration file does not exist and must be manually created in the directory `C:\Program Files\Prosperoware.CAM\data`. The match patterns within this file can include multiple criteria, such as: - User name, PC name, and drive - User name and drive - PC name and drive - Drive #### Attributes Description | Attribute | Description | |---------------------|---------------------------------------------| | `match-user-name` | The name of a WorkSite user. | | `match-machine-name`| The name of a user's computer. | | `match-drive-name` | | | `replace-pattern` | | | `replace-start-with` | | #### Variables Description | Variable | Description | |-------------------------|----------------------------| | `@user@` | | | `@machine@` | Citrix session | | `@checkoutdrive@` | | | `@userhomedirectory@` | | | `@userhomedrive@` | | #### Configuration Example ```xml <configuration> <path match-drive-name="c:" replace-pattern="\\@machine@\@checkoutdrive@$\vvvvv" replace-start-with="@checkoutdrive@" /> </configuration>

 

CAM processes the checkoutPathMap.config file according to the following sequence:

  1. Check for a Matching Pattern

    Starting from the top of the checkoutPathMap.config file, CAM searches for a matching pattern. Once a match is found, CAM will not continue to read the remaining entries in the configuration file. The order of pattern matching is as follows:

    • Check for pattern: username (match-user-name) + machinename (match-machine-name) + drive (match-drive-name)

    • Check for pattern: username (match-user-name) + drive (match-drive-name)

    • Check for pattern: username (match-user-name) + machinename (match-machine-name)

    • The final check is for a drive only.

  2. Read and Parse the Replacement Pattern

    CAM compares the replace-start-with value and replaces it with the parsed replace-pattern. For example, if a file is checked out to C:\NrPortbl\file.doc on the machine desktop1, the following pattern designates the path as \\desktop1\c$\yyyy rportbl\file.doc:

  3. <path match-drive-name="c:" replace-pattern="\\@machine@\@checkoutdrive@$\yyyy" replace-start-with="@checkoutdrive@:"/>
  4. When No Pattern Match Found Occurs

    If no matching pattern is found in the checkoutPathMap.config file, CAM defaults to using the checkout path location recorded in the WorkSite database.

 

Implementation Notes

  1. matchdrivename will be according to the checked-out path. If you have a checkout path on the c drive then pass the matchdrivename like c:\. If you are using a network path for the checked-out document then enter the path like \\machine_ip\ i.e
    94.130.20.199

  2. To remotely check in a document for any checked-out document, implement this in the following way:

    1. Grant full access to the service account to the checkout dir.

    2. Add the following line to CheckoutPathMap.config on the Data Uploader server

      <path match-user-name="MyUserID" match-machine-name="MyLocalMachine" match-drive-name="c:" replace-pattern=\\@machine@\@checkoutdrive@$ replace-start-with="@checkoutdrive@"/>

Filtering Active Directory Users/Groups

ADMapping.config

Filtering on the data brought in from Active Directory can be done on the configuration file in Data Uploader. This is so specific users or groups can be included or excluded from the sync. Multiple values are supported, but users cannot add multiple in one configuration.

Please note:

  • Wild cards are not supported, only standard operations like =,<,>,<=,>=, <> and !=.

  • If the AD system has users from iManage, the users can be virtual, external or an AD user. These AD properties are supported, as well as domain and operating system.

  • Active Directory details are configured in the Data.config. Path to Data Uploader folder (C:\Program Files (x86)\Prosperoware\Prosperoware Data Uploader\Data.config).

To set the config:

A sample configuration is below for users:

<configuration> <maps> <map> <criteria> <ad-property name="isHuman" value="TRUE"/> <ad-property name="name" value="1" operator="%%"/> </criteria> <values> <dms-property name="Database" value="database_name"/> <dms-property name="Role" value="Role_name"/> <include name="user" value="true"/> <include name="group" value="true"/> </values> </map> <map> </configuration>

Set the following options for creating groups in Azure with the following:

  1. Office365 (recommended) - Allows teams to collaborate and share a workspace for conversations, files, and calendars using group email.

  2. Distribution - Allows to send emails to all group members.

  3. Mail-enabled security - Uses all distribution list functionality and additionally uses it to control access to OneDrive and SharePoint.

  4. Security - Allows to control access to OneDrive and SharePoint and uses for Mobile Device Management for Microsoft 365.

<default> <values> <property name="isCAMUser" values="False" appliesTo="Office365"/> <property name="isCAMGroup" values="False" appliesTo="Office365"/> <property name="SkipUpdateIfExists" values="True" appliesTo="Office365"/> <property name="Office365GroupType" values="Security" appliesTo="Office365"/> </values> </default>

Tip: The out-of-the-box Data.config file for AD can be downloaded here.

A list of Active Directory ad-properties and attributes can be found in the Microsoft documentation.

OU filtering

The organization units in Active Directory contain multiple groups with multiple users.
Now you can filter the user from a specific group in a single organization unit. The supported property is the "memberof." The "memberof" property takes the group name as a value and operators (%% - contains and !% - not contains) that are used to help in the filter. These parameters return the list of the users who are present or not present in the specific group.

The following are examples of supported operators:

Contain (%%)

<ad-property name="memberof" value="testgroup" operator="%%" />

Not Contain (!%)

<ad-property name="memberof" value="testgroup" operator="!%" />

Wildcard

A wildcard is a character(s) that substitutes for another character or string of characters when searching a database.

Searching for values in the ad-property name property using a wildcard is now supported.

The following are examples of a supported wildcard:

<ad-property name="company" value="tes" operator ="s%"/>

In the above example,

  • ad-property name - represents the search value or string.

  • Value – represents character(s). It must be present in the search value or string.

  • Operator – represents the searchable value. It must come either at the start of the string (s%) or at the end of the string (e%)

  • MultivaluedDatabasevalueMapping

    • It is a new database property value "MultivaluatedDatabase" which allows you to add multiple databases to the value field in AD-mapping that allows you to generate multi-input CSV or multi- delta CSV, respectively.

Sample Multivalueddatabase property value

<property name="Database" values="firstDatabase|secondDatabase|thirdDatabase" appliesTo="iManage"/>

Note: Multivalued database property is applicable only for the iManage system.

  • SkipUpdateIfExists

    • While importing new AD users to iManage for the first time, the property name "SkipUpdateIfExists" with a value ="True" for iscamuser and iscamgroup has been added in the AD-Mapping that allows you to skip the update programmatically if it exists already.

Sample SkipUpdateIfExists property value - iManage

<property name="SkipUpdateIfExists" values="true" appliesTo="iManage"/>

Sample SkipUpdateIfExists property value - M365

<property name="SkipUpdateIfExists" values="TRUE" appliesTo="Office365"/>

Note: Specify "SkipUpdateIfExists" property value manually only for M365.

  • Preferred Database field

    • Add property value "PreferredDatabase", allows you to specify the user's Preferred Database on user creation

Sample PreferredDatabase value

<property name="PreferredDatabase" values="WORKSITE2020" appliesTo="iManage"/>

Note: PreferredDatabase property is applicable only for the iManage external system.

Password flag Mapping

The property name “passwordExpired“ allows you to set the password expiration against user creation in iMange. Allows you to set password update on the first login after user creation in iManage using the property name “ForceUserToChangePassword“.

Note: passwordExpired and ForceUserToChangePassword properties are applicable only for iManage.

Sample Password flag Mapping

<property name="PasswordExpired" values="True" appliesTo="iManage"/> <property name="ForceUserToChangePassword" values="False" appliesTo="iManage"/>

 

AppSettings

App Settings allow for configuring the settings to the Data Uploader application as a whole. Any performance, or implementation settings reside in here.

Open up the AppSettings.config in C:\Program Files (x86)\Prosperoware\Prosperoware Data Uploader\service\configs file path.

 

Available Settings

  1. Show Fileshare: If your firm uses fileshares and imports from one in Data Uploader, set this to true during the implementation. The default is false.

  2. SQLFolderPath: This sets the folder where the SQL files to run that display in the SQL Files tab reside. If you’ve changed the folder location from default, change this before you implement and sync.

  3. CsvFolderPath: This sets the folder where CSV’s that were generated by the data uploader reside during the sync. If you’ve changed the folder location from default, change this before implementing and syncing.

  4. CSVArchiveFolderPath: Archived CSVs from jobs reside in this folder path. If you’ve changed the folder location from default, change this before implementing and syncing.

  5. CSVDelimiter: Tells what delimiter to use in CSV creation. \t is for tab separated and \c is for comma separated. Change this to the delimiter that your firm uses.

  6. DateFormat: Sets the format of dates handled through data uploader imports. The default is: yyyy-MM-dd HH:mm:ss.

  7. SyncGroups: Set as true to sync groups. This will be set to true if you select sync groups from the UI.  The default is false.

  8. SuppressScriptErrors: Set as true to eliminate extra debugging errors. Set as false if you are running into errors or not getting an error to an issue/ customer care recommends. Recommended to keep true until necessary. The default is true.

  9. CommandTimeout: Sets the timeout of DataUploader’s processing of syncs. The default is 600. Keep for the initial sync, unless your partner or professional services team or DevOps recommends a higher value, or if you see issues with timeouts with large batches.

  10. ArchiveFilesLifeCycle: Sets the retention period in days for archived files. The default is 30 days. E.g. if 30 days is set it will keep archived files for 30 days past when it was generated. If your firm requires a longer retention, change this value in implementation.

  11. RecordCountLimit: The limit of records to return per CSV when it is batching to upload to CAM. The default is 100. This setting can be changed in the Administration panel of CAM to override as well. This helps to batch the records.

  12. ThreadCount: Number of processor threads to use for DataUploader on the machine running DU. Keep in mind that this depends on the machine running DataUploader, as well as the DMS you may be syncing from like iManage. Do change this during implementation.

  13. ExportFolderLength: Character length max for the folder name. The default is 200 characters. If your folder name length is longer than this, you may see folder length errors, so increase this value.

  14. ExportDocumentLength: Character length max for the document name. The default is 200 characters. If your document name length is longer than this, you may see document length errors, so increase this value.

  15. DomainMachineName: This is the machine name or IP address of the AD server you are connecting to.

  16. SkipDupeDetection: If 0, this would enable duplicate detection in the sync and flag in the validation report and job any duplicates.

  17. DupeDetectionType: If 1, the log resides in the dupe folder path.

  18. DupeFolderPath: Path folder for duplicates to be logged in. “Duplicate” is the default.

  19. ReplicationSyncWaitTime: Time to wait between the replication of a sync to the next sync. The default is 30 seconds. If you set this too close, syncs may collide.

  20. MaximumExportConcurrency: Sets the number of items to concurrently process in export. The default is 20 items. If errors exist with timeouts or Unavailable, the number could be too high for the source server.

  21. EmailProfileColumns: The columns of metadata to include in the email profile. Default is: MessageId#Name,DateTimeReceived,DateTimeSent. Change this configuration during implementation if necessary to change the email profile columns.

  22. UserPictureProperty: The property to bring over the user’s pictures in the sync to CAM. The default is thumbnailphoto. If you don’t want pictures, remove this property in implementation.

  23. SyncNestedGroups: This parameter allows the syncing of nested groups and their children users and groups. The default is No (turned off). Turn this on if your firm in AD has one or more nested groups that you want to sync the nested groups and users.

  24. MaxGroupsPerBatch: Default for this is 50, which would batch the job if it contains groups. This helps process timely thousands of groups.

  25. BatchGroups: Set this to true if you need to batch groups. This should be used if there are large group numbers being processed.

  26. CreateBatchedUniqueId: Creates Adds a unique id for those in a batch of users and groups synced. Set to 1/True to use.

  27. ProcessCSVwithBatching: This setting turns on the batching process, and requires setting BatchGroups and CreateBatchedUniqueId to be reviewed and set. Set to 1/True to use.

 

App Settings Implementation Checklist

Must Review or Add

The following of the above settings need to be reviewed or added during implementation:

  • Show Fileshare

  • CSV Delimeter

  • DateFormat

  • SyncGroups

  • CommandTimeout

  • ArchiveFilesLifecycle

  • ThreadCount

  • ExportFolderLength

  • ExportDocumentLength

  • DomainMachineName

  • SkipDupeDetection

  • EmailProfileColumns

  • SyncNestedGroups

Optional or Default System Settings

The following settings are either defaults that may not need to be changed or optional settings:

  • SQLFolderPath

  • CsvFolderPath

  • CSVArchiveFolderpath

  • SuppressScriptErrors

  • RecordCountLimit

  • ReplicationSyncWaitTime

  • MaximumExportConcurrency

  • userPictureProperty

SQL Scripts

  1. Copy the scripts from the C:\Program Files (x86)\Prosperoware\Data Uploader\sql file to the new. C:\Program Files (x86)\Prosperoware\CAM\Data Uploader\sql

Please Note: Out of the box the CreateOrUpdateWorkspace.SQL script is included in the sql folder. You can delete this script if you already have scripts created. If you have not created any scripts, you can edit this script for use in provisioning.

  1. Move any additional custom scripts to this SQL folder.

Note: Users and groups can be created using two ways, one by uploading the API or CSV file and two by using the AD.

 

Testing new workspace provisioning scripts

To ensure the successful deployment of a new workspace provisioning script, testing is crucial. Follow these recommended steps for effective testing:

·       Validate the script in SQL and review the output to identify any issues with missing metadata, templates, or with script logic.

·       Update and revalidate the script to address any problems.

·       Use Data Uploader to generate a CSV and examine the data for accuracy.

Remove all but a few records from the CSV and submit a test job with this smaller dataset to ensure accuracy before full deployment.

Active Directory Synchronization Overview

Setting up AD Sync is critical for synchronizing users and groups to CAM from Active Directory.  The process is driven by a connection to each AD Organizational Unit (OU) where the users and groups to be synced are located, and configuring the ADMapping.config file.  All the OUs are filtered through this one file by the configuration of criteria filters and other attributes and properties that can be set. Ultimately, the result is a CSV of the applicable people which can be scheduled in Data Uploader to automatically be sent to CAM for processing.

 Here are the recommended steps for the setup and configuration of AD Sync:

  1. Review and cleanup Active Directory Organizational Unit data.

  2. Connect to Active Directory Organization Units via Data Uploader.

  3. Configure ADMapping.config.

  4. Update SourceFiles.config with Organization Units.

  5. Test the AD Sync configuration.

  6. Schedule the AD Sync.

1. Review and Cleanup Active Directory Organization Unit Data

AD data review and cleanup should focus on purging non-user entities such as printers, multi-function devices (MFDs), and other legacy connected devices from each OU to ensure only user data is synchronized, preventing unnecessary entries in the DMS that could complicate the data environment.

Note: Updating both UserID and Email at the same time will prevent iManage from making changes to that user and creates a duplicate user.

2. Connect to Active Directory Organization Units via Data Uploader

In Data Uploader’s Active Directory tab, use the Add button to add each Organization Unit that contains the users and group you wish to sync.  There is no limit to the OUs that can be added for synchronization.

For information on adding Organization Units, please see https://pdocs.atlassian.net/wiki/spaces/CCAM/pages/33456864/Configure+Data+Uploader#Active-Directory-tab-Connect-to-to-AD

For adding multiple OU’s see, https://pdocs.atlassian.net/wiki/spaces/CCAM/pages/edit-v2/33456864#Scheduling-multiple-OU-or-Container-syncs

3. Configure ADMapping.config

Overview

The ADMapping.config file, located in C:\Program Files (x86)\Prosperoware\CAM\Data Uploader\service\config, is pivotal for configuring AD Sync. This configuration tool defines the user and group data that will be organized in the CSV sent to CAM for processing, serving as the blueprint for synchronization.

All connected Organizational Units are configured within this single ADMapping.config file. The file contains three Objects (UsersAndGroups, UsersOnly, and GroupsOnly) with criteria that act as filters. For each OU, multiple instances of these Objects can be created, and their criteria configured to determine the specific users and groups to be included in the AD Sync process.  Properties and values for these users and groups can also be directly specified in the file, affecting the information that will be included in the CSV.  Once the ADMapping.config file has been configured, a CSV reflecting the user and group data configuration can be produced and provided to CAM for processing.

AD mapping rule ordering

You can also order Active Directory mapping rules in Data Uploader, giving you more control over the sequence in which rules are applied. This makes it easier to manage complex mappings and ensures that rules are processed in the desired order, leading to more accurate and predictable data uploads.

Ordering rules
  • Lower numbers execute first (1, 2, 3...)

  • UsersOrder/GroupsOrder take precedence over Order

  • Default value is 0

  • Backward compatible

XML EXAMPLE 1 - Basic Map Ordering: <AdConfiguration> <mapping> <map Object="UsersOnly" DC="dc1.company.com" OpType="Add" Order="1"> <Fields> <field adproperty="sAMAccountName" csvProperty="Username" Order="1" /> <field adproperty="displayName" csvProperty="DisplayName" Order="2" /> </Fields> </map> <map Object="GroupsOnly" DC="dc1.company.com" OpType="Add" Order="2"> <Fields> <field adproperty="cn" csvProperty="GroupName" Order="1" /> <field adproperty="description" csvProperty="Description" Order="2" /> </Fields> </map> </mapping> </AdConfiguration> XML EXAMPLE 2 - Per-Object-Type Ordering: <AdConfiguration> <mapping> <map Object="UsersOnly" DC="dc1.company.com" OpType="Add" UsersOrder="1" GroupsOrder="3" Order="10"> <Fields> <field adproperty="sAMAccountName" csvProperty="Username" Order="1" /> <field adproperty="mail" csvProperty="Email" Order="2" /> </Fields> </map> <map Object="GroupsOnly" DC="dc1.company.com" OpType="Add" UsersOrder="2" GroupsOrder="1" Order="20"> <Fields> <field adproperty="cn" csvProperty="GroupName" Order="1" /> <field adproperty="member" csvProperty="Members" Order="2" /> </Fields> </map> </mapping> </AdConfiguration>

Anatomy of the ADmapping.config File

Objects Section
image-20240816-115151.png
  1. Three objects are available: UsersAndGroups, UsersOnly, and GroupsOnly.

Let's Connect📌

☎ +1 630.598.1100
☎ ‪+44 20 3880 1550‬
📧 support@litera.com
💻 https://www.litera.com/support/

📝 Support is available:
4 am - 8 pm US Eastern
(9 am - 1 am GMT/BST
7 pm - 11 am AET) on normal business days (excluding holidays)

© 2024 Litera