Como encontrar o nome do computador no qual um usuário efetuou login

9

Existe uma ferramenta ou script ou alguma outra maneira de saber em qual nome de computador um usuário específico está atualmente conectado? Ou até mesmo estava logado?

Digamos que o usuário "HRDrone" esteja trabalhando em sua máquina cujo nome de host é "HRStation01".

Eu, sentado na minha mesa de sysadmin, só sei que o nome de usuário é "HRDrone". De alguma forma eu posso descobrir que ele está conectado ao "HRStation01" sem perguntar ao usuário? Visualizador de eventos do AD? alguma coisa?

Obrigado!

    
por V. Romanov 04.03.2010 / 11:20

6 respostas

8

Existe um ótimo utilitário Sysinternals que fará exatamente isso para você - PsLoggedOn

    
por 04.03.2010 / 11:39
4

Um truque barato que costumo usar é olhar para as "Sessões" listadas em "Pastas compartilhadas" no console "Gerenciamento do computador" direcionado a um computador servidor de arquivos onde sei que o usuário do assunto terá uma "unidade" " mapeado ".

    
por 08.04.2014 / 07:26
1

como sobre estes no arquivo bat como um script de logon do usuário Corra e você verá a diversão

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

OU se você precisar em detalhes

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\

você pode entrar em contato comigo para mais scripts, se você precisar, é um bom aprendizado para mim também

    
por 21.10.2015 / 10:36
0

Não tenho certeza se há algo ao vivo, mas o log de eventos de segurança registra logins de usuários. Acessar o log de eventos nos DCs deve ser capaz de fornecer essas informações. Isso é fornecido desde que as informações estejam sendo coletadas. Eu acho que isso é uma política.

Esta página da Microsoft descreve uma maneira muito lenta e complicada de consultar os logs de eventos: link

Tenho certeza de que isso não ajudará você, mas pode funcionar como uma auditoria. Ou seja, quem estava logado quando as coisas ruins aconteceram!

    
por 28.03.2010 / 01:52
0

Eu tive que resolver esse problema para fazer suporte remoto em toda a minha empresa. Coisas como PsLoggedOn e ferramentas para verificar os logs de segurança do controlador de domínio provaram ser muito lentas para meus propósitos (fazer com que o nome do host fizesse o suporte remoto para os usuários). Aqui está o que eu criei:

  • Todos os usuários têm uma unidade mapeada para X: no AD em Perfil - Pasta inicial
  • Todos têm o script abaixo atribuído em Perfil - script de login

Este script registra em qual computador eles se conectaram em sua pasta pessoal. Ele especificamente não os registra no nosso servidor de terminal, porque eu não me importo com essas entradas.

'===============================================================
' 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

Então eu uso um pouco do VBscript em minha máquina local para encontrar automaticamente o diretório home no AD, abrir o arquivo de log e imprimir as últimas linhas.

    
por 12.09.2012 / 17:14
0

Como um sysadmin, você pode incorporar uma rotina em seu script de logon para armazenar um arquivo. txt com o nome de usuário e nome de host, ou usar o sqlite.

    
por 12.09.2012 / 16:53