Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di natasha
    Registrato dal
    Sep 2000
    Messaggi
    1,307

    Uno script che ne lancia un altro se l'utente non si logga da più di 10 giorni

    Buongiorno a tutti,
    ho una mezza idea per risolvere il requisito dell'Allegato B della 196/2003 "disabilitare gli account inattivi da più di 180 giorni", per cui datemi una mano che a qualcuno servirà
    Partiamo dal seguente script, che disabilita un utente in un dominio, e che chiamerò "DisabilitaUtente.vbs":

    Option Explicit

    ' Dichiarazione delle variabili in cui immagazzinare
    ' il nome utente, il dominio ed uno switch per lo script,
    ' oltre all'oggetto Utente.
    Dim strNomeUtente, strDominio, blnDisabilita, objUtente

    ' Se lo script viene lanciato senza argomenti,
    ' o se viene richiesto l'help con l'usuale /?,
    ' viene lanciata la procedura "Help
    If WScript.Arguments.Count < 1 Then Call Help
    If WScript.Arguments(0) = "/?" Then Call Help

    ' Assegnazione degli argomenti alle variabili.
    strNomeUtente = WScript.Arguments(0)
    strDominio = WScript.Arguments(1)
    blnDisabilita = WScript.Arguments(2)

    ' Recupera l'oggetto utente.
    Set objUtente = GetObject("WinNT://" & strDominio & "/" & strNomeUtente & ",user")

    ' Imposta il valore della proprietà AccountDisabled, aggiorna le informazioni sull'utente,
    ' avvisa del completamento dell'esecuzione.
    objUtente.AccountDisabled = blnDisabilita
    objUtente.SetInfo
    WScript.Echo "L'utente " & strNomeUtente & " è stato disabilitato."


    Sub Help
    WScript.Echo "Modo d'uso: disableuser nome_utente dominio true/false"
    WScript.Echo "Questo script abilita/disabilita, in base al valore del terzo argomento, un account utente."
    WScript.Echo "Il primo argomento è il nome utente."
    WScript.Echo "Il secondo argomento è il nome del dominio."
    WScript.Echo "Il terzo argomento è il valore assegnato ad AccountDisabled."
    WScript.Echo "Gli argomenti devono essere separati da uno spazio vuoto."
    WScript.Echo "Passare come terzo argomento True per disabilitare l'utente."
    WScript.Echo "Passare come terzo argomento False per abilitarlo."
    WScript.Quit
    End Sub

    Innanzitutto, occorre modificare l'istruzione

    Set objUtente = GetObject("WinNT://" & strDominio & "/" & strNomeUtente & ",user")

    per recuperare l'utente di un PC in un workgroup, non in un dominio: qualcuno sa come farlo?
    In secondo luogo, occorre mettere in Esecuzione Automatica uno script, chiamiamolo VerificaLog.vbs, che verifica se dall'ultima volta che l'utente si è loggato sono passati più di 180 giorni: in tal caso, VerificaLog.vbs dovrebbe invocare l'esecuzione di DisabilitaUtente.vbs.
    Abbiamo qui due ordini di problemi:

    - scrivere VerificaLog.vbs
    - richiamare DisabilitaUtente.vbs che, per ovvi motivi di deploy, dovrà risiedere in una share di rete, chiamiamola \\192.168.1.100\cartella_degli_script (se si dovesse copiare manualmente DisabilitaUtente su ogni PC, tanto vale farsi un giro ogni 180 giorni e disabilitare a mano ).

    A questo punto, qualcuno vorrebbe sicuramente suggerire che è meno costoso passare da un workgroup ad un dominio con Active Directory, ma io dico che tutti insieme ce la facciamo in poco tempo
    Kisses,

    Nat

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Sicuramente non e` JS, e nemmeno un linguaggio che puo` girare su client. Quindi hai postato nel forum sbagliato.

    Mi pare VBS, quindi da far girare sotto ASP. Soposto in tale forum.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it L'avatar di natasha
    Registrato dal
    Sep 2000
    Messaggi
    1,307
    Sì, è VBS.
    Chiedo venia, ma al contempo faccio notare che titolo e descrizione del Forum sono:

    Scripting
    Javascript, VBScript , DHTML e linguaggi lato client

  4. #4
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    dai un'occhiata a questa dll
    www.aspuser.com
    c'è anche del codice pronto
    Tutti vogliono parlare, nessuno sa ascoltare.

  5. #5
    Utente di HTML.it L'avatar di natasha
    Registrato dal
    Sep 2000
    Messaggi
    1,307
    Tutti gli esempi di codice mostrati invocano metodi della DLL, dopo la necessaria

    Set AU = Server.CreateObject("Persits.AspUser")

    Il codice del componente stesso temo sia solo un wrapper per funzioni disponibili dalla script shell di Windows.
    Faccio presente che il componente costa 120 dollari.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.