Installing the Apex Task E-mailer and LDAP Synchronization Service

To enable automatic e-mails, ensure that your Windows Account is a member of Domain Admins and follow the steps below. (The minimum permissions that the service account needs is db_owner control of the Apex database, local read permissions on the xml configuration file for the service, and event logging permissions. If the service will write information from the Apex database to Active Directory then the service account also needs write permission on all Active Directory users.)
  1. Choose the server that will host the service. The server needs network access to the Apex database. If the service will send e-mails then the server also needs access to an SMTP server. (If the service will synch with LDAP but not send e-mails then SMTP access is not required.) Apex recommends that you install the e-mailer service on an existing SMTP server that does not require SMTP authentication.
    If the SMTP server is a remote computer then it must grant relay permissions to the local server. Also, the e-mailer service cannot pass SMTP credentials.
  2. Log on to the target server. Download (6M), and save it to a folder that you can easily reach from the command line. Open a command prompt in administrative mode. (Search for cmd, right-click it, and run it as administrator.) Run the msi installer from the command line.
    If the msi fails then ensure that .NET Framework 3.x is installed on the server. The service cannot use versions 4.x or greater. Versions 3.x and 4.x can be safely installed together.
  3. After the service installs, open the apexTaskEmailer.xml configuration file with notepad. The file is usually located at C:\Program Files (x86)\Apex\Apex Task Emailer\apexTaskEmailer.xml. Edit the file and change the database and SMTP keys to point to your database and SMTP server.
    You may choose to create an administrative SQL account and use that account in the database connection string. Otherwise, database permissions will be determined by the Windows Account in which the service runs. Two example connection strings are listed below. One uses Windows Authentication and the other uses SQL Authentication.

    Data Source=.;Database=IHR;Trusted_Connection=Yes
    Data Source=.;Database=IHR;User Id=SQLEmailAccount;Password=colts2007
  4. To enable LDAP\Active Directory synchronization, open apexTaskEmailer.xml and set <syncLDAP enable="true">. To use Apex as the master and LDAP as the slave, list fields in the <intrinsicApexFieldToLDAPMaps> and <customApexFieldToLDAPMaps> sections. To use LDAP as the master and Apex as the master, list fields in the <LDAPtoIntrinsicApexFieldMaps> and <LDAPtoCustomApexFieldMaps> sections. See comments in the xml configuration file for more information.
  5. Open the computer's list of services. Find Apex Task E-mailer.
    If you choose to use Windows Authentication instead of SQL Authentication then right-click the service, edit its properties, and change the Windows Account to a domain account that has administrative database access (member of IHR.db_owner). Note that the domain account needs read permissions on the local apexTaskEmailer.xml and should have a password that never expires. Daemon accounts work great. file.
  6. Right-click the service and start it. Review your application event log to confirm that the service started successfully.