Come trovare il nome del computer a cui un utente ha effettuato l'accesso


9

Esiste uno strumento o uno script o un altro modo per sapere a quale nome computer è attualmente connesso un utente specifico? O è stato effettuato l'accesso?

Di 'che l'utente "HRDrone" sta lavorando sulla sua macchina il cui nome host è "HRStation01".

Io, seduto alla mia scrivania di amministratore di sistema, so solo che il nome utente è "HRDrone". In qualche modo posso scoprire che è connesso a "HRStation01" senza chiedere all'utente? Visualizzatore eventi AD? nulla?

Grazie!


Bene, non ho trovato alcun modo per farlo usando Windows generico o strumenti AD, ma risulta che il nostro sistema AV (SEP 11) memorizza le informazioni richieste, quindi l'ho risolto usando uno script VB che interroga il database antivirus. Immagino che potrebbe essere utilizzata una soluzione simile utilizzando un altro sistema come SMS / SCOM.
V. Romanov,

social.technet.microsoft.com/wiki/contents/articles/… ecco un modo alternativo per ottenerlo usando un gpo
mike ha brillato il

Risposte:


8

C'è una grande utility Sysinternals che farà proprio questo per te - PsLoggedOn


Se ramoscello di psloggedon non era in grado di scansionare la rete per un determinato utente, l'ho usato solo per trovare chi si trovava su un determinato computer. Grazie!
JamesOff

Ho controllato. Sembra interessante, ma poco pratico per l'uso quotidiano visto che ci vogliono letteralmente ore per scansionare tutte le macchine nel dominio, bloccandosi su computer che non sono connessi e così via. Sto cercando qualcosa di più sulla falsariga di una scansione del registro eventi. Abbiamo qualcosa di simile nel nostro sistema antivirus, in cui registra ogni nome di computer e l'utente vi ha effettuato l'ultimo accesso. Lo sto usando a volte, ma mi chiedo se c'è qualcosa di più "nativo" in Windows.
V. Romanov

5

Un trucco economico che uso spesso è quello di esaminare le "Sessioni" elencate in "Cartelle condivise" nella console "Gestione computer" indirizzate a un computer file server in cui so che l'utente in questione avrà un "drive" "mappato".


1

che ne dici di questi nel file bat come uno script di accesso utente Eseguilo e vedrai il divertimento

mkdir %username% 
pushd %username% 
net config workstation > %computername%.txt

O se hai bisogno di dettagli

mkdir %username% 
pushd %username% 
@echo off
echo
echo I am logged on as %UserName%. >> %username%\%computername%.txt
echo My computer's name is %ComputerName%. >> %computername%.txt
echo %Date% >> %computername%.txt
echo %Time% >> %computername%.txt
echo My IP settings are >> %computername%.txt
ipconfig | find "." | find /i /v "suffix" >> %computername%.txt
getmac >> %computername%.txt
echo\

puoi contattarmi per ulteriori script se ne hai bisogno, è anche un buon apprendimento per me


0

Non sono sicuro che ci sia qualcosa di attivo, ma il registro degli eventi di sicurezza registra gli accessi degli utenti. L'accesso al registro eventi sui controller di dominio dovrebbe essere in grado di fornire queste informazioni. Viene fornito che vengono raccolte informazioni. Penso che sia un'impostazione politica.

Questa pagina di Microsoft descrive un modo molto lento e complicato di eseguire una query sui registri eventi: http://technet.microsoft.com/en-us/library/ee176699.aspx

Sono abbastanza sicuro che questo non ti aiuterà, ma potrebbe funzionare come un audit. Cioè che è stato effettuato l'accesso quando sono successe le cose brutte!


0

Ho dovuto risolvere questo problema per fare supporto remoto in tutta la mia azienda. Cose come PsLoggedOn e strumenti per la scansione dei registri di sicurezza del controller di dominio si sono rivelati troppo lenti per i miei scopi (far sì che il nome host esegua il supporto remoto per gli utenti). Ecco cosa mi è venuto in mente:

  • Tutti gli utenti hanno un'unità mappata su X: in AD sotto la cartella Profilo - Home
  • A ognuno è assegnato lo script seguente in Profilo - Script di accesso

Questo script registra quale computer hanno effettuato l'accesso nella loro cartella principale. In particolare non li registra accedendo al nostro terminal server, perché non mi importa di tali voci.

'===============================================================
' Record the logon in their X: drive UNLESS they are on TERM-SERVER!
'===============================================================
If strComputerName <> "TERM-SRVER" Then
    strFile = "X:\login.txt"
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objTextFile = objFSO.OpenTextFile(strFile, 8, True)
    objTextFile.WriteLine(strIP + " - " + strComputerName + " - " + CStr(Date) + " " +     CStr(Time))
    objTextFile.Close
    ' Make it hidden
    Set objTextFile = objFSO.GetFile(strFile)
    objTextFile.Attributes = 2
End If

Quindi uso un po 'di VBscript sul mio computer locale per trovare automaticamente la loro directory home in AD, aprire il file di registro e stampare le ultime righe.


0

Come amministratore di sistema, è possibile incorporare una routine nello script di accesso per archiviare un file. txtfile con il nome utente e il nome host al suo interno o utilizzare sqlite.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.