Usuário com melhor resposta
Ajuda para incluir ULTIMO LOGON do usuario.

Pergunta
-
Senhores, tenho que tirar um relatorio para auditoria da minha empresa e tenho um script que vem fazendo isso pra mim sem problemas. Porem, eles agora querem uma informação nova nesse relatorio e nao estou conseguindo adaptar esse script que tenho. Preciso da informação do ULTIMO LOGON do usuario, MESMO que a conta esteja desabilitada e se possivel, preciso saber QUANDO a conta do usuario foi desabilitada.
SEgue abaixo o script q tenho:
'---------------- INICIO ---------------- Sub ListUsers( strDomain ) Set objComputer = GetObject("WinNT://" & strDomain ) objComputer.Filter = Array( "User" ) For Each objUser In objComputer suserInfo = objUser.Name & ", " & objUser.Fullname & ", " & objUser.Description & ", " & objUser.LastLogin & ", " & objUser.AccountDisabled objFile.WriteLine(sUserInfo) Next End Sub ' **************************************************************************** ' Main ' **************************************************************************** Dim strDomain Dim sUserInfo Dim sFileName strDomain = WScript.Arguments(0) sFileName = WScript.Arguments(1) If strDomain = "" Then WScript.Echo "VoCê não Adicionou os parametros necessários, chame o script pelo prompt, ex.: ListUsers.vbs dominio.local C:\listusers.txt" End If If sFileName = "" Then WScript.Echo "VoCê não Adicionou os parametros necessários, chame o script pelo prompt, ex.: ListUsers.vbs dominio.local C:\listusers.txt" End If set objFSO = createobject("scripting.filesystemobject") set objFile = objFSO.createtextfile(sFileName) objFile.WriteLine("Usuario, Nome Completo, Descrição, Status da Conta") ListUsers( strDomain ) objFile.Close '---------------- FIM ----------------
Aguardo ajuda dos colegas, preciso com MUITA urgencia!
Albert Alberico dos Santos
Respostas
-
Senhores, tenho que tirar um relatorio para auditoria da minha empresa e tenho um script que vem fazendo isso pra mim sem problemas. Porem, eles agora querem uma informação nova nesse relatorio e nao estou conseguindo adaptar esse script que tenho. Preciso da informação do ULTIMO LOGON do usuario, MESMO que a conta esteja desabilitada e se possivel, preciso saber QUANDO a conta do usuario foi desabilitada.
SEgue abaixo o script q tenho:
'---------------- INICIO ---------------- Sub ListUsers( strDomain ) Set objComputer = GetObject("WinNT://" & strDomain ) objComputer.Filter = Array( "User" ) For Each objUser In objComputer suserInfo = objUser.Name & ", " & objUser.Fullname & ", " & objUser.Description & ", " & objUser.LastLogin & ", " & objUser.AccountDisabled objFile.WriteLine(sUserInfo) Next End Sub ' **************************************************************************** ' Main ' **************************************************************************** Dim strDomain Dim sUserInfo Dim sFileName strDomain = WScript.Arguments(0) sFileName = WScript.Arguments(1) If strDomain = "" Then WScript.Echo "VoCê não Adicionou os parametros necessários, chame o script pelo prompt, ex.: ListUsers.vbs dominio.local C:\listusers.txt" End If If sFileName = "" Then WScript.Echo "VoCê não Adicionou os parametros necessários, chame o script pelo prompt, ex.: ListUsers.vbs dominio.local C:\listusers.txt" End If set objFSO = createobject("scripting.filesystemobject") set objFile = objFSO.createtextfile(sFileName) objFile.WriteLine("Usuario, Nome Completo, Descrição, Status da Conta") ListUsers( strDomain ) objFile.Close '---------------- FIM ----------------
Aguardo ajuda dos colegas, preciso com MUITA urgencia!
Albert Alberico dos Santos
Consegui encontrar um script que faz trazia o LASTLOGON e inclui as informações que o meu script trazia.
Segue abaixo o Script:
Option Explicit On Error Resume Next Dim FileSys, WrLines, DomainName, oDomain, oDomainItem DomainName = "dominio.com.br" lastdate = "31/12/2000" Set FileSys = CreateObject("Scripting.FileSystemObject") Set WrLines = FileSys.CreateTextFile("ListADNOVO.txt", True) WrLines.WriteLine("Login de Rede,Nome Completo,Descricao,Conta Desabilitada?,Ultimo Logon na Rede") Set oDomain = GetObject("WinNT://" & DomainName) For Each oDomainItem in oDomain If oDomainItem.Class = "User" AND oDomainItem.LastLogin > lastdate Then WrLines.WriteLine(oDomainItem.Name & "," & oDomainItem.FullName & "," & oDomainItem.Description & "," & oDomainItem.AccountDisabled & "," & oDomainItem.LastLogin) End If Next WrLines.Close
Albert Alberico dos Santos
- Marcado como Resposta Santos Ber terça-feira, 26 de agosto de 2014 21:51
Todas as Respostas
-
Ultimo logon você pode usar este script em Powershell que eu desenvolvi
Último Login (sem utilizar módulos)
http://gallery.technet.microsoft.com/ltimo-Login-sem-utilizar-549cacd1
Quanto a saber quando a conta foi desabilitada você vai ter que pesquisar nos logs de eventos, existem algumas postagens desanimadoras aqui no fórum, isto porque você tem que procurar em todos os DCs e talvez o log já tenha sido sobrescrito então você pode ficar sem algumas informações.
Fábio de Paula Junior
-
Já vi esse script, porem, preciso que contenha as mesmas informações que o VBS tras...
- "Usuario, Nome Completo, Descrição, Status da Conta" + o ultimo logon e, se possivel, quando a conta foi desabilitada.
Pode ser em powershell desde q contenha essas informações.
Albert Alberico dos Santos
-
Albert,
Eu no momento não tenho tempo pra ajudar, pra vc não ficar esperando você poderia gerar a informação do meu script com a informação do seu em uma planilha excel e usar PROCV pra gerar uma única tabela. (vc tem usuário nas duas, use ele como campo chave).
Fábio de Paula Junior
-
Albert,
Estou envergonhado, fui olhar o script que eu postei na galeria e ele não é o script que eu havia testado.
Pra compensar eu já incluí dois novos campos:
- lastlogon server, este informa em qual servidor o usuário fez o último logon
- Habilitado, informa se o usuário está ou não habilitado.
Se puder testar agradeço.
Fábio de Paula Junior
-
-
Senhores, tenho que tirar um relatorio para auditoria da minha empresa e tenho um script que vem fazendo isso pra mim sem problemas. Porem, eles agora querem uma informação nova nesse relatorio e nao estou conseguindo adaptar esse script que tenho. Preciso da informação do ULTIMO LOGON do usuario, MESMO que a conta esteja desabilitada e se possivel, preciso saber QUANDO a conta do usuario foi desabilitada.
SEgue abaixo o script q tenho:
'---------------- INICIO ---------------- Sub ListUsers( strDomain ) Set objComputer = GetObject("WinNT://" & strDomain ) objComputer.Filter = Array( "User" ) For Each objUser In objComputer suserInfo = objUser.Name & ", " & objUser.Fullname & ", " & objUser.Description & ", " & objUser.LastLogin & ", " & objUser.AccountDisabled objFile.WriteLine(sUserInfo) Next End Sub ' **************************************************************************** ' Main ' **************************************************************************** Dim strDomain Dim sUserInfo Dim sFileName strDomain = WScript.Arguments(0) sFileName = WScript.Arguments(1) If strDomain = "" Then WScript.Echo "VoCê não Adicionou os parametros necessários, chame o script pelo prompt, ex.: ListUsers.vbs dominio.local C:\listusers.txt" End If If sFileName = "" Then WScript.Echo "VoCê não Adicionou os parametros necessários, chame o script pelo prompt, ex.: ListUsers.vbs dominio.local C:\listusers.txt" End If set objFSO = createobject("scripting.filesystemobject") set objFile = objFSO.createtextfile(sFileName) objFile.WriteLine("Usuario, Nome Completo, Descrição, Status da Conta") ListUsers( strDomain ) objFile.Close '---------------- FIM ----------------
Aguardo ajuda dos colegas, preciso com MUITA urgencia!
Albert Alberico dos Santos
Consegui encontrar um script que faz trazia o LASTLOGON e inclui as informações que o meu script trazia.
Segue abaixo o Script:
Option Explicit On Error Resume Next Dim FileSys, WrLines, DomainName, oDomain, oDomainItem DomainName = "dominio.com.br" lastdate = "31/12/2000" Set FileSys = CreateObject("Scripting.FileSystemObject") Set WrLines = FileSys.CreateTextFile("ListADNOVO.txt", True) WrLines.WriteLine("Login de Rede,Nome Completo,Descricao,Conta Desabilitada?,Ultimo Logon na Rede") Set oDomain = GetObject("WinNT://" & DomainName) For Each oDomainItem in oDomain If oDomainItem.Class = "User" AND oDomainItem.LastLogin > lastdate Then WrLines.WriteLine(oDomainItem.Name & "," & oDomainItem.FullName & "," & oDomainItem.Description & "," & oDomainItem.AccountDisabled & "," & oDomainItem.LastLogin) End If Next WrLines.Close
Albert Alberico dos Santos
- Marcado como Resposta Santos Ber terça-feira, 26 de agosto de 2014 21:51