grouper-dev - Re: [grouper-dev] Deleted groups and LDAPPC
Subject: Grouper Developers Forum
List archive
- From: Tom Zeller <>
- To: Grouper Dev <>
- Cc:
- Subject: Re: [grouper-dev] Deleted groups and LDAPPC
- Date: Thu, 19 Feb 2009 16:53:46 -0600
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; b=V4BK8AFxxHK4sb0MtYdnOE8hlguwVCeUxRF57K4co4JnvCCavSY9W/fsn0B+nzXK7P FW8YpVgmGj4NXpaWcFgKPmXRDjs02hQ3FRnvD6SV0czoX1zYkbvCWGxlHRWvh+oxJID5 9pWReteqppJPfLyGT2MwpeY8WYh4LECcznaig=
Ldappc will not remove membership for a deleted group correctly if the member has other provisioned memberships.
Jira issue : https://bugs.internet2.edu/jira/browse/GRP-229
Given the test setup :
groupA
members: subjectA
groupB
members: subjectA
Ldappc will provision subjectA as :
cn=subjectA
isMemberOf : groupA
isMemberOf : groupB
Then delete groupA, and run ldappc -memberships, which will not change the provisioning of subjectA !
This is because, as Arnaud points out, the subject dn's membership is not removed since the subject is a member of another group. GrouperProvisioner.buildSourceSubjectDnSet slurps all subjects which are members via the filter "(&(uid=*)(|(isMemberOf=*)(objectClass=eduMember))", which in the case above includes subjectA. Then, when iterating over the groups to be provisioned, subjectA is removed from the memberships to be deleted since they are a member of another group !
buildSourceSubjectDnSet(existingSubjectDns, existingObjectDns);
for (Group group : groups) {
for(Member member : (Set<Member) group.getMembers()) {
...
existingSubjectDns.remove(subjectDn);
try {
clearSubjectEntryMemberships(existingSubjectDns);
On Thu, Feb 19, 2009 at 11:43 AM, Arnaud Deman <> wrote:
Do not curse me but I think I have found another strange behaviour of ldappc regarding the deleted groups.
When a group is deleted, if the users belongs to some other groups then the isMemberOf remains in the user entry for this group.
After looking at the code I would say it is due to the fact that, in the method GrouperProvisionner.provisionMemberships, the user 's dn is removed from the list existingSubjectDns so it is not handled by the call of clearSubjectEntryMemberships(existingSubjectDns).
- Deleted groups and LDAPPC, Arnaud Deman, 02/19/2009
- Re: [grouper-dev] Deleted groups and LDAPPC, Tom Barton, 02/19/2009
- Re: [grouper-dev] Deleted groups and LDAPPC, Tom Zeller, 02/19/2009
- Re: [grouper-dev] Deleted groups and LDAPPC, Tom Zeller, 02/19/2009
Archive powered by MHonArc 2.6.16.