[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Netjes opruimen van LDAP users



On 03/23/2012 11:43 PM, Paul van der Vlis wrote:
> 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.

Hoi,

Ja. Dat is de overlay "refint" voor slapd.
Zelf nooit gebruikt, maar je vindt meer info in "man slapo-refint".

Groeten, Heiko


> # 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
>
>
>
>


Reply to: