I have a fairy simple configuration which synchronises AD to OpenLDAP (see bellow). Everything works flawlessly but the sync. job runs just once after LSC start. Maybe I am missing something important, but I have not found a way to setup LSC to run sync task periodicaly. I supposed LSC task to be run every hour, but that is not working. lsc-agent shows that the task is running.

I would realy appreciate any help in this matter.

Thanks a lot!

The LSC is run in async mode ( started using /etc/init.d/lsc ).
Here is my config XML (just relevant parts):

 <connections>

    <ldapConnection>
      <name>ldap-src-conn</name>
      <authentication>NONE</authentication>
      <referral>IGNORE</referral>
      <derefAliases>NEVER</derefAliases>
      <version>VERSION_3</version>
      <pageSize>-1</pageSize>
      <factory>com.sun.jndi.ldap.LdapCtxFactory</factory>
      <tlsActivated>false</tlsActivated>
    </ldapConnection>

    <ldapConnection>
      <name>ldap-dst-conn</name>
      <authentication>SIMPLE</authentication>
      <referral>IGNORE</referral>
      <derefAliases>NEVER</derefAliases>
      <version>VERSION_3</version>
      <pageSize>-1</pageSize>
      <factory>com.sun.jndi.ldap.LdapCtxFactory</factory>
      <tlsActivated>false</tlsActivated>
    </ldapConnection>
  </connections>

  <tasks>

    <task>
      <name>SyncUVNOpenLDAP</name>
      <bean>org.lsc.beans.SimpleBean</bean>
      <ldapSourceService>
        <name>ldap-src-service</name>
        <connection reference="ldap-src-conn" />
        <baseDn>xxxx</baseDn>
        <pivotAttributes>
          <string>uid</string>
        </pivotAttributes>
        <fetchedAttributes>
          <string>cn</string>
          <string>sn</string>
          <string>userPassword</string>
          <string>objectClass</string>
          <string>uid</string>
          <string>givenName</string>
        </fetchedAttributes>
        <getAllFilter>(objectClass=inetorgperson)</getAllFilter>
<getOneFilter>(&amp;(objectClass=inetorgperson)(uid={uid}))</getOneFilter>
        <interval>3600</interval>
      </ldapSourceService>
      <ldapDestinationService>
        <name>ldap-dst-service</name>
        <connection reference="ldap-dst-conn" />
        <baseDn>xxxx</baseDn>
        <pivotAttributes>
          <string>uid</string>
        </pivotAttributes>
        <fetchedAttributes>
          <string>cn</string>
          <string>sn</string>
          <string>userPassword</string>
          <string>objectClass</string>
          <string>uid</string>
          <string>givenName</string>
          <string>userUniqueId</string>
          <string>managed</string>
        </fetchedAttributes>
        <getAllFilter>(objectClass=inetorgperson)</getAllFilter>
<getOneFilter>(&amp;(objectClass=inetorgperson)(uid={uid}))</getOneFilter>
      </ldapDestinationService>
      <propertiesBasedSyncOptions>
<mainIdentifier>"uid=" + srcBean.getDatasetFirstValueById("uid") + ",xxxx"</mainIdentifier>
        <defaultDelimiter>;</defaultDelimiter>
        <defaultPolicy>FORCE</defaultPolicy>
        <conditions>
                <create>true</create>
                <update>true</update>
                <delete>true</delete>
                <changeId>false</changeId>
        </conditions>
        <dataset>
          <name>objectClass</name>
          <policy>KEEP</policy>
          <defaultValues></defaultValues>
          <forceValues>
            <string>"top"</string>
            <string>"person"</string>
            <string>"organizationalPerson"</string>
            <string>"inetOrgPerson"</string>
            <string>"agUser"</string>
          </forceValues>
          <createValues></createValues>
          <delimiter>,</delimiter>
        </dataset>
        <dataset>
          <name>userUniqueId</name>
          <policy>KEEP</policy>
          <defaultValues></defaultValues>
          <forceValues>
<string>js:&apos;xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx&apos;.replace(/[xy]/g, function(c) {var r = Math.random()*16|0,v=c==&apos;x&apos;?r:r&amp;0x3|0x8;return v.toString(16);});</string>
          </forceValues>
          <createValues></createValues>
        </dataset>
        <dataset>
          <name>userPassword</name>
          <policy>KEEP</policy>
          <defaultValues></defaultValues>
          <forceValues>
<string>"{SASL}" + srcBean.getDatasetFirstValueById("uid")</string>
          </forceValues>
          <createValues></createValues>
        </dataset>
        <dataset>
          <name>managed</name>
          <policy>KEEP</policy>
          <defaultValues></defaultValues>
          <forceValues>
            <string>"TRUE"</string>
          </forceValues>
          <createValues></createValues>
        </dataset>
      </propertiesBasedSyncOptions>
    </task>
  </tasks>




--

Tomáš Lukl
ARTiiS GROUP a.s.
602 00 BRNO
Běhounská 2/22-24
T: +420 736184076
E: [email protected]
W: www.artiisgroup.cz
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org

lsc-users mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-users

Reply via email to