Nesta página

Como identificar contas de usuário inativas no Active Directory



O acesso dos funcionários aos sistemas da empresa deve ser desativado assim que alguém se desliga da empresa. Mas, em períodos de menor movimento, especialmente em pequenas empresas sem uma equipe de TI dedicada, isso é negligenciado com mais frequência do que deveria.É assim que você acaba com contas inativas que podem representar um risco de segurança — sem mencionar os custos desnecessários com licenças. Portanto, descobrir quem ainda possui contas ativas não é apenas uma boa prática; é essencial para manter tudo organizado. Usar o PowerShell pode facilitar bastante esse processo, principalmente se você não tiver uma ferramenta de gerenciamento sofisticada. O objetivo aqui é identificar contas que não foram usadas por um tempo e, em seguida, desativá-las ou revisá-las.

Como encontrar contas de usuário inativas com o PowerShell

Quando funcionários se desligam da empresa, infelizmente, nem sempre somos avisados ​​imediatamente, principalmente se os departamentos de RH e TI não estiverem sincronizados ou se não houver automação implementada.É por isso que verificar rotineiramente as contas de usuário é uma medida inteligente — isso ajuda a identificar aquelas contas fantasmas que, por algum motivo, permaneceram ativas. O cmdlet Search-ADAccount do PowerShell é seu aliado nesse processo, pois consegue extrair informações diretamente do Active Directory. Por meio dele, você pode ver quais contas não foram acessadas há muito tempo e decidir o que fazer com elas.

Encontre usuários que não fizeram login recentemente.

Este comando ajuda a identificar contas que ainda estão ativadas, mas não são usadas há algum tempo. Ele funciona porque fornece um panorama das contas que podem estar inativas, mas ainda não foram desativadas. O comando também classifica os resultados pela data do último login, exibindo as contas mais antigas no topo — facilitando a análise.

Search-ADAccount -AccountInactive -UsersOnly -TimeSpan 100.00:00:00 | Where {$_. Enabled -eq "True"} | sort -property LastLogonDate -desc | ft Name, LastLogonDate, Enabled -autosize

Neste caso, o parâmetro -TimeSpan limita a pesquisa a usuários que não fizeram login por mais de 100 dias (você pode ajustar o número de dias).O formato é dias.horas:minutos:segundos. Sinceramente, é um pouco estranho, mas parece funcionar de forma consistente depois que você pega o jeito. Em algumas configurações, pode ser necessário um pequeno ajuste ou uma reinicialização completa da máquina que executa o comando, caso o problema persista.

Na prática, esta lista mostra quem está inativo há algum tempo, permitindo que você considere desativar ou remover essas contas. Uma vantagem adicional: você pode ajustar o mesmo comando para identificar também contas de computador — basta trocar `-UsersOnly` por `-ComputerOrCreate` e criar scripts personalizados para limpar contas de dispositivos antigas. E, se quiser algo mais sofisticado, configure isso como uma tarefa agendada para enviar um relatório semanal ou mensal por e-mail, assim você sempre saberá quais contas precisam ser revisadas.

Uma pequena ressalva: dependendo da sua configuração do Active Directory, a execução desses comandos pode exigir privilégios de administrador ou a instalação de módulos específicos. E, claro, se você não obtiver os resultados esperados, verifique se o módulo do Active Directory está carregado no PowerShell — você pode fazer isso com o comando `ps apt-get install active directory` Import-Module ActiveDirectory.

Ah, e como o Windows complica um pouco as coisas, às vezes você obtém falsos positivos ou deixa passar algumas contas. Tenha em mente que o processo não é perfeito, então é recomendável fazer uma revisão manual após executar o script.



Este artigo foi útil?