This howto is intended to be a guide for adding 'Send As' functionality to ClearOS' implementation of Zarafa. It is also intended as a technical guide for inclusion of 'Send As' functionality in the user interface.
The default Zarafa Server configuration in /etc/zarafa/ldap.cfg contains the following attribute which do NOT need to be changed:
This is the attribute in the user record which contains the resource which has access to this user ability to 'send as'.
Possible values here are 'text' and 'dn'. The value'dn' is required for Active Directory. The value 'text' is required for OpenLDAP.
This value is blank and when left blank refers to the ldap_user_unique_attribute value in the same file which in this case is:
So it is the uidNumber that needs to be correlated to the attribute type.
Sufficient testing is required to determine if a 'service zarafa-server reload' is required after an add of the zarafaSendAsPrivilege attribute to the OpenLDAP database.
You will need the following information to proceed with an add:
Both of these can be obtained by referencing the Directory Server module in Webconfig. For this example we will be using the Bind DN of 'cn=manager,ou=Internal,dc=example,dc=com' and the Bind password 'abcdefghijklmnopq'.
You will also need a list of user DNs for EACH user that will be granted 'Send As' permissions for. You will also need a list of users that will be granted 'Send As' permissions to. This can be confusing so let's imagine that I have two users; Angela Bobson (abobson) and Bruce Tomson (btomson). I need to give abobson the ability to send emails as though from her email account where she changes the from address to btomson and those emails appear to be from him.
For this exercise, I will need atomson's uidNumber and btomson's DN. You can gather all this information by performing a dump of your LDAP user database:
slapcat -n3 > /root/ldapdump
This command will overwrite any existing file in this directory of the same name with the current contents of your user database in LDAP.
You can then edit this text file and find your information.
To make the change to LDAP you will need to make an LDIF import file. Let us say these are the two pertinent source records we are dealing with:
dn: cn=Angela Bobson,ou=Users,ou=Accounts,dc=example,dc=com uidNumber: 1007 uid: abobson givenName: Angela sn: Bobson objectClass: top objectClass: posixAccount objectClass: zarafa-user cn: Angela Bobson mail: firstname.lastname@example.org
dn: cn=Bruce Tomson,ou=Users,ou=Accounts,dc=example,dc=com uidNumber: 1008 uid: btomson givenName: Bruce sn: Tomson objectClass: top objectClass: posixAccount objectClass: zarafa-user cn: Bruce Tomson mail: email@example.com
From this information we will create our ldif file by supplying the values for the appropriate DN and uidNumber. Use this information to create a file named after the user that will have their name in the from field (ie. btomson). This file will contain the DN for btomson and the uidNumber for abobson.
dn: cn=Bruce Tomson,ou=Users,ou=Accounts,dc=example,dc=com changetype: modify add: zarafaSendAsPrivilege zarafaSendAsPrivilege: 1007
We will use the Bind DN information gathered and the Bind password to now add this ldif change to the running OpenLDAP database:
ldapmodify -D cn=manager,ou=Internal,dc=example,dc=com -w abcdefghijklmnopq -f btomson.ldif
You may need to reload the zarafa-server service to make this go into effect immediately.
service zarafa-server reload
Test this in Outlook by adding the From field to your send message box. Then be sure to pull the name from the Global Address Book on Angela's machine and select 'Bruce Tomson'