none
Dúvida sobre último logon em uma máquina RRS feed

  • Pergunta

  • Pessoal boa noite,

    Precisava extrair um relatório do último usuário que efetuou logon em uma listagem de máquinas na empresa que eu trabalho. Tem algum script ou ferramenta que faça isso?

    Desde já agradeço.

    quarta-feira, 2 de janeiro de 2013 20:08

Respostas

  • Edu, eu achei esse script abaixo. Nesta url mas não fiz o teste.

    http://social.technet.microsoft.com/forums/pt-br/scriptadminpt/thread/BAE71ADC-3221-4D19-A976-653C62541508

    Sub GetADInfo()

        On Error Resume Next
        Dim SQLquery, rs, Conn, I, User
        SQLquery = "SELECT cn FROM 'LDAP://AD_Server/" & _
        "DC=DOMINIO,DC=COM,DC=BR ' WHERE " & _
        "objectClass='User' ORDER BY cn ASC"
        Set Conn = CreateObject("ADODB.Connection")
        Conn.Provider = "ADSDSOObject"
        Conn.Open "ADs Provider"
        
        I = 1
        
        Set rs = Conn.Execute(SQLquery)
            
        Do While Not rs.EOF Or rs.BOF
            ReturnValue = rs.Fields(0)
            If IsArray(ReturnValue) Then
                For I = LBound(ReturnValue) To UBound(ReturnValue)
                    If ReturnValue(I) Then
                        Cells(I, 1) = ReturnValue(I)
                    End If
                Next
            End If
            rs.MoveNext
            Cells(I, 1) = ReturnValue
            I = I + 1
        Loop
       
        I = 1
        
        Do While Cells(I, 1) 
            Set User = GetObject("LDAP://AD_Server/" & _
            "CN=" & Cells(I, 1) & ",OU=Users,OU=EMPRESA," & _
            "DC=DOMINIO,DC=COM,DC=BR")
            
            Cells(I, 2) = User.LastLogin
            I = I + 1
        
        Loop
        
        Rows("1:1").Select
        Selection.Insert Shift:=xlDown
        Selection.Font.Bold = True
        
        Cells(1, 1) = "User"
        Cells(1, 2) = "LastLogin"
    End Sub


    Vinícius Kleber

    • Marcado como Resposta Richard Juhasz segunda-feira, 7 de janeiro de 2013 15:51
    quinta-feira, 3 de janeiro de 2013 04:24
  • Boa tarde Edu,

    Caso o script do nosso amigo Vinicius Kleber não resolver, você instala o Belarc no servidor que encontra-se o seu Active Directory onde é feita as autenticações do usuário.

    Instalando no server, ele te mostra as contas e os útimos logins.

    Vinicius Mozart


    quinta-feira, 3 de janeiro de 2013 16:29
    Moderador

Todas as Respostas

  • Boa noite,

    Você pode tentar usar o "Belarc" ele faz o inventário da máquina, mas também traz o último registro de logon dos usuários com "Data" e "Hora".

    http://www.belarc.com/pt/free_download.html

    Vinicius Mozart

    quarta-feira, 2 de janeiro de 2013 20:46
    Moderador
  • Vinicius boa noite!

    Obrigado por responder. Então, no caso, eu precisava, de preferência, de um script ou alguma ferramenta que verificasse uma quantidade de máquinas (aprox. 200). No caso do Belarc, tem que se instalar máquina por máquina. Gostaria de fazer isso via rede, num script ou ferramenta, que acessasse todas as máquinas da lista e extraísse essa informação entende?

    Atenciosamente,

    quarta-feira, 2 de janeiro de 2013 23:50
  • Edu, eu achei esse script abaixo. Nesta url mas não fiz o teste.

    http://social.technet.microsoft.com/forums/pt-br/scriptadminpt/thread/BAE71ADC-3221-4D19-A976-653C62541508

    Sub GetADInfo()

        On Error Resume Next
        Dim SQLquery, rs, Conn, I, User
        SQLquery = "SELECT cn FROM 'LDAP://AD_Server/" & _
        "DC=DOMINIO,DC=COM,DC=BR ' WHERE " & _
        "objectClass='User' ORDER BY cn ASC"
        Set Conn = CreateObject("ADODB.Connection")
        Conn.Provider = "ADSDSOObject"
        Conn.Open "ADs Provider"
        
        I = 1
        
        Set rs = Conn.Execute(SQLquery)
            
        Do While Not rs.EOF Or rs.BOF
            ReturnValue = rs.Fields(0)
            If IsArray(ReturnValue) Then
                For I = LBound(ReturnValue) To UBound(ReturnValue)
                    If ReturnValue(I) Then
                        Cells(I, 1) = ReturnValue(I)
                    End If
                Next
            End If
            rs.MoveNext
            Cells(I, 1) = ReturnValue
            I = I + 1
        Loop
       
        I = 1
        
        Do While Cells(I, 1) 
            Set User = GetObject("LDAP://AD_Server/" & _
            "CN=" & Cells(I, 1) & ",OU=Users,OU=EMPRESA," & _
            "DC=DOMINIO,DC=COM,DC=BR")
            
            Cells(I, 2) = User.LastLogin
            I = I + 1
        
        Loop
        
        Rows("1:1").Select
        Selection.Insert Shift:=xlDown
        Selection.Font.Bold = True
        
        Cells(1, 1) = "User"
        Cells(1, 2) = "LastLogin"
    End Sub


    Vinícius Kleber

    • Marcado como Resposta Richard Juhasz segunda-feira, 7 de janeiro de 2013 15:51
    quinta-feira, 3 de janeiro de 2013 04:24
  • Boa tarde Edu,

    Caso o script do nosso amigo Vinicius Kleber não resolver, você instala o Belarc no servidor que encontra-se o seu Active Directory onde é feita as autenticações do usuário.

    Instalando no server, ele te mostra as contas e os útimos logins.

    Vinicius Mozart


    quinta-feira, 3 de janeiro de 2013 16:29
    Moderador
  • Vinícius e Vinícius (rrrrsrsrs) boa tarde!

    Obrigado pela ajuda de vocês! Vou fazer os testes e retorno com a informação aqui.

    Abraços

    quinta-feira, 3 de janeiro de 2013 18:33
  • Olá Edu, tudo bem?

    Alguma novidade?


    Diogo Molina MCP, MCSA, MCSE, MCTS, MCITP, MCT. Ajude manter o forum organizado, se util classifique! Http://www.msitpro.com.br MSITPRO uma nova comunidade técnica Microsoft, venha participar!

    sábado, 5 de janeiro de 2013 12:46