Update LDAP admin group when renaming/deleting users.

This commit is contained in:
James Valleroy 2015-07-02 16:23:31 -04:00 committed by Sunil Mohan Adapa
parent 2c5b829fb0
commit 1f2dc5e730
2 changed files with 37 additions and 0 deletions

View File

@ -28,3 +28,19 @@ else
echo "Failed: user delete failed"
exit 1
fi
cat <<EOF |ldapmodify -Y EXTERNAL -H ldapi:///
dn: cn=admin,ou=groups,dc=thisbox
changetype: modify
delete: uniqueMember
uniqueMember: uid=$username,ou=users,dc=thisbox
EOF
if [ $? -eq 0 ]; then
echo "Removed user from admin group"
elif [ $? -eq 16 ]; then
echo "User was not in admin group"
elif [ $? -eq 65 ]; then
echo "Cannot remove last LDAP admin user"
exit 2
fi

View File

@ -34,3 +34,24 @@ else
echo "Failed: user rename failed"
exit 1
fi
# check if user is admin
results=$(ldapsearch -Y EXTERNAL -H ldapi:/// -b 'cn=admin,ou=groups,dc=thisbox' -LLL "(uniqueMember=uid=$old_username,ou=users,dc=thisbox)" uniqueMember)
if [ -z "$results" ]; then
exit 0
fi
cat <<EOF |ldapmodify -Y EXTERNAL -H ldapi:///
dn: cn=admin,ou=groups,dc=thisbox
changetype: modify
add: uniqueMember
uniqueMember: uid=$new_username,ou=users,dc=thisbox
EOF
cat <<EOF |ldapmodify -Y EXTERNAL -H ldapi:///
dn: cn=admin,ou=groups,dc=thisbox
changetype: modify
delete: uniqueMember
uniqueMember: uid=$old_username,ou=users,dc=thisbox
EOF