Bug 1118059 - [RFE] add fixup-memberuid.pl script
Summary: [RFE] add fixup-memberuid.pl script
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: 389-ds-base
Version: 7.0
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Noriko Hosoi
QA Contact: Viktor Ashirov
Depends On:
TreeView+ depends on / blocked
Reported: 2014-07-09 22:47 UTC by Noriko Hosoi
Modified: 2020-09-13 20:22 UTC (History)
4 users (show)

Fixed In Version: 389-ds-base-
Doc Type: Enhancement
Doc Text:
The new fixup-memberuid.pl script corrects mismatched member and uniquemember values If the member and uniquemember attribute values in the posixGroup entries on the Directory Server (DS) and Active Directory (AD) do not match, the new fixup-memberuid.pl script is now available to fix the problem. Running fixup-memberuid.pl on DS recreates the memberuid values and automatically modifies the member and uniquemember values to match the values defined on AD.
Clone Of:
Last Closed: 2015-03-05 09:36:11 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
Github 389ds 389-ds-base issues 555 0 None closed add fixup-memberuid.pl script 2020-12-08 12:28:39 UTC
Red Hat Product Errata RHSA-2015:0416 0 normal SHIPPED_LIVE Important: 389-ds-base security, bug fix, and enhancement update 2015-03-05 14:26:33 UTC

Description Noriko Hosoi 2014-07-09 22:47:33 UTC
This bug is created as a clone of upstream ticket:

This script can trigger a task for recreating memberuid values

Comment 4 Noriko Hosoi 2014-10-28 21:33:18 UTC
Correction: fixup-memberuid.pl was implemented by Carsten Grzemba <grzemba> and added to 389-ds-base-1.3.3.

The script fixes up the mismatched member/uniquemember in the posixGroup between DS and AD.

Usage: fixup-memberuid.pl [-v] -D rootdn { -w password | -w - | -j filename }
        -b baseDN [-f filter]
 Opts: -D rootdn           - Directory Manager
     : -w password         - Directory Manager's password
     : -w -                - Prompt for Directory Manager's password
     : -j filename         - Read Directory Manager's password from file
     : -b baseDN           - Base DN that contains entries to fix up
     : -f filter           - Filter for entries to fix up
                             If omitted, all entries under the specified
                             base will have their memberUid attribute
     : -v                  - verbose

To verify, disconnect DS and AD.
Add member and uniquemember to the posixgroup entries on each server.
Run fixup-memberuid.pl (see the above usage)

Comment 5 Sankar Ramalingam 2014-11-25 21:01:21 UTC
Fixup memberuid.pl script fails to add a task and throws error 32.

./fixup-memberuid.pl   -D "cn=Directory Manager" -w Secret123 -b "dc=memofsuff,dc=com"
adding new entry "cn=memberUid_fixup_2014_11_26_2_23_36, cn=memberuid task, cn=tasks, cn=config"
ldap_add: No such object (32)

ldapsearch -x -p 1989 -h localhost -D "cn=Directory Manager" -w Secret123 -b "cn=tasks,cn=config" |grep -i memberuid
[root@vm-idm-042 slapd-testinst1]# 

It looks like the memberuid task is not added to the list of tasks. Hence, changing the status to assigned.

Comment 6 Sankar Ramalingam 2014-12-03 12:23:51 UTC
I went ahead and manually added the task entry for this. Then, I could successfully run fixupmemberid.pl script. Hence, marking the bug as Verified.

[root@vm-idm-035 slapd-test3]# /usr/bin/ldapmodify -ax -h localhost -p 9389 -D "cn=Directory Manager" -w Secret123 << EOF
dn: cn=memberuid task,cn=tasks,cn=config
objectClass: top
objectClass: extensibleObject

adding new entry "cn=memberuid task,cn=tasks,cn=config"

[root@vm-idm-035 slapd-test3]# ./fixup-memberuid.pl -D "cn=Directory Manager" -w Secret123 -b "dc=example,dc=com" -f "uid=new*"
adding new entry "cn=memberUid_fixup_2014_12_3_17_47_44, cn=memberuid task, cn=tasks, cn=config"

For other tasks, the task entries are already present under "cn=tasks, cn=config". So, if this is something you missed, please add so in the next build.

Comment 8 errata-xmlrpc 2015-03-05 09:36:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.