[Samba-it] Modifica a samba.schema
simo
simo.sorce at xsec.it
Fri Sep 8 02:50:01 MDT 2006
On Thu, 2006-09-07 at 18:33 +0200, Cristian Manfredini wrote:
> Salve a tutti,
> nel gestire un DC samba3 con backend LDAP mi sono posto il problema di
> automatizzare la disabilitazione degli utenti dopo 6 mesi di
> inattività (come da L. 196/03).
>
> La search piu' efficente che mi è venuta in mente è la seguente:
>
> #! /bin/bash
> let "DEADLINE=`date +%s` - 15552000"
> `ldapsearch -x -b ou=users,ou=dominio,o=provinciare
> '(&(uid=*)(!(sambaAcctFlags=[d*))(sambaLogonTime<='$DEADLINE'))' uid`
>
> Il problema è che con lo schema attuale sambaAcctFlags non fa match
> con una sottostringa e sambaLogonTime non è confrontabile con un altro
> intero.
>
> Quindi ho modifcato lo samba.schema come segue:
>
> attributetype ( 1.3.6.1.4.1.7165.2.1.26 NAME 'sambaAcctFlags'
> DESC 'Account Flags'
> EQUALITY caseIgnoreIA5Match
> SUBSTR caseIgnoreSubstringsMatch
> SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE )
>
> attributetype ( 1.3.6.1.4.1.7165.2.1.30 NAME 'sambaLogonTime'
> DESC 'Timestamp of last logon'
> EQUALITY integerMatch
> ORDERING integerOrderingMatch
> SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
>
> Funziona!
>
> ...vengo alla domanda:
> Quali garanzie ho che samba continui a funzionare correttamente avendo
> modificato lo schema di openldap?
Nessuna ovviamente :-)
Comunque il tuo problema e' che samba non aggiorna il sambaLogonTime,
abbiamo scoperto che e' un'operazione troppo onerosa in caso di Ldap
replicati e in caso di login multipli che avvengono tutti allo stesso
momento, per cui non aggiorniamo piu' questo parametro.
Simo.
More information about the samba-it
mailing list