Como Encontrar o Último Horário de Logon de Usuários do Active Directory (Usando ADUC)

Como Encontrar a Última Hora de Login de Usuários no Active Directory (Usando o ADUC). Active Directory é um componente central de muitas redes baseadas em Windows e atua como um banco de dados de usuários, grupos e computadores que os administradores de sistemas gerenciam. Uma tarefa crucial para os administradores de sistemas é identificar contas de usuário inativo no Active Directory e removê-las para melhorar a segurança e reduzir o caos no diretório. Para isso, os administradores precisam encontrar a última hora de login de um usuário no Active Directory.Existem vários métodos para alcançar isso, incluindo o console de Active Directory Users and Computers, consultas LDAP e comandos PowerShell. Neste tópico, examinamos esses métodos com mais detalhes e mostramos como os administradores de sistemas podem facilmente encontrar a última hora de login de um usuário no Active Directory.

Vários métodos existem para alcançar isso, incluindo o console Usuários e Computadores do Active Directory, consultas LDAP e comandos PowerShell. Neste tópico, examinamos esses métodos com mais detalhes e mostramos como administradores de sistemas encontram facilmente a última vez que um usuário fez logon no Active Directory.

Vamos continuar com o artigo Como Encontrar a Última Hora de Logon de Usuários do Active Directory (Usando ADUC).

Como Encontrar a Última Hora de Logon de Usuários do Active Directory (Usando ADUC)

Para determinar a última vez que um usuário de domínio fez login, utilizamos o console gráfico Usuários eComputadores do Active Directory (ADUC). Veja como:

  1. Inicie o dsa.msc console.
  2. Selecione Exibir > Recursos Avançados no menu superior para ativar essa opção.

3. Localize o usuário na árvore AD e acesse suas propriedades.
4. Clique na guia Editor de Atributos.
5. Procure o atributo último login na lista de atributos, que exibe o momento do último login do usuário no domínio recente.

Nota. O lastLogon lastLogonTimestamp características na captura de tela acima são comparáveis. Então, o que as diferencia uma da outra?

Atributos de Carimbo de Data e Hora de Login

  • Quando um usuário faz login em um domínio, o lastLogon atributo é alterado. No entanto, isso só altera o controlador de domínio que forneceu aos outros controladores de domínio a autenticação do usuário não replicado. Como resultado, devemos verificar esse atributo em cada controlador de domínio, se vários controladores de domínio estiverem espalhados por vários sites e sub-redes do Active Directory. Em seguida, devemos comparar as informações obtidas. O valor desse atributo para um usuário em vários DCs pode variar ou até mesmo ser zero (se o usuário for um usuário não autenticado neste DC);
  • Quando um usuário faz login em um controlador de domínio, o lastLogonTimeStamp atributo também é modificado e replicamos para outros controladores de domínio. No entanto, leva um tempo para replicar essa propriedade (replicamos apenas se o valor atual for catorze (14) dias ou mais antigo do que o anterior). Como resultado, a informação nesse atributo para um determinado controlador de domínio pode precisar ser mais relevante.

A partir do Windows Server 2008 versão de esquema AD (AD Schema objectVersion = 44), utilizamos vários atributos alternativos relacionados a login. Estes incluem:

  • msDS-LastFailedInteractiveLogonTime: exibe a hora da tentativa de login interativa mais recente que falhou.
  • msDS-LastSuccessfulInteractiveLogonTime: exibe a hora da tentativa de login interativa mais recente que teve sucesso. É essencial verificar a versão de esquema AD para determinar se é necessário atualizar o esquema do Active Directory.

Estas propriedades, que utilizamos para rastrear tentativas de login interativas de usuários, são frequentemente duplicadas entre controladores de domínio do AD. No entanto, elas não coletam automaticamente informações sobre preferências do usuário.

Experimente nossas ferramentas de relatórios e auditoria do Active Directory & Office 365

Experimente-nos gratuitamente. Centenas de modelos de relatório disponíveis. Personalize facilmente seus próprios relatórios no AD, Azure AD & Office 355.




Habilitando Propriedades de Login Usando Política de Grupo

