mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-09-19 04:59:01 +00:00
Update LDAP admin group when renaming/deleting users.
This commit is contained in:
parent
2c5b829fb0
commit
1f2dc5e730
@ -28,3 +28,19 @@ else
|
|||||||
echo "Failed: user delete failed"
|
echo "Failed: user delete failed"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
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
|
||||||
|
|||||||
@ -34,3 +34,24 @@ else
|
|||||||
echo "Failed: user rename failed"
|
echo "Failed: user rename failed"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
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
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user