Hello!
Can somebody provide simple example of ldap to sql users replication?
This is my unsuccesful trying:
lsc.properties:
src.java.naming.provider.url = ldap://ldap.xxxx,xxx/dc=xxxx,dc=xxx
src.java.naming.security.authentication = none
src.java.naming.referral = ignore
src.java.naming.ldap.derefAliases = never
src.java.naming.factory.initial = com.sun.jndi.ldap.LdapCtxFactory
src.java.naming.ldap.version = 3
lsc.tasks = user
lsc.tasks.user.srcService = org.lsc.jndi.SimpleJndiSrcService
lsc.tasks.user.srcService.baseDn = ou=people,ou=xxxx
lsc.tasks.user.srcService.filterAll = (&(uid=*)(objectClass=inetOrgPerson))
lsc.tasks.user.srcService.pivotAttrs = uid
lsc.tasks.user.srcService.filterId =
(&(objectClass=inetOrgPerson)(uid={uid}))
lsc.tasks.user.srcService.attrs = uid
lsc.tasks.user.dstService = org.lsc.service.SimpleJdbcSrcService
lsc.tasks.user.dstService.requestNameForList = getAllAliases
lsc.tasks.user.dstService.requestNameForObject = getAliasRecord
lsc.tasks.user.dstService.url = jdbc:mysql://mysql-host/db
lsc.tasks.user.dstService.username = user
lsc.tasks.user.dstService.password = pass
lsc.syncoptions.MyTask =
org.lsc.beans.syncoptions.PropertiesBasedSyncOptions
lsc.syncoptions.MyTask.default.action = F
lsc.syncoptions.MyTask.objectClass.create_value = "uid"
lsc.syncoptions.MyTask.uid.force_value =
srcBean.getAttributeValuesById("uid")
[awasilyev@ldap test]$ cat sql-map-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd";>
<sqlMapConfig>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property value="${driver}" name="JDBC.Driver" />
<property value="${url}" name="JDBC.ConnectionURL" />
<property value="${username}" name="JDBC.Username"/>
<property value="${password}" name="JDBC.Password"/>
<property value="15" name="Pool.MaximumActiveConnections"/>
<property value="15" name="Pool.MaximumIdleConnections"/>
<property value="1000" name="Pool.MaximumWait"/>
</dataSource>
</transactionManager>
<sqlMap url="file:///${lsc.config}/sql-map-config.d/nova.xml"/>
</sqlMapConfig>
[awasilyev@ldap test]$ cat sql-map-config.d/nova.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd";>
<sqlMap namespace="nova">
<select id="getAllAliases" resultMap="java.util.HashMap">
SELECT id
FROM users
</select>
<select id="getAliasRecord" resultMap="java.util.HashMap"
parameterClass="java.util.Map">
SELECT id as uid
FROM users
WHERE id = #id#
</select>
</sqlMap>
and i get:
[awasilyev@ldap test]$ /opt/lsc/bin/lsc -nd -s all -c all -f /opt/lsc/test/
Dec 05 18:15:33 - ERROR - java.lang.RuntimeException: No value specified
in task user for bean! Aborting.
Last log file line: Dec 05 18:15:33 - ERROR -
java.lang.RuntimeException: No value specified in task user for bean!
Aborting.
--
Alexey Wasilyev
Systems Administrator
Grid Dynamics
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org
lsc-users mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-users