Re: Netjes opruimen van LDAP users
Op 22-03-12 10:39, Paul van der Vlis schreef:
> Op 21-03-12 23:24, Heiko Noordhof schreef:
>> On 03/21/2012 08:35 PM, Paul van der Vlis wrote:
>>> Hallo,
>>>
>>> Het blijkt dat als je een LDAP user opruimd, zijn/haar lidmaatschappen
>>> aan groepen gewoon blijven bestaan. Tenminste, zoals ik dat doe.
>>>
>>> Mocht je dan dezelfde username later nogmaals gaan gebruiken, dan is
>>> diegene opeens lid van de groepen van de vorige user.
>>> Niet de bedoeling.
>>>
>>> Weten jullie een handige manier om alle lidmaatschappen van een user op
>>> te ruimen?
>>
>> Hallo,
>>
>> Zoiets kan "met de hand" zo:
>>
>> # Als root uiteraard
>> bash# groups piet
>> piet : piet
>>
>> bash# adduser piet adm
>> bash# adduser piet dialout
>>
>> bash# groups piet
>> piet : piet adm dialout
>
> Oh, dat is een leuk commando met een nette output.
> Ik gebruik normaal "id".
>
>> bash# deluser piet adm
>> bash# groups piet
>> piet : piet dialout
>>
>> Om een account uit alle groepen te halen (behalve de primary group):
>>
>> bash# id piet
>> uid=1004(piet) gid=1005(piet)
>> groups=4(adm),20(dialout),24(cdrom),128(openldap),1005(piet)
>>
>> bash# for GRP in $(id -nG piet | sed 's/[^ ]* //') ; do deluser piet
>> $GRP ; done
>> Removing user `piet' from group `adm' ...
>> Done.
>> Removing user `piet' from group `dialout' ...
>> Done.
>> Removing user `piet' from group `cdrom' ...
>> Done.
>> Removing user `piet' from group `openldap' ...
>> Done.
>
> Ah, toch met "id"... Bedankt.
Ik gebruik nu onderstaande. Maar ik hoorde dat er ook een plugin (of
zoiets) voor slapd zou zijn die dit ook kan.
Groet,
Paul.
# remove membership of groups:
for GRP in $(id -nG $user | sed 's/[^ ]* //'); do
TMPLDIF=$(tempfile)
echo -n "" >$TMPLDIF
echo "dn: cn=$GRP,ou=groups,$ldaproot" >>$TMPLDIF
echo "changetype: modify" >>$TMPLDIF
echo "delete: memberUid" >>$TMPLDIF
echo "memberUid: $user" >>$TMPLDIF
ldapmodify -xD "cn=admin,$ldaproot" -w "$ldappw" -f $TMPLDIF
rm $TMPLDIF
done
--
Paul van der Vlis Linux systeembeheer, Groningen
http://www.vandervlis.nl
Reply to: