Thank for you reply
1) I try your suggestion bu my member list is always empty, now my DEBUG
output, looks like that :
member: [CN=userA,OU=users,DC=domain,DC=fr, CN=userB,OU=users,DC=domain,DC=fr,
CN=userC,OU=users,DC=domain,DC=fr]
<![CDATA[rjs:
var membersSrcDn = srcBean.getDatasetValuesById("memberUid");
membersDstDn = new java.util.ArrayList();
for (var i=0; i<membersSrcDn.size(); i++) {
var uid = membersSrcDn.get(i);
var destDn = ldap.search("OU=users", "(sAMAccountName=" + uid + ")");
if (destDn.size() == 0 || destDn.size() > 1) {
continue;
}
var destMemberDn = destDn.get(0) + "," + ldap.getContextDn();
membersDstDn.add(destMemberDn);
}
membersDstDn
java.lang.System.out.println("member: " + membersDstDn);
]]>
2) Oops i did not read correctly the end of the page. Thank you Clement;).
--
Lionel
----- Mail original -----
De: "Clément OUDOT" <[email protected]>
À: "lsc-users" <[email protected]>
Envoyé: Jeudi 30 Juin 2016 09:45:06
Objet: Re: [lsc-users] Sync Ldap --> AD group member empty
Le 30/06/2016 09:00, Lionel Caignec a écrit :
> Hello,
>
> i forget to write my first mail in english so.
>
> I'm beginner with LSC and i want to synchronise from openldap to Active
> Directory 2012R2
>
> For user it's now ok after little work.
>
> For groups it missing only members which are not filled by LSC.
>
>
> I followe tutorials from LSC website but i does not understant where is the
> problem.
> Here my code which generate members list :
> <dataset>
> <name>member</name>
> <policy>FORCE</policy>
> <forceValues>
> <string>
> <![CDATA[rjs:
> var membersSrcDn = srcBean.getDatasetValuesById("memberUid");
> var membersDstDn = [];
> for (var i=0; i<membersSrcDn.size(); i++) {
> var uid = membersSrcDn.get(i);
> var destDn = ldap.search("OU=users", "(sAMAccountName=" +
> uid + ")");
> if (destDn.size() == 0 || destDn.size() > 1) {
> continue;
> }
> var destMemberDn = destDn.get(0) + "," +
> ldap.getContextDn();
> membersDstDn.push(destMemberDn);
> }
> membersDstDn
> // DEBUG
> java.lang.System.out.println("member: " + membersDstDn);
> ]]>
> </string>
> </forceValues>
> </dataset>
>
> The only think i've noticed, it's every member is separated by a ",". I don't
> know how to force ";", alos i already have
> "<defaultDelimiter>;</defaultDelimiter>" in my task.
>
> Here the output of my "debug"
> member:
> CN=userA,OU=users,DC=domain,DC=fr,CN=userB,OU=users,DC=domain,DC=fr,CN=userC,OU=users,DC=domain,DC=fr
Try to use var membersDstDn = new java.util.ArrayList(); and
membersDstDn.add(destMemberDn);
>
> Another question, is it possible to give a parameter when we call a task from
> the agent? I want to launch task which synchronise only one account.
Seems possible with lsc-agent and options -i and -t, see
http://lsc-project.org/wiki/documentation/latest/execution/start#lsc_remote_invocation_by_lsc-agent_command_line_tool
--
Clément OUDOT
Consultant en logiciels libres, Expert infrastructure et sécurité
Savoir-faire Linux
87, rue de Turbigo - 75003 PARIS
Blog: http://sflx.ca/coudot
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org
lsc-users mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-users
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org
lsc-users mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-users