Eliminare utenti inattivi su FirstClass

Da Wiki-itsos.
Versione del 20 apr 2016 alle 09:10 di Carlo Bocchetti (Discussione | contributi) (Azioni da svolgere)

Situazione iniziale

Server FirstClass funzionante

Obiettivo

Eliminare gli utenti inattivi

Analisi del problema e informazioni utili

Informazioni necessarie Fc dispone di un linguaggio di scripting, chiamato batch admin (BA) Uno script, è una sequenza di rige di comando, nel linguaggio BA. Lo script BA è un normale messaggio FirstClass, avente come destinatario l'utente batch admin, l'oggetto è irrilevante, il corpo del messaggio contiene le righe dello script. Solo l'utente admmin (o i sysop in possesso della password di BA) possono inviare messaggi a batch admin Il sistema esegue i comandi uno per uno, nell'ordine in cui sono scritti.

I comandi di script rilevanti

  • reply: chiede al BA di fornire una risposta al messaggio. Senza questo comando, BA semplicemente esegue lo script. Con reply, inoltre, manda una risposta che permette al mittente di capire come è andata l'eseguzione. In particolare, vengono riportati gli errori o gli esiti delle singole azioni
  • Get user : per ottenere informazioni su Informazioni necessarie

Fc dispone di un linguaggio di scripting, chiamato batch admin (BA) Uno script, è una sequenza di rige di comando, nel linguaggio BA. Lo script BA è un normale messaggio FirstClass, avente come destinatario l'utente batch admin, l'oggetto è irrilevante, il corpo del messaggio contiene le righe dello script. Solo l'utente admmin (o i sysop in possesso della password di BA) possono inviare messaggi a batch admin Il sistema esegue i comandi uno per uno, nell'ordine in cui sono scritti.

I comandi di script rilevanti • reply: chiede al BA di fornire una risposta al messaggio. Senza questo comando, BA semplicemente esegue lo script. Con reply, inoltre, manda una risposta che permette al mittente di capire come è andata l'eseguzione. In particolare, vengono riportati gli errori o gli esiti delle singole azioni

• Get user : per ottenere informazioni su un utente. Il comando completo è Get user <Id utente> <elenco di parametri> • Parametri rilevanti per il nostro problema: - 1201: l' UserID dell'utente - 1230: data dell'ultimo log (con +d, in formato data) - 1258: spazio disco occupato - 1503: se ha abilitato il forward - 1203: nome - 1205: cognome ... altri numeri di parametro eventualmente occorrenti possono essere trovati sui manuali dell'admin

In pratica, conoscendo lo userID di un particolare utente, usando uno o più comandi get user ottento in risposta le informazioni che ci occorrono

Esiste un modo per conoscere gli userID di TUTTI gli utenti? Si, è il comando • list +u • Per cancellare un utente, basta semplicemente dare il comando del userun utente. Il comando completo è Get user <Id utente> <elenco di parametri>

  • Parametri rilevanti per il nostro problema:

- 1201: l' UserID dell'utente - 1230: data dell'ultimo log (con +d, in formato data) - 1258: spazio disco occupato - 1503: se ha abilitato il forward - 1203: nome - 1205: cognome ... altri numeri di parametro eventualmente occorrenti possono essere trovati sui manuali dell'admin

  • put user: lo stesso di get user, solo che SCRIVE i valori invece che leggerli

In pratica, conoscendo lo userID di un particolare utente, usando uno o più comandi get user ottento in risposta le informazioni che ci occorrono

Esiste un modo per conoscere gli userID di TUTTI gli utenti? Si, è il comando

list +u

Per cancellare un utente, basta semplicemente dare il comando

del user

Azioni da svolgere

  • ottenere l'elenco delle UserId degli utenti
  • Usare le UserID per costruire uno script che chiede al sistema la data dell'ultimo collegamento
  • Usando l'elenco degli UserId e delle date, individuare gli UserID degli utenti da cancellare

Risultati ottenuti

versione 1.0 del 10-9-2011


Situazione di partenza Server Fc con molti utenti registrati e non monitorati da mesi

Obiettivi Primario: Individuare gli utenti che non si connettono al sistema da molto tempo, e rimuoverli Secondario: Individuare gli utenti reguar che possono essere impostati come remote Secondario: Individuare utenti che effettuano forward automatici con la mail, per verificare se l'indirizzo di inoltro è ancora raggiungibile


Lista delle azioni previste - sintesi

- ottenere l'elenco di tutti gli userId nel sistema (primo BA) - usare la risposta del primo BA per costruire il secondo sript, il quale chiederà al sistema di fornirci l'elenco degli utenti e dell'ultimo log effettuato (per fare questo, basta lavorare con i comandi trova e sostituisci. E' possibile, per maggiore comodità, trasferirsi su un word processor o persino su un foglio elettronico) - ottenuto l'elenco degli utenti con la data del log, individuare quelli che non si collegano da molto tempo (diciamo 9 mesi) - preparare lo script che elimina dal sistema gli utenti inattivi. (attenzione! Solo quelli, non altri!!!) - eseguire lo script di cancellazione, verificare il raggiungimento del primo obiettivo (in pratica, ottenere nuovamente l'elenco di tutti gli userId nel sistema e confrontarlo con il precedente)

- usare l'elenco aggiornato degli utenti per costruire un altro paio di script, rispettivamente per conoscere gli utenti che usano forward e quelli che hanno permesso regular - ottenuto l'elenco, esaminare uno per uno gli utenti epr decidere se confermare o revocare il permesso.



Carlo Bocchetti - T&S bock@tes.mi.it