[lsc-users] modify does not work / mysql > openldap

Michael Frank m.frank at abk-stuttgart.de
Thu Sep 15 12:48:49 CEST 2011


On 14.09.2011 23:10, Sébastien Bahloul wrote:
> Hi Michael,
>
> The reason why you are encountering this issue is because the LSC is
> trying to add an existing entry. This probably means that the
> information you are using to identify the entry inside OpenLDAP are
> incorrect. I thinks the issue is related to the base DN value : with the
> 1.X LSC version, we are using JNDI which adds the context DN to the base
> DN. Thus if you set up your directory connection with an URL like
> ldap://XXX/dc=abk-stuttgart,dc=de then your base dn must be empty or LSC
> will try to search with a base
> like dc=abk-stuttgart,dc=de,dc=abk-stuttgart,dc=de. If you have access
> to, try to give a look at the OpenLDAP logs, you should see why the
> request does not return the existing entry.


ok i changed
lsc.tasks.studenten_tex.dstService.baseDn = dc=abk-stuttgart,dc=de
to
lsc.tasks.studenten_vbk.dstService.baseDn =
the sync still works, but not the modifications ...

Here the openldap logs:
Sep 15 11:43:51 lsc slapd[22671]: conn=1000 op=45 SRCH 
base="dc=abk-stuttgart,dc=de" scope=2 deref=0 filter="(cn={cn})"
Sep 15 11:43:51 lsc slapd[22671]: conn=1000 op=45 SRCH attr=cn uid mail 
sn userPassword description objectClass
Sep 15 11:43:51 lsc slapd[22671]: conn=1000 op=45 SEARCH RESULT tag=101 
err=0 nentries=0 text=
Sep 15 11:43:51 lsc slapd[22671]: conn=1000 op=46 ADD 
dn="cn=Héloise.Herz,ou=vbk,ou=studenten,dc=abk-stuttgart,dc=de"
Sep 15 11:43:51 lsc slapd[22671]: conn=1000 op=46 RESULT tag=105 err=68 
text=


I think it looks good so far - err=68 means "Already Exists" ...
same as in the the lsc logs.
What i don`t get: Why is there an ADD - it should be MODIFY ?!
How does lsc decide if it sends a add or a modify to openldap ?
For me it seems like lcp does not compare the entries mysql <> ldap.
What are necessary settings ?

Here my config again :


### studenten_vbk Verbreiterungsfach Bildende Kunst / Intermediales 
Gestalten
lsc.tasks.studenten_vbk.srcService = org.lsc.service.SimpleJdbcSrcService
lsc.tasks.studenten_vbk.srcService.requestNameForList = 
getInetOrgPersonList_stud_vbk
lsc.tasks.studenten_vbk.srcService.requestNameForObject = 
getInetOrgPerson_stud_vbk
lsc.tasks.studenten_vbk.dstService = org.lsc.jndi.SimpleJndiDstService
lsc.tasks.studenten_vbk.dstService.baseDn =
lsc.tasks.studenten_vbk.dstService.filterAll = (cn=*)
lsc.tasks.studenten_vbk.dstService.pivotAttrs = cn
lsc.tasks.studenten_vbk.dstService.filterId = (cn={cn})
lsc.tasks.studenten_vbk.dstService.attrs =  cn uid mail sn userPassword 
description objectClass
lsc.tasks.studenten_vbk.bean = org.lsc.beans.SimpleBean
lsc.tasks.studenten_vbk.dn = "cn=" + 
srcBean.getAttributeFirstValueById("cn") + ",ou=vbk,ou=studenten"
dn.real_root = dc=abk-stuttgart,dc=de
lsc.syncoptions.studenten_vbk = 
org.lsc.beans.syncoptions.PropertiesBasedSyncOptions
lsc.syncoptions.studenten_vbk.objectClass.create_value = "inetOrgPerson"
lsc.syncoptions.studenten_vbk.objectClass.action = F
lsc.syncoptions.studenten_vbk.default.action = K
lsc.syncoptions.studenten_vbk.default.delimiter = $
lsc.syncoptions.studenten_vbk.sn.action = F
lsc.syncoptions.studenten_vbk.userPassword.action = F
lsc.syncoptions.studenten_vbk.mail.action = F
lsc.syncoptions.studenten_vbk.userPassword.default_value = 
SecurityUtils.hash(SecurityUtils.HASH_SHA1, "defaultPassword")

Best regards,
micha




More information about the lsc-users mailing list