banner
Lar / Notícias / Como corrigir bloqueios de conta do Active Directory com o PowerShell
Notícias

Como corrigir bloqueios de conta do Active Directory com o PowerShell

Dec 16, 2023Dec 16, 2023

kras99 - stock.adobe.com

Acidentes podem acontecer, mas quando se trata de tentativas de login malsucedidas, muitos deles podem congelar seu laptop de trabalho até que alguém da TI venha resgatá-lo.

Muitas organizações bloqueiam uma conta de usuário após um determinado número de tentativas de logon com falha. O objetivo é impedir ataques de hackers que usam a força bruta para descobrir a senha do usuário. No entanto, nem todos os bloqueios são de fontes maliciosas ou mesmo de usuários que esquecem suas senhas.

Às vezes, os aplicativos podem levar a bloqueios de conta. Os aplicativos geralmente dependem de uma conta de serviço para obter as permissões necessárias para funcionar. No entanto, se a senha da conta de serviço for alterada e o aplicativo não obtiver a senha atualizada, isso pode causar um bloqueio na conta de serviço.

Informações de logon redundantes também são outra causa comum de bloqueios de conta. Um usuário corporativo pode ter uma dúzia ou mais de conjuntos de credenciais vinculadas a um nome de usuário comum. É preciso algum esforço para acompanhar todas essas contas. Não é difícil prever que alguém acidentalmente use o conjunto errado de credenciais várias vezes e cause o bloqueio de uma conta.

Bloqueios de conta também podem ocorrer quando os usuários mudam de local de trabalho. Um cenário comum é quando um usuário alterna do trabalho em uma área de trabalho Windows ingressada no domínio no escritório para uma máquina Windows diferente em casa que não está conectada a uma rede no momento. Como o laptop está off-line, ele não registrou a alteração da senha. O usuário deve efetuar login com a senha antiga. Se o usuário trouxer o laptop para o escritório e tentar acessar a rede, a incompatibilidade da senha, combinada com a confusão do usuário final, pode levar ao bloqueio da conta.

Uma das principais razões pelas quais os bloqueios de conta tendem a ser tão problemáticos é que eles tendem a acontecer silenciosamente. Como administrador, você pode nem saber que ocorreu um bloqueio de conta, a menos que um usuário ligue ou você veja um evento de bloqueio de conta listado nos logs de eventos do Windows. No entanto, você pode usar a automação do PowerShell para controlar melhor os eventos de bloqueio de conta.

Para se antecipar a essas situações de bloqueio, uma opção é usar o PowerShell para verificar bloqueios nos logs de eventos com o seguinte comando:

OGet-WinEvent O cmdlet consulta os logs de eventos. OFilterHashTable parte especifica os itens a serem pesquisados ​​nos logs. Neste caso, oLogNameparâmetros aponta oGet-WinEvent cmdlet para pesquisar o log de segurança do Windows. Além disso, o parâmetro ID procura instâncias da ID de evento 4740, que se refere a eventos de bloqueio de conta.

Os resultados são então canalizados para oSelecionar-objeto cmdlet, que exibe a hora de criação do evento e a mensagem do evento. Normalmente, o PowerShell trunca a mensagem de bloqueio de conta, mas oTabela de formatocmdlet, juntamente com oEnrolarparâmetro, força o PowerShell a exibir todas as informações pertinentes.

Em um ambiente de produção, essa consulta de bloqueio de conta do Active Directory pode retornar um número excessivo de resultados porque verifica o log de eventos de segurança de todas as instâncias da ID de evento 4740, independentemente de quando o evento ocorreu. A melhor maneira de resolver esse problema é usar oStartTime filtro. Por exemplo, o seguinte comando examina os eventos que ocorreram nas últimas 24 horas:

O primeiro comando cria uma variável chamada$Inícioe define para as 24 horas anteriores viaAdicionarDias(-1) . Para verificar os logs das semanas anteriores, useAdicionarDias(-7).

O segundo comando é idêntico ao código anterior, excetoStartTime=$Start é adicionado à tabela de hash do filtro. Isso instrui o PowerShell a ignorar resultados anteriores à data e carimbo de data/hora no$Iníciovariável.

Outra maneira pela qual o PowerShell ajuda com bloqueios de conta do Active Directory é usando oGet-ADUser cmdlet para verificar o status de bloqueio da conta. Use o seguinte comando para recuperar atributos relacionados a contas de usuário do Active Directory.

/strong with the name of the user whose account you wish to unlock./p> Get-ADUser Unlock-ADAccount Get-ADUser /strong>