[turba] ActiveSync -> LDAP - addressbook cannot be created because CN is missing
Oliver
oliverafg at gmx.de
Sun Oct 15 11:54:19 UTC 2017
Hello,
I am using a few LDAP addressbooks, a few global read only books and
one personal addressbook.
The synchronisation from LDAP to ActiveSync devices works fine.
A new entry from the webfrontend to LDAP and the clients works fine.
If I try to add a new entry on my cell phone, it isn't created in the
LDAP backend, because of a missing cn field.
I use the evolution schema
My relevant part of backends.local.php:
$_ldap_uid = $GLOBALS['registry']->getAuth('bare');
$_ldap_basedn = 'dc=kobosix,dc=lan';
$cfgSources['personal_ldap'] = array(
'disabled' => false,
'title' => _($_ldap_uid . " addressbook rw"),
'type' => 'ldap',
'params' => array(
'server' => 'MYLDAPSERVER',
'tls' => false,
'root' => 'ou=' . $_ldap_uid . ',ou=Personal,ou=addressbook,' .
$_ldap_basedn,
'bind_dn' => 'uid=' . $_ldap_uid . ',ou=User,ou=People,' . $_
ldap_basedn,
'bind_password' => $GLOBALS['registry']-> getAuthCredential('
password'),
'dn' => array('uid'),
'objectclass' => array('top',
'person',
// 'turbaContact',
'inetOrgPerson',
// 'calEntry',
'organizationalPerson',
'evolutionPerson'),
'scope' => 'one',
'charset' => 'utf-8',
'version' => 3
),
'map' => array(
'__key' => 'dn',
'__uid' => 'uid',
// From horde.schema:
// '__type' => 'turbaType',
// '__members' => 'turbaMembers',
'name' => 'cn',
'lastname' => 'sn',
'firstname' => 'givenname',
'namePrefix' => 'title',
'title' => 'businessRole',
'photo' => 'jpegphoto',
'birthday' => 'birthdate',
'anniversary' => 'anniversary',
'spouse' => 'spouseName',
// 'children' => 'children', // still missing
'company' => 'o',
'department' => 'ou',
'businessCategory' => 'businesscategory',
'emails' => 'mail',
'workPhone' => 'telephonenumber',
'fax' => 'facsimiletelephonenumber',
'companyPhone' => 'companyPhone',
'homePhone' => 'homephone',
'cellPhone' => 'mobile',
'carPhone' => 'carphone',
'pager' => 'pager',
'radioPhone' => 'radio',
'assistant' => 'assistantName',
'assistPhone' => 'assistantPhone',
'manager' => 'managerName',
'__tags' => 'categories',
'workAddress' => 'postaladdress',
'workStreet' => 'street',
'workPostalCode' => 'postalcode',
'workCity' => 'l',
'workProvince' => 'st',
// 'workCountryFree' => 'c', // no LDAP backend yet
'homeAddress' => 'homepostaladdress',
'otherAddress' => 'otherPostalAddress',
'notes' => 'note',
'office' => 'roomNumber',
'nickname' => 'displayName',
'website' => 'labeledURI',
'pgpPublicKey' => 'userCertificate',
'smimePublicKey' => 'userSMIMECertificate',
'freebusyUrl' => 'freebusyuri',
// no LDAP backend field yet
// 'imaddress1' => 'imAddress', //no LDAP backend yet
// 'yomifirstname' => 'yomiFirstname' // no LDAP backend yet
// 'yomilastname' => 'yomiLastname' // no LDAP backend yet
// NO LDAP and horde backend yet but ActiveSync field
// 'yomicompanyname' => 'yomiCompanyName'
),
'search' => array(
'name',
'emails',
'businessCategory',
'title',
'homePhone',
'workPhone',
'cellPhone',
'carPhone',
'homeAddress'
),
'strict' => array(
'dn', 'uid'
),
'approximate' => array(
'cn',
),
'export' => true,
'browse' => true,
);
In my Driver.php "name" maps to "fileas"
The error in the activesync log is the following:
[55906][2017-10-15T13:45:47+02:00] I: Motojj
[55906][2017-10-15T13:45:47+02:00] ERR: Failed to add an object:
[65] "Object class violation"
DN: uid=20171015134547.zapb17bqWwoWnbh_kwmbHEZ at ...,
ou=oliver,ou=Personal,ou=addressbook,dc=kobosix,dc=lan
(attributes: [a:7:s:2:"sn";s:6:"Tester";s:9:"givenname"; s:6
:"Motojj";s:6:"mobile";s:13:"+491222266644";
s:4:"note";s:1:"";s:4:"mail";s:2:",,";s:3:"uid";
s:53:"20171015134547.zapb17bqWwoWnbh_kwmbHEZ at ...";
s:11:"objectclass";a:5:{i:0;s:3:"top";i:1;s:6:"person";i:2;s:13
:"inetOrgPerson";i:3;s:20:"organizationalPerson";i:4;s:15:"evolutionPer
son";}}])
LDAP-Server complains about the missing CN field and indeed, there is
no CN field.
At the moment I have no idea...
Thanks and regards
Oliver
More information about the turba
mailing list