Principale utente con più risposte
Informazioni AD su ultimo accesso effettuato da un utente

Domanda
-
Ciao a tutti,
ho un dominio con Windows Server 2008.
vorrei sapere come si fa a conoscere l'ultimo accesso effettuato da un utente nel mio dominio.
Per fare ciò ho tulizzato ldp e cercato l'utente in questione. Ma guardando l'attributo "lastLogon" questo vale "01/01/1601 01:00:00 ora solare Europa occidentale ora legale Europa occidentale;"
Cosa significa? Quest'utente non ha mai acceduto alla rete o forse è così tanto tempo (magari 1 anno o più) che non accede e tale informazione non è più disponibile? Inoltre "pwdLastSet" vale "01/01/1601 01:00:00 ora solare Europa occidentale ora legale Europa occidentale;"
Se invece uso il seguente script:
'ADS_SCOPE_SUBTREE specifies the depth of the search operation performed against the BaseDN
'I suggest you to use cscript.exe from a command prompt to redirect the output of this script on a text file
On Error Resume Next
'Set here the depth of the search operation performed against the BaseDN
Const ADS_SCOPE_SUBTREE = 30'Set here the LDAP Domain Name
strLDAPDomain = "dc=dominio,dc=local"'Set here the LDAP BaseDN
strLDAPBaseDN = "dc=dominio,dc=local"Const ADS_UF_ACCOUNTDISABLE = 2
Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREEobjCommand.CommandText = _
"SELECT ADsPath,Name,userAccountControl FROM 'LDAP://" & strLDAPBaseDN &"' WHERE objectCategory='User'"
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirstWscript.Echo "User Name" & vbTab & "Account Status" & vbTab & "Account Expiration Date" & vbTab & "Password Status" & vbTab & "Password Expiration Date: " & vbTab & "Last Password Change: " & vbTab & "Last Login: "
Do Until objRecordSet.EOF
strPath = objRecordSet.Fields("ADsPath").Value
Set objUser = GetObject(strPath)
Set objDomain = GetObject("LDAP://" & strLDAPDomain)
strPasswordChangeDate = ""
strAccExpDate = ""
strLastLogin = ""
strAccountDisabled =""
'strAccountDisabled ="Account Enabled"
strPwdExpires = "Password Expires"
Set maxPwdAge = objDomain.maxPwdAge
wscript.echo objUser.maxPwdAge
numDays = CCur((maxPwdAge.HighPart * 2 ^ 32) + maxPwdAge.LowPart) / CCur(-864000000000)
strName = objRecordSet.Fields("Name").Value
strPwdLastSet = objUser.PasswordLastChanged
strAccExpDate = objUser.AccountExpirationDate
strLastLogin = objUser.LastLogin
strPwdExpirationDate = DateAdd("d", numDays, objUser.PasswordLastChanged)
intUAC = objRecordset.Fields("userAccountControl").Value
boolAccountDisabled = objUser.AccountDisabled
'If (intUAC AND ADS_UF_ACCOUNTDISABLE) Then
'strAccountDisabled = "Account Disabled"
'End IfIf boolAccountDisabled Then
strAccountDisabled = "Account Disabled"
Else
strAccountDisabled = "Account Enabled"
End IfIf (intUAC AND ADS_UF_DONT_EXPIRE_PASSWD) Then
strPwdExpires = "Password Never Expires"
End IfWscript.Echo strName & vbTab & strAccountDisabled & vbTab & strAccExpDate & vbTab & strPwdExpires & vbTab & strPwdExpirationDate & vbTab & strPwdLastSet & vbTab & strLastLogin
objRecordSet.MoveNext
Loop---------
Nell'elenco che ottengo l'utente in questione ha impostato "Last Password Change" con "25/11/2010 08:25:05" e "Last Login" vuoto.
Non capisco quali siano i valori corretti, inoltre la data 01/01/1601 che significato ha? Vuol dire come non impostata? I dati di accesso per quanto tempo vengono salvati nel dominio?
Grazie a tutti per i chiarimenti che mi darete.
Alessio
Risposte
-
Secondo me stai affrontando il problema con un approccio che potrebbe complicarti la vita.
Abilitando l'audit di sicurezza (cosa tra l'altro richiesta dal garante sulla privacy) ti basterebbe poi fare un filtro degli eventi nel log di sicurezza per avere informazioni affidabili sui logon / logoff e sui cambi password.
Un articolo (tra i molti) per avere un'idea di massima :
http://www.brighthub.com/computing/windows-platform/articles/26885.aspx
Fabrizio Volpe
MVP Directory Services
MCSE (NT4)(2000)(2003) - MCSA (2003)
MCTS (SQL 2005)(Exchange 2007)(Windows 2008)
Fortinet Certified Network Security Professional (FCNSP)
Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com- Proposto come risposta Fabrizio Volpe mercoledì 26 gennaio 2011 09:41
- Contrassegnato come risposta Edoardo BenussiMVP, Moderator mercoledì 26 gennaio 2011 10:59
Tutte le risposte
-
Secondo me stai affrontando il problema con un approccio che potrebbe complicarti la vita.
Abilitando l'audit di sicurezza (cosa tra l'altro richiesta dal garante sulla privacy) ti basterebbe poi fare un filtro degli eventi nel log di sicurezza per avere informazioni affidabili sui logon / logoff e sui cambi password.
Un articolo (tra i molti) per avere un'idea di massima :
http://www.brighthub.com/computing/windows-platform/articles/26885.aspx
Fabrizio Volpe
MVP Directory Services
MCSE (NT4)(2000)(2003) - MCSA (2003)
MCTS (SQL 2005)(Exchange 2007)(Windows 2008)
Fortinet Certified Network Security Professional (FCNSP)
Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com- Proposto come risposta Fabrizio Volpe mercoledì 26 gennaio 2011 09:41
- Contrassegnato come risposta Edoardo BenussiMVP, Moderator mercoledì 26 gennaio 2011 10:59
-
-
Il problema è che l'attributo lastologon NON viene replicato fra i domain controllers.
E comunque, un valore 0 implica semplicemente che l'informazione non è nota (non che l'utente non abbia mai fatto accesso).
Puoi provare lo script presente qui (che è anche spiegato in maniera soddisfacente)
http://technet.microsoft.com/it-it/magazine/2006.01.scriptingguy(en-us).aspx
P.S.
Per i security log, ricordati anche di impostare un salvataggio periodico, visto che sempre per il discorso della privacy li devi conservare per alcuni mesi :-)
Fabrizio Volpe
MVP Directory Services
MCSE (NT4)(2000)(2003) - MCSA (2003)
MCTS (SQL 2005)(Exchange 2007)(Windows 2008)
Fortinet Certified Network Security Professional (FCNSP)
Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com -
-
In effetti il concetto di amministratore sembra sia da interpretare nel senso più ampio (ti allego l'articolo ed evidenzio una parte delle FAQ).
Di base poi, in ambiente Windows, il controllo dei logon e attività password è automaticamente effettuato per tutti gli utenti, il che lascia poco spazio alle scelte :-)
http://www.garanteprivacy.it/garante/doc.jsp?ID=1577499#4
4) Relativamente all'obbligo di registrazione degli accessi logici degli AdS, sono compresi anche i sistemi client oltre che quelli server?
Si, anche i client, intesi come "postazioni di lavoro informatizzate", sono compresi tra i sistemi per cui devono essere registrati gli accessi degli AdS.Nei casi più semplici tale requisito può essere soddisfatto tramite funzionalità già disponibili nei più diffusi sistemi operativi, senza richiedere necessariamente l'uso di strumenti software o hardware aggiuntivi. Per esempio, la registrazione locale dei dati di accesso su una postazione, in determinati contesti, può essere ritenuta idonea al corretto adempimento qualora goda di sufficienti garanzie di integrità.
Sarà comunque con valutazione del titolare che dovrà essere considerata l'idoneità degli strumenti disponibili oppure l'adozione di strumenti più sofisticati, quali la raccolta dei log centralizzata e l'utilizzo di dispositivi non riscrivibili o di tecniche crittografiche per la verifica dell'integrità delle registrazioni.
Fabrizio Volpe
MVP Directory Services
MCSE (NT4)(2000)(2003) - MCSA (2003)
MCTS (SQL 2005)(Exchange 2007)(Windows 2008)
Fortinet Certified Network Security Professional (FCNSP)
Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com -
Grazie tante per tutto!!
Ddato che sei così gentile dopo il chiarimento sulle date che mi hai dato ti chiedo se esiste una gpo che mi permetta di disabilitare tutti quegli utenti che non effettuano un logon al sistema per un periodo di tempo prefissato (ed esempio 90 gg).
-
Nativamente non c'è nulla.
Io uso UAF per il disable e/0 le rimozione di utenti e computers non utilizzati
http://anixis.com/products/uaf/default.htm
Fabrizio Volpe
MVP Directory Services
MCSE (NT4)(2000)(2003) - MCSA (2003)
MCTS (SQL 2005)(Exchange 2007)(Windows 2008)
Fortinet Certified Network Security Professional (FCNSP)
Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com -