Para tornar esses recursos disponíveis:

  1. Habilite a configuração do Objeto de Política de Grupo (GPO) “Fornecer informações sobre logins anteriores para computadores clientes para controladores de domínio” localizado em Configuração do Computador > Modelos Administrativos > Sistema > KDC.
  2. Crie um GPO com este parâmetro.
  3. Atribua o GPO ao contêiner de Controladores de Domínio.

Para gerar uma lista de usuários que não fizeram login no domínio há algum tempo usando uma consulta LDAP no console gráfico do Active Directory, siga estas etapas:

  1. Converta a data desejada para o formato ToFileTime. Por exemplo, se quisermos encontrar usuários que não fizeram login há mais de 90 dias, usamos o comando do PowerShell para obter o valor da data:
(Get-Date).AddDays(-90).ToFileTime()

Este trecho de código fornece um valor no tempo de época como 132988354159396418 com base na data especificada.

2. Insira o valor FileTimeDate na consulta LDAP:

console.log( 'Code is Poetry' );

3. Abra o console de Usuários e Computadores do AD, clique com o botão direito no nó Pesquisas Salvas e clique em Novo, em seguida, Consulta.

4. Nomeie a consulta e clique no botão Definir Consulta.
5. Escolha Pesquisa Personalizada na lista suspensa e vá para a guia Avançado.
6. Copie a consulta LDAP no campo Digite a Consulta LDAP.

7. Salve a consulta clicando em OK e, em seguida, confirme com outro OK.
8. Selecione a consulta nas Pesquisas Salvas e pressione F5 para atualizar a lista de objetos. O console ADUC exibe uma lista plana de usuários que fizeram login pela última vez no domínio há mais de 90 dias.

9. Remova ou desative as contas de usuário do domínio inativas diretamente a partir do console do AD.

Encontre a Hora do Último Logon Usando CMD

Em seguida, com o artigo “Como Encontrar a Última Hora de Login de Usuários do Active Directory (Usando o ADUC)”, é aprender como encontrar a Última Hora de Login usando o CMS. Usando as ferramentas net ou dsquery da linha de comando, podemos descobrir quando o usuário fez o último login no domínio. Por exemplo, execute o seguinte comando dentro de um terminal de prompt de comando (não precisamos de direitos de administrador de domínio para obter informações de usuários do AD):

net user administrator /domain | findstr "Last"

Se quisermos obter a última hora de login de um usuário local, precisamos remover o /domain parâmetro:

net user User | findstr "Last"

Também obtemos a última hora de login usando dsquery. Por exemplo:

dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(sAMAccountName=admin))" -attr distinguishedName lastLogon lastLogonTimestamp -limit 0

O principal problema é que os atributos lastLogonTimestamp e lastLogon estão em formato de carimbo de data/hora no AD, e precisamos convertê-los para um formato de hora normal.

Usamos este comando para encontrar todos os usuários inativos, por exemplo, por 10 semanas:

dsquery user domainroot -inactive 10

Encontre a Hora do Último Logon Usando o PowerShell

Também usamos o PowerShell para obter a hora do último domínio logon do usuário. Para isso, precisamos usar o módulo PowerShell do Active Directory e os comandos do PowerShell. Primeiro, abra o PowerShell e execute o Import-Module cmdlet para importar o módulo Active Directory:

Import-Module ActiveDirectory

Leia também Ferramenta de Relatório de Logon e Logoff de Usuários do Active Directory (Filtro Avançado)Encontre os Usuários Inativos Dentro de um Determinado Número de Dias

Get-ADUser -Identity username -Properties LastLogon | Select-Object -Property Name, LastLogon

Para encontrar contas que não tenham feito login por um período específico de dias, como 90 dias, usamos um comando PowerShell que filtra contas de usuário com base em seu atributo Timestamp de Último Logon. Aqui está um exemplo de comando:

Get-ADUser -Filter {Name -eq "username"} -Properties * |
Select-Object Name, @{N='LastLogon'; E={[DateTime]::FromFileTime($_.LastLogon)}}

Este comando procura por contas que estejam inativas há 90 dias ou mais e seleciona apenas aquelas que são contas de usuário. Em seguida, exibe os nomes dessas contas de usuário e o valor de seu atributo LastLogonTimestamp, representando a última vez que o usuário fez login no domínio.Ajustamos o parâmetro TimeSpan para procurar por contas que estejam inativas por um número diferente de dias. Por exemplo, se quisermos procurar por contas que estejam inativas há 60 dias, definimos TimeSpan para 60.00:00:00.Observe que o AD atualiza o atributo LastLogonTimestamp após um usuário fazer login ou logout do sistema, então o valor pode ser parcialmente preciso. Além disso, este atributo é replicado entre controladores de domínio apenas a cada 9-14 dias por padrão, então podemos obter informações atualizadas apenas para algumas contas de usuário.

Encontre Usuários Inativos Dentro de um Número Determinado de Dias

Para encontrar contas que não fizeram login por um determinado número de dias, como 90 dias, usamos um comando do PowerShell que filtra as contas de usuário com base no atributo LastLogonTimestamp. Aqui está um exemplo de comando:

Search-ADAccount -AccountInactive -TimeSpan 90.00:00:00 | where {$_.ObjectClass -eq 'user'} | Select-Object Name, LastLogonTimestamp

Este comando busca contas que estão inativas há 90 dias ou mais e seleciona apenas aquelas que são contas de usuário. Ele então exibe os nomes dessas contas de usuário e o valor do atributo LastLogonTimestamp, que representa a última vez que o usuário fez login no domínio.

Nós ajustamos o parâmetro TimeSpan para pesquisar contas que estão inativas por um número diferente de dias. Por exemplo, se quisermos pesquisar contas que estão inativas há 60 dias, definimos TimeSpan como 60.00:00:00.

Observe que o AD atualiza o atributo LastLogonTimestamp após um usuário fazer login ou sair do sistema, portanto, o valor pode ser parcialmente preciso. Além disso, esse atributo é replicado entre controladores de domínio apenas a cada 9-14 dias por padrão, portanto, só podemos obter informações atualizadas para alguns contas de usuário.

Exportar para arquivo CSV

Para exportar a lista de contas de usuário inativas para um arquivo CSV, modificamos o comando do PowerShell fornecido anteriormente para incluir o cmdlet Export-CSV. Aqui está um exemplo de comando:

Search-ADAccount -AccountInactive -TimeSpan 90.00:00:00 |
where {$_.ObjectClass -eq 'user'} |
Select-Object Name, LastLogonTimestamp |
Export-CSV C:\InactiveUsers.csv -NoTypeInformation

Este comando pesquisa contas que estão inativas há 90 dias ou mais e seleciona apenas aquelas que são contas de usuário. Em seguida, determina as propriedades Nome e LastLogonTimestamp dessas contas de usuário e as exporta para um arquivo CSV localizado em “C:\InactiveUsers.csv”.

O parâmetro “-NoTypeInformation” especifica que o arquivo CSV não deve incluir as informações de tipo .NET para cada objeto, o que torna o arquivo mais fácil de ler. Após executar este comando, abrimos o arquivo CSV com o Excel ou qualquer outra aplicação de planilha para visualizar a lista de contas de usuário inativas e seus carimbos de data/hora de último logon.

Obrigado por ler o artigo Como Encontrar o Tempo de Último Logon dos Usuários do Active Directory (Usando o ADUC). Vamos concluí-lo agora. 

Conclusão do artigo Como Encontrar o Tempo de Último Logon dos Usuários do Active Directory (Usando o ADUC)

Em conclusão, encontrar o último horário de logon de um usuário no Active Directory é uma tarefa essencial para os administradores do sistema, pois lhes permite identificar contas de usuário inativas que podem ser desativadas ou removidas para melhorar a segurança e reduzir a desordem no diretório. Conseguimos isso usando vários métodos, incluindo o console de Usuários e Computadores do Active Directory, consultas LDAP e comandos do PowerShell.

Com as ferramentas e técnicas certas, os administradores do sistema encontram rapidamente e facilmente o último horário de logon de um usuário no Active Directory e tomam medidas apropriadas para gerenciar seu diretório de forma eficaz.

Source:
https://infrasos.com/how-to-find-active-directory-users-last-logon-time-using-aduc/