On 11/09/2018 18:10, pcrowder wrote:
We have users that can be members of multiple groups with extended
attributes. We want to propagate each group membership including the
extended attributes for users to a table in a database.
We have only been able to do this by mapping each group as its own resource.
Is there a way to propagate all group memberships at once ie mapping like
memberships[*].attribute?
Hi,
memberships are not a type of object natively supported by ConnId, hence
you need to leverage some of multiple customizations available with Syncope.
First of all, you'll need to setup the external database with a Scripted
SQL [1] connector (not DBTable), which allows you to (a) read / write at
once on several tables and (b) process the data received by Syncope with
Groovy.
Secondly, you'll need to attach a PropagationActions [2] class to the
database Resource in Syncope which translates the memberships (and
attributes) into some format which can be later understood by the Groovy
scripts in the connector.
HTH
Regards.
[1] https://connid.atlassian.net/wiki/spaces/BASE/pages/5570564/Scripted+SQL
[2]
http://syncope.apache.org/docs/2.1/reference-guide.html#propagationactions
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Member at The Apache Software Foundation
Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail
http://home.apache.org/~ilgrosso